Пространства имён при разработке плагинов

Прежде, чем мы начнём, я бы хотел, чтобы вы проверили, какую версию PHP используете. Нам понадобится PHP 5.3 или выше. Проверили? Что же, давайте теперь поговорим о пространстве имён при работе с плагинами WordPress. Также в моём видеокурсе про разработку плагинов есть отдельный урок, посвящённый работе с классами PHP. Для чего нужны пространства имён в …

Подробнее

3 классных сайта на теме Twenty Twenty

Тема для WordPress Twenty Twenty была разработана специально для использования её вместе с редактором контента Gutenberg. И, периодически гуляя по просторам заребужного интернета, её неоднократно можно встретить на различных качественных и живых сайтах. Я обычно добавляю такие сайты в закладки браузера, но затем закладок становится слишком много, и что-то так или иначе теряется. Поэтому сейчас …

Подробнее

Какая на самом деле стоимость разработки сайта на WordPress?

Если вы загуглите фразу аля «Стоимость разработки на WordPress» или «Стоимость сайта на WordPress», первые позиции выдачи безусловно переполнят SEO-оптимизированные страницы агентств, которые стремятся к тому, чтобы вы сделали у них заказ. Но я бы хотел раскрыть этот вопрос чуть более подробно, как минимум потому что ко мне неоднократно обращаются ученики с моих курсов, спрашивая, …

Подробнее

Почему post__not_in лучше не использовать?

Параметр WP_Query post__not_in супер-полезен, как минимум с его помощью можно исключать текущий пост, когда выводите похожие посты. Однако для высоконагруженных сайтов это может привести к моментикам с производительностью, потому что использование этого параметра исключает возможность кэширования запроса. Вот допустим пример вывода последних постов на странице поста, но с исключением из цикла текущего поста: $exclude_id = …

Подробнее

delete_site_option()

Позволяет удалить определённую опцию для всей сети WordPress Мультисайт. delete_site_option( $option ) Функция возвращает true, если опция была удалена, false – в остальных случаях. Параметры $option (строка) Название опции для удаления. Очищать для SQL-использования не нужно. Пример if ( delete_site_option( ‘true_option’ ) ) { // Опция успешно true_option удалена } Кодекс WordPress: Опции: add_option(), add_settings_error(), …

Подробнее

delete_site_transient()

Позволяет удалить транзитный кэш с указанным ключом для всей сети WordPress Мультисайт. delete_site_transient( $transient ) Параметры $transient (строка) Название транзита. Очищать для SQL-использования не нужно. Пример // удаляем транзитный кэш для всей сети WordPress мультисайт delete_site_transient( ‘true_cache’ ); Хуки delete_site_transient_{$transient} Этот хук действия срабатывает сразу же при запуске функции. В качестве единственного параметра содержит название …

Подробнее

delete_metadata()

Позволяет удалить метаданные для определённой сущности в WordPress. delete_metadata( $meta_type, $object_id, $meta_key, $meta_value = ”, $delete_all = false ) Возвращает true – в случае успешного удаления, иначе – false. Параметры $meta_type (строка) Тип метаданных, а точнее сущность WP, у которых эти метаданные будем удалять: post – посты (записи, страницы, произвольные типы) term – таксономии user …

Подробнее

set_site_transient()

Позволяет задать или обновить значение транзитного кэша для всей сети WordPress Мультисайт. set_site_transient( $transient, $value, $expiration = 0 ) Возвращает true, если значение кэша было установлено, false – в обратном случае. Параметры $transient (строка) Ключ транзитного кэша, очищать для SQL не нужно, должно быть максимум 167 символов в длину. $value Значение. При передаче массивов и …

Подробнее

get_post_field()

Позволяет получить любое из свойств объекта WP_Post определённого поста в очищенном виде. get_post_field( $field, $post = null, $context = ‘display’ ) Параметры $field строка Обязательный Свойство объекта WP_Post, значение которого нужно получить. $post целое|WP_Post ID или объект определённого поста, информацию о котором получаем. Если ничего не указывать, то будет использоваться текущий пост в цикле. $contextСтрока …

Подробнее

WP-CLI

WP-CLI — это набор команд для командной строки, при помощи которых вы сможете управлять сайтом на WordPress. Этот инструмент очень удобен, потому что: Во-первых, позволит вам быстрее выполнять некоторые задачи, на которые у вас в админке WordPress ушло бы гораздо больше времени. Например, обновление плагинов или генерация случайных постов. Во-вторых, содержит команды, которым и вовсе нет …

Подробнее

Как добавить свой плагин в репозиторий WordPress.org

Совсем недавно я написал для себя плагин, который при активации блокирует изменение дат обновлений постов, даже, если эти посты были отредактированы. Плагин состоял всего из одного файла и из пары десятков строчек кода. Продавать его не было смысла. И тут я подумал, почему бы не добавить его в каталог плагинов wordpress.org/plugins? В целом этот урок …

Подробнее

Как отключить переключатель языка на странице входа

Начиная с версии WordPress 5.9, если вдруг у вас на сайте установлен больше, чем один язык, то на стандартной странице входа WordPress, сразу же после формы, будет отображаться переключатель языка. Например вот так: В целом отличная фишка, но подходит она скорее либо для мультиязычных сайтов, либо, если пользователи, которые работают в админке вашего сайта разговаривают …

Подробнее

Что такое uninstall.php? Очистка данных после удаления плагина

Пока у вас на сайте активен какой-либо плагин, то он может добавлять какие-либо свои данные, например опции, транзиты, события Cron или даже произвольные таблицы в базе данных. Что происходит с этими данными после того, как вы удаляете этот плагин? Если вы этом плагине ничего не предусмотрено на такой случай, то они остаются у вас на …

Подробнее

Как отключить стили и скрипты, добавленные плагинами?

В этом уроке пожалуй довольно подробно поговорим про кропотливую оптимизацию CSS и JS-файлов, подключаемых плагинами и темами в WordPress. Кропотливой называю её не потому, что мы не только поотключаем всё ненужное (и не будем использовать плагинов для объединения скриптов кстати), но к тому же ещё и поговорим про подключение скриптов и стилей только на тех …

Подробнее

Как получить атрибут alt, заголовок, подпись и описание изображения

Иногда непосредственно в коде, когда мы работаем с вложениями WordPress или с миниатюрами постов, нам бывает нужно получить какую-либо информацию о них. И в этом уроке я поговорю о том, как получить в коде атрибут alt, заголовок, подпись и описание. На всякий случай проясним один момент: атрибут alt – это то, из-за чего пекутся сеошники, он …

Подробнее