WordPress 5.5. ★ Что нового? ➤ Скорость, поиск, безопасность
11 августа вышла новая версия WordPress 5.5. Эта версия названа в честь Билли Экстайна — американского вокалиста-баритона, трубача и джазмена.
Основные нововведения
Отложенная загрузка изображений (lazy loading) — ускоряет загрузку страниц сайта. Изображения будут ожидать загрузки до тех пор, пока не попадут в область просмотра. Таким образом, во время загрузки страницы изображения не загружаются все вместе, а постепенно во время прокрутки.
WordPress 5.5 теперь умеет создавать карты сайта для поисковиков в формате .XML
Карта сайта важна для лучшей индексации сайта поисковыми системами.
Автоматические обновления — вы можете включить/выключить автоматическое обновление плагинов и тем.
Обновления через ZIP-архивы — WordPress теперь позволяет обновлять бесплатные и платные продукты, которые уже установлены на сайте с помощью загрузки новых версий этих продуктов в виде архивов (.zip).
Паттерны блоков в редакторе Гутенберг — это готовые дизайн-блоки для вставки на страницу. После вставки блоки можно кастомизировать под свои задачи.
Новый каталог блоков в редакторе Гутенберг — улучшенный интерфейс панели с блоками, быстрый и удобный поиск, улучшенная панель инструментов.
Встроенное редактирование изображений — поворот, обрезка, увеличение ваших фото прямо в блоке изображения.
Смотреть обзор
Содержание видео:
- Вступление.
- Что необходимо сделать перед обновлением WordPress? Важные советы.
- Обновляю WordPress.
- Отложенная загрузка изображений (lazy loading). Ускоряем сайт.
- Карты сайта (.XML). Зачем нужны карты сайта?
- Проверяем, что на сайте работает функция создания карты сайта. Как отключить функцию создания карты сайта?
- Карту сайта от WordPress оставляем, но решили ее настроить.
- Исключаем из карты сайта архивы пользователей.
- Исключаем из карты сайта теги записей.
- Как исключить произвольные типы записей из карты сайта?
- Как в карты добавить теги XML (changefreq, priority и lastmod)?
- Практический пример с произвольным типом записи. Как исключить из карты произвольный тип записи и его таксономию?
- Стоит ли включать карту сайта от WordPress? Мое мнение.
- Не забудьте ссылку на новую карту указать в файле robots.txt и в Яндекс вебмастер.
- Автоматические обновления.
- Паттерны блоков и улучшенный интерфейс редактора.
- Встроенное редактирование изображений.
- Выводы.
Примечание: в видео я заявляю, что отключить отложенную загрузку изображений нельзя, но это не так. В конце этой статьи указан способ отключения.
Карта сайта wp-sitemap.xml
Карта сайта находится по адресу https://mysite.ru/wp-sitemap.xml
Введите в браузере, чтобы проверить ее наличие.
Если же при переходе у вас возникла ошибка 501, то значит у вас не стоит расширение для PHP, SimpleXML, которое необходимо для создание XML карты сайта.
Как отключить карту сайта WordPress
Вставляем этот код в файл functions.php дочерней темы.
add_filter( 'wp_sitemaps_enabled', '__return_false' );
Если вы выключили индексацию на сайте (Настройки — Чтение — Попросить поисковые системы не индексировать сайт), то карта сайта не будет доступна и вместо нее будет ошибка 404.
Исключаем из карты архив пользователя
Вставляем этот код в файл functions.php дочерней темы.
add_filter( 'wp_sitemaps_add_provider', 'remove_user_sitemap', 25, 2 );
function remove_user_sitemap( $provider, $name ) {
if ( 'users' === $name ) {
return false;
}
return $provider;
}
Исключаем страницы/посты из карты сайта
Этот код подойдет вам, если вы хотите исключить страницы, а также др. типы записей.
Вставляем этот код в файл functions.php дочерней темы.
add_filter( 'wp_sitemaps_post_types', 'remove_pages', 25 );
function remove_pages( $post_types ) {
unset( $post_types['page'] );
return $post_types;
}
в unset( $post_types[‘page'] ); вместо page укажите свой произвольный тип записи.
Или продублируйте строку unset( $post_types[‘page'] ); чтобы указать еще один тип записи для исключения из карты сайта.
Исключаем таксономии из карты сайта
Этот код подойдет вам, если вы хотите исключить теги статей, а также др. таксономии из карты сайта.
Исключаем теги записей:
add_filter( 'wp_sitemaps_taxonomies', 'remove_tags', 25 );
function remove_tags( $taxonomies ) {
unset( $taxonomies['post_tag'] );
return $taxonomies;
}
в unset( $taxonomies[‘post_tag'] ); вместо post_tag укажите свою таксономию.
Или продублируйте строку unset( $taxonomies[‘post_tag'] ); чтобы указать еще одну таксономию.
Добавляем теги XML
По умолчанию карта сайта в WordPress содержит только один тег XML – URL (loc
).
Другие же теги, такие как changefreq
, priority
и lastmod
не являются обязательными и поэтому не присутствуют сразу же по умолчанию в вашей карте, для оптимизации производительности.
Тем не менее вы можете добавить их в определённую карту при помощи этих хуков:
wp_sitemaps_index_entry
– основной индекс,wp_sitemaps_posts_entry
– карта с типами постов,wp_sitemaps_taxonomies_entry
– карта с таксономиями,wp_sitemaps_users_entry
– архивы пользователей.
Чтобы вывести теги XML для карты с постами:
add_filter( 'wp_sitemaps_posts_entry', 'add_sitemap_tags', 25, 2 );
function add_sitemap_tags( $entry, $post ) {
$entry[ 'priority' ] = '40%';
$entry[ 'changefreq' ] = 'Monthly';
$entry[ 'lastmod' ] = $post->post_modified_gmt;
return $entry;
}
Исключаем определённую страницу из карты сайта
Предположим, что вы создали какой-то SEO-плагин, который позволяет добавлять мета-тег robots noindex для определённых страниц или записей сайта, тогда вполне логично, что их нужно исключать и из карты сайта.
В этом вам поможет фильтр-хук wp_sitemaps_posts_query_args
:
add_filter( 'wp_sitemaps_posts_query_args', 'exclude_post', 25, 2 );
function exclude_post( $args, $post_type ) {
// ничего не делаем, если тип поста не post
if ( 'post' !== $post_type ) {
return $args;
}
// параметр post__not_in уже может существовать, не теряем его
$args[ 'post__not_in' ] = isset( $args[ 'post__not_in' ] ) ? $args[ 'post__not_in' ] : array();
// исключаем запись с ID 1, да, которая "Привет мир"
$args[ 'post__not_in' ][] = 1;
return $args;
}
Количество URL в одной карте
Ещё один хук wp_sitemaps_get_max_urls
. По умолчанию содержится 2000 URL в одной карте, но мы можем изменить это значение.
add_filter( 'wp_sitemaps_max_urls', 'url_v_karte', 25 );
function url_v_karte( $object_type ){
// $object_type может быть 'post', 'term', 'user'
return 1000;
}
Для подготовки материала по картам сайта использовалась статья Карта сайта wp-sitemap.xml в WordPress.
Предварительный просмотр статьи
На странице редактирования статьи можно предварительно просмотреть как будет выглядеть статья на экранах различных устройств.
И здесь же находится ссылка на предварительный просмотр статьи в новой вкладке.
Как отключить Отложенную загрузку изображений?
Вы можете отключить функцию отложенной загрузки изображений в WordPress. Для этого вставьте следующий код в файл functions.php дочерней темы:
add_filter('wp_lazy_loading_enabled','_return_false');
Ручное обновление тем и плагинов из ZIP -архивов
Как вручную обновить темы и плагины WordPress?
Ручное обновление тем и плагинов WordPress с помощью загрузки ZIP-архивов. Новая функция в WordPress 5.5 особенно будет полезной и своевременной при ручном обновлении платных (премиум) тем и плагинов.
В этом видео:
- Обзор новой функции ручного обновления тем и плагинов.
- Пример ручного обновления бесплатного плагина Contact Form 7.
- Пример ручного обновления платного плагина Yoast SEO Premium.
- Пример ручного обновления премиум темы WoodMart.
Примечание
Вышел WordPress 5.5 и мы все побежали обновляться. И это правильно. Но, в своем видео (см. выше) я объясняю, что перед обновлением нужно сделать полный бэкап и обновить свою тему и все плагины. Если не обновить плагины, то возможно появление конфликтов и различных проблем. Например, у меня в теме WoodMart пропала возможность редактировать страницы с помощью WPBakery. У др. пользователя пропали иконки на сайте и т.д. Все эти проблемы решились с помощью обновления плагинов. Но, может быть такое, что нужно дождаться выхода новых версий плагинов и тем, которые полностью совместимы с новой версией WordPress и только потом обновлять сам WordPress.