Редактирование страницы в блочном редакторе имеет неприятную особенность — полоса с макетом страницы слишком узкая, всего 610 пикселей, и это создаёт определённые неудобства при большом количестве колонок. Сам макет страницы узкий, а вокруг много неиспользованного места.


Некоторые дополнения в коде для обеспечения совместимости с WPML, были сделаны в мае 2019 года. Недавно плагин получил официальный статус совместимости с WPML.


Команда WPML за последние два месяца полностью переписала плагин String Translation и внесла много улучшений, связанных с производительностью, в плагины Multilingual CMS и Translation Management.


Плагин Cyr-To-Lat, в разработке которого мы принимаем активное участие, недавно превысил отметку в 100,000 активных установок. В последние 10 месяцев рост составил около 30% (с 70,000 активных установок).

Новый импульс популярности плагина дали такие особенности, как:

  • Увеличение числа языков транслитерации (сейчас это русский, белорусский, украинский, болгарский, македонский, грузинский, казахский и идиш)
  • Удобный интерфейс таблиц транслитерации
  • Конвертация любого количества ярлыков существующих постов, страниц и терминов в фоновых процессах
  • Поддержка WP-CLI
  • Надёжный код, на 100% покрытый тестами

В ближайших планах — поддержка сербского, туркменского и китайского языка, официальный статус совместимости с WPML, улучшение производительности.


В новой версии 2.2 плагина WOOF by Category, число активных инсталляций которого превысило одну тысячу, реализовано существенное улучшение быстродействия.

На клиентских сайтах с длинным списком категорий товаров происходило существенное замедление генерации страниц WooCommerce с фильтрами WOOF. Причина в том, что плагин WOOF запрашивает свои опции сотни раз за время генерации страницы. Эти вызовы обрабатываются WOOF by Category для обеспечения своей функциональности.

На сайте с 2,000 товаров и 70 категориями за время генерации страницы опции запрашивались 800 раз. Применённое в версии 2.2 плагина кеширование свело количество выполнений главной функции WOOF by Category до одного, а время генерации страницы на упомянутом выше сайте — с 4.5 до 1.5 секунд.


При переводе с помощью WPML пользовательских полей, созданных плагином ACF, возникает вопрос — как сделать все поля переводимыми? Обычно на сайте таких полей достаточно много (сотни — типичный пример) и кликать в настройках WPML сотни раз — довольно утомительная работа.

Ниже пример того, как это можно сделать с помощью кода.


В одном из проектов заказчик попросил сделать реалистичную анимацию ёлочных шаров, которые начинали бы раскачиваться при касании мышью. Вот что из этого получилось.


Часто возникает вопрос — как посчитать число скачиваний файла и спрятать реальную ссылку на скачиваемый файл?

Для решения этой задачи надо сделать две вещи: перехватить клик на ссылку и отдать файл реальный пользователю средствами php.

Что происходит при клике на фиктивную ссылку, указывающую на несуществующую страницу сайта? WordPress инициализирует ядро и пытается выдать страницу 404. В этот момент надо вмешаться своей функцией, обновить счётчик загрузок и отдать реальный файл. Ниже код такой функции.


В связи с выходом редактора Гутенберг, который получил название блочного редактора в WordPress 5.0, часто возникает вопрос — как программно определить, какой редактор используется в настоящее время для редактирования поста в консоли сайта?

Вариантов тут можеть быть несколько:

  • WordPress 4.9, плагин Гутенберг не активен
  • WordPress 4.9, плагин Гутенберг активен
  • WordPress 5.0, включен блочный редактор по умолчанию
  • WordPress 5.0, активен плагин Classic Editor
  • WordPress 5.0, активен плагин Classic Editor, но в консоли в «Настройки > Написание» выбрана опция «Использовать по умолчанию редактор блоков…»

Все указанные выше варианты могут обработаны следующим кодом: