Пост буде корисним тим, хто одночасно використовує плагіни Slim SEO та Meta Box. Йтиметься про те, як змінити розташування користувальницького мета-блоку в WordPress.
Активувавши Тонкий SEO на сайті WordPress, де вже стоїть Мета Box, Ви можете помітити, що блок Slim SEO відображається вище користувацьких мета-блоків (створених плагіном Meta Box).
Можна просто перетягнути мета-блоки, але це проблема для нових користувачів. Краще один раз змінити пріоритет мета-блоку 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, щоб бути впевненим, що всі метаблоки вже зареєстровані.
Результат
Після запуску фрагмента, ось що ви отримаєте:

Завдання вирішено. Мета-блок Slim SEO розташований нижче користувача.
Джерело: deluxeblogtips.com





















Коментарі до запису: 0