Задать вопрос
  • Как написать вывод постов с пагинацией (в wordpress), с разбивкой по категориям?

    Tolly
    @Tolly Автор вопроса
    Подписал в скобочках wordpress, раз не достаточно указанного тега Wordpress.
    Вопрос касается цикла на php, поэтому я добавил тег php, не знал, что так нельзя.
    Раньше не было вопросов когда указывал несколько тегов, прямо или косвенно касаемых темы.

    PS. Но считаю, что это не верный подход, так как вопрос по wordpress может касаться как дизайна, так и seo или программирования, и сейчас нужно будет везде писать wordpress?
  • Как отключить кеширование шаблонов в wordpress?

    Tolly
    @Tolly Автор вопроса
    1) у меня нет htaccess, у меня nginx
    2) у меня 4 браузера, т.е. как я уже и писал, что браузер тут не причем, так как проверял браузером, с которого ранее не входил на этот сайт. Ctrl+F5 и все остальное нажимаю априори, когда вот такая не понятная ситуация, а так у меня обновляется браузер плагином, я даже не нажимаю F5.

    PS. Очень странно, вроде добавлял в теме - тег Nginx, а нету.
  • Как прокинуть порт?

    Exodus11, на вскидку можно дать сто вариантов, но лучше сохранить настройки, обновить прошивку и сделать сброс настроек, а затем прописать по порядку:
    1. ip на интерфесах
    2. dns
    3. подключение к интернету
    4. и сделать проброс порта
    с роутера пинг должен ходить и внутрь и извне, работу днс проверить открываются ли сайты по доменному имени mail.ru например

    Конфиг сохранять можно:

    1. полностью в меню Files > Backup, ну и потом аналогично восстановить как было через Restore

    2. сохранить через консоль:
    /export file=[filename] - экспорт конфигурации роутера в файл
    или
    /import file-name=[filename] - импорт конфигурации роутера из файла
    но не рекомендуется, так как идет привязка к этому устройству по маку

    /export compact - показать конфиг в терминале

    3. сохранить часть конфига по принципу:
    /ip address export file=ip.rsc
    /ip firewall mangle export file=mangle.rsc
    /ip firewall nat export file=nat.rsc
    /ip firewall filter export file=filter.rsc
    /queue simple export file=simple.rsc
    /ip dns export file=dns.rsc
    /files backup export file=backup.rsc
    /system script export file=script.rsc
    /system scheduler export file=scheduler.rsc
    /tool e-mail export file=email.rsc
    /ip firewall address-list export file=address-list.rsc
    /ip route export file=route.rsc
    /ip dhcp-server network export file=network.rsc
    /queue type export file=type.rsc
    /queue tree export file=tree.rsc
    /queue simple export file=simple.rsc
    /interface ethernet export file=ethernet.rsc
    /ip pool export file=pool.rsc
    /ppp profile export file=profile.rsc
    /log export file=log.rsc
  • Как редактировать плагин media в tinymce?

    Вы решили вопрос? А то у меня аналогичная проблема.
  • Как добавить свою иконку в шапку редактора (классического) Wordpress?

    Tolly
    @Tolly Автор вопроса
    А как это работает? Кнопка появилась, но при ее нажатии, ничего не происходит, а вот курсор исчезает, возможно фокус куда-то переводится.
  • Как в библиотеке медиафайлов вывести id картинки?

    Tolly
    @Tolly Автор вопроса
    А что оно делает, кроме показа id? Если ничего, то почему было через фильтр не сделать?
  • Как в библиотеке медиафайлов вывести id картинки?

    Tolly
    @Tolly Автор вопроса
    zorca, хочу картинку вывести, через шорт код.

    Все бы просто, если бы нужно было вывести картинку из библиотеки, но мне нужен id, который ссылается на:
    https://mysite.ru/wp-content/uploads/2019/02/pict1.jpg
    беру путь и имя файла, на основе этих данных я беру другую картинку (производную от этой):
    - оптимизированную
    - в 2х форматах: jpg/webp
    - с разными разрешениями
    - медиазапросами
    - ленивую загрузку
    короче все сложно.
  • Разная нагрузка SSD при одинаковом IOPS, почему так?

    А как Вы решили вопрос с драйверами от samsung под Debian (или гипервизор, если такой есть), у меня нет дисков от samsung, но слышал, что без фирменных драйверов скорость сильно "режется"? Также слышал, что если использовать бытовые SSD, то нужно оставлять 25-30% не разбитыми.
  • Как переключать домены в connect.yandex.ru?

    Tolly
    @Tolly Автор вопроса
    Игорь Пан, короче задумка у них видать такая, есть домен - создаешь "организацию", есть еще один домен - создаешь вторую. Хочешь сменить домен для "организации", берешь и добавляешь домен в существующую "организацию", затем делаешь его основным. Т.е. "организация" не предназначена для регулярной смены доменов один на другой. Это мое ИМХО, т.е. "организация" - это НЕ организация (компания), а просто некая сущность. Т.е. ЭТО нельзя воспринимать как организацию, которая владеет несколькими доменами.
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    Все понятно, ну что же, тема исчерпана, теперь ясно, что хочет гугл.
    Спасибо за ответы, а я пойду открою новую тему, может кто подскажет как через nodejs все таки это реализовать. Еще раз спасибо.
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    А какие онлайн сервисы посоветует, плагин сразу - нет, не хочу их ставить.
    А зачем клиенту vps? Вы правите код прямо на сервере? Я думал правильно будет туда заливать уже исправленный код/стиль?!
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    azerphoenix, понятно. А чем пользуетесь если не секрет, онлайн сервисами? )
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    azerphoenix, подскажите еще как мне оптимизировать с помощью https://github.com/addyosmani/critical?
    ОС Debian 9, nodejs 10.15.1, npm 6.4.1, тестовый сайт: /var/www/www1/, стили в папке css
    npm i -D critical@latest
    создал файл test.js
    var critical = require('critical');
    
    critical.generate({
        // Inline the generated critical-path CSS
        // - true generates HTML
        // - false generates CSS
        inline: true,
    
        // Your base directory
        base: '/var/www/www1/',
    
        // HTML source
        html: '<html>...</html>',
    
        // HTML source file
        src: 'index.html',
    
        // Your CSS Files (optional)
        css: ['/var/www/www1/css/fonts.css',
            '/var/www/www1/css/swipper.min.css',
            '/var/www/www1/css/youtube-player.css',
            '/var/www/www1/css/style.css'],
    
        // Viewport width
        width: 1900,
    
        // Viewport height
        height: 1200,
    
        // Target for final HTML output.
        // use some CSS file when the inline option is not set
        dest: 'index-critical.html',
    
        // Minify critical-path CSS when inlining
        minify: true,
    
        // Extract inlined styles from referenced stylesheets
        extract: true,
    
        // Complete Timeout for Operation
        timeout: 30000,
    
        // Prefix for asset directory
        pathPrefix: '/MySubfolderDocrot',
    
        // ignore CSS rules
        ignore: ['font-face'],
    
        // overwrite default options
        ignoreOptions: {}
    });

    запускаю nide test.js
    получаю
    (node:42977) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!
    /var/npm-server/node_modules/puppeteer/.local-chromium/linux-599821/chrome-linux/chrome: error while loading shared libraries: libXcomposite.so.1: cannot open shared object file: No such file or directory

    TROUBLESHOOTING: https://github.com/GoogleChrome/puppeteer/blob/mas...

    at onClose (/var/npm-server/node_modules/puppeteer/lib/Launcher.js:342:14)
    at Interface.helper.addEventListener (/var/npm-server/node_modules/puppeteer/lib/Launcher.js:331:50)
    at Interface.emit (events.js:194:15)
    at Interface.close (readline.js:379:8)
    at Socket.onend (readline.js:157:10)
    at Socket.emit (events.js:194:15)
    at endReadableNT (_stream_readable.js:1103:12)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    (node:42977) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
    (node:42977) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
    (node:42977) UnhandledPromiseRejectionWarning: Error: Failed to launch chrome!
    /var/npm-server/node_modules/puppeteer/.local-chromium/linux-599821/chrome-linux/chrome: error while loading shared libraries: libXcomposite.so.1: cannot open shared object file: No such file or directory

    TROUBLESHOOTING: https://github.com/GoogleChrome/puppeteer/blob/mas...

    at onClose (/var/npm-server/node_modules/puppeteer/lib/Launcher.js:342:14)
    at Interface.helper.addEventListener (/var/npm-server/node_modules/puppeteer/lib/Launcher.js:331:50)
    at Interface.emit (events.js:194:15)
    at Interface.close (readline.js:379:8)
    at Socket.onend (readline.js:157:10)
    at Socket.emit (events.js:194:15)
    at endReadableNT (_stream_readable.js:1103:12)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    (node:42977) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)


    проверил на диске нет файла libXcomposite.so
    ---
    установил apt install libxcomposite-dev -y
    скопировал в папку:
    cp /usr/lib/x86_64-linux-gnu/libXcomposite.so /var/npm-server/node_modules/puppeteer/.local-chromium/linux-599821/chrome-linux/
    ничего не изменилось ((
    ---
    я вот что подумал, а нужно ли этому модулю GUI? а то у меня только консоль!
  • Сколько запросов в секунду обрабатывает ваш Nginx (ApacheBench)?

    Tolly
    @Tolly Автор вопроса
    Проверил свой реальный сайт: 77 запросов к базе, wordpress, вес всей страницы 686Кб, хотя тест считает только первый документ, который генерируется на php.
    Получил:
    Размер документа: 56262 байта
    Total transferred: 59440720 bytes
    HTML transferred: 58967680 bytes
    Requests per second: 57.83 [#/sec] (mean)
    Time per request: 172.921 [ms] (mean)
    Time per request: 17.292 [ms] (mean, across all concurrent requests)
    Transfer rate: 3356.89 [Kbytes/sec] received
  • Сколько запросов в секунду обрабатывает ваш Nginx (ApacheBench)?

    Tolly
    @Tolly Автор вопроса
    Пока только себя, чтобы исключить влияние сети.
  • Сколько запросов в секунду обрабатывает ваш Nginx (ApacheBench)?

    Tolly
    @Tolly Автор вопроса
    Тестировал загрузку php и картинки, у nginx включен кеш, т.е. php превращается в статику на втором запросе, но при этом количество запросов в секунду обрабатывается крайне мало, вопрос почему?

    Перед тестированием проверил, что файлы действительно в кеше.
    При тестировании загрузка процессора (2ядра) была 100%, чем он там загрузился? zgip включен, но для кеша это без разницы,.. вот и думаю почему )
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    Да есть такое. Я заморочился написал bash файл, он оптимизирует jpg и создает webp как только файл попадает в uploads, демоном отслеживаю события записи/удаления, так что с этим у меня тоже проблем нет.
    Картинки даже под retina x2 показываю, а еще написал свой ленивый плеер ютуба, и много чего еще ))
    Видимо до чего у меня не дотянулись руки, это до критиских инлайн стилей )
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    Прогрессивный ИМХО это ваЩе песец, это как заменить все классы на id, и продублировать для каждого блока на странице ))

    По шрифтам у меня вопросов нет, так и сделано.
    Ладно, надо посмотреть, что он там генерирует в critical версии.
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    azerphoenix, ИМХО это хрень какая-то!
    Поясню, насколько я понял там обязательно нужно задавать размеры viewport, а как их задать, если мой сайт рассчитан на любой экран от 320px до 3200px. Или мне надо потом 200 строк медиазапросов просто руками дописать?
  • Как подключить стили в Wordpress по методу Google (PageSpeed ​​Insights)?

    Tolly
    @Tolly Автор вопроса
    Плагинами не пользуюсь (кроме парочки при отладке).
    Что значит: "надо сгенерировать критичный CSS и разместить их инлайн"?

    К примеру, на сайте размещены стили:
    - шрифты
    - стили слайдера
    - основной файл стилей + нормализатор
    - стиль видеоплеера

    Разбор:
    - Стиль плеера можно вниз (плеер используется ближе к концу документа)
    - Шрифты можно вниз
    - Слайдер использую swiper (он не мой), так что лезть в его css как-то не особо хочется, но он на первом экране.
    - Нормализация стиля тоже вроде как обязательна, а то все перекосит
    - основной файл стилей - это 1500 строк (с комментариями и пробелами ), из них 200 строк только медиа запросов, так как не понятно в каком разрешении будет просматриваться сайт, короче можно конечно порезать его на 2 части, но инлайново это закидывать в шапку, что-то не хочется, размер сайта от этого только увеличится!

    Критический CSS это ИМХО ну совсем для мазахистов или надо это делать как-то автоматом, но плагины не хочется ставить.