Как в WordPress изменить местоположение мета-блока

Пост будет полезен тем, кто одновременно использует плагины Slim SEO и Meta Box. Речь пойдет о том, о том, как настроить расположение пользовательского мета-блока в WordPress.

Активировав Slim SEO на веб-сайте WordPress, где следует Meta Box, вы можете легко заметить, что блок Slim SEO выводится выше пользовательских мета-блоков(созданных плагином Meta Box).

Можно просто перетащить мета-блоки, но это заморочка для новых посетителей. Лучше один раз настроить приоритет мета-блока Slim SEO, чтобы он стал ниже пользовательских мета-блоков.

Чтобы прояснить вопрос, рассмотрим скриншот:

мета-блока Slim SEO

На этом экране есть 2 пользовательских мета-блока:

  • Первый(поисковая оптимизация), созданный плагином Slim SEO.
  • Второй – пользовательский мета-блок, созданный плагином Meta Box.

По умолчанию Slim SEO помещает мета-блок в верхнюю часть списка мета-блоков в(технически) «нормальном» месте с «высоким» приоритетом. Это означает, что его мета-блок находится вверху списка.

Когда посетители регистрируют собственные мета-блоки в Meta Box, они могут выбирать расположение и приоритет мета-блоков. Но поскольку Slim SEO имеет в себя высокий приоритет, его блоки чаще всего располагаются выше, а пользовательские, хоть и с высокими приоритетами – под ним.

Смотрите также:

Как работать с произвольными полями ввода в WordPress при помощи плагина Meta Box.

Как переместить мета-поле Slim SEO в конец списка

Проведя некоторые исследования, мы поняли, что это можно сделать при помощи следующего фрагмента:

add_action(‘add_meta_boxes’, function() {global $ wp_meta_boxes;

$ post_type = ‘post’;

// Приобрести Slim SEO мета-поле.$ slim_seo_meta_box = $ wp_meta_boxes [$ post_type] [‘normal’] [‘high’] [‘slim-seo’];unset($ wp_meta_boxes [$ post_type] [‘normal’] [‘high’] [‘slim-seo’]);

// Переместить его в «расширенное» местоположение с «низким» приоритетом.if(пусто($ wp_meta_boxes [$ post_type] [‘advanced’])) {$ wp_meta_boxes [$ post_type] [‘advanced’] = [];}if(пусто($ wp_meta_boxes [$ post_type] [‘advanced’] [‘low’])) {$ wp_meta_boxes [$ post_type] [‘advanced’] [‘low’] = [];}$ wp_meta_boxes [$ post_type] [‘advanced’] [‘low’] [‘slim-seo’] = $ slim_seo_meta_box;}, 99);

Вы можете без труда поместить фрагмент в functions.php файл вашей темы или использовать плагин, такой как Code Snippets, чтобы вставить код.

Что делает фрагмент

Главное, что после регистрации мета-блоков WordPress сохраняет их в глобальной переменной $wp_meta_boxes. Эта переменная представляет собой массив всех мета-блоков, классифицированных по местоположению и приоритетам. Все, что нам необходимо сделать, это найти мета-окно Slim SEO и переместить его в иное место.

Обратите внимание, что мы подключаемся к add_meta_boxes действию с приоритетом 99, чтобы быть уверенным, что все мета-блоки зарегистрированы.

Результат

После запуска фрагмента, вот что вы получите:

add meta boxes

Задача решена. Мета-блок Slim SEO расположен ниже пользовательского.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *