Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

На сайте динамический вывод меню, прописал в functions.php код (он ниже), для "SiteNavigationElement" но в итоге не получается. Что делать?

itemprop="url" , а я хочу разметить так же itemprop="name". Большое спасибо

/* микроразметка menu */

function nav($content) {

$pattern = "<a ";

$replacement = '<a itemprop="url" ';

$content = str_replace($pattern, $replacement, $content);

return $content;

}

add_filter('wp_nav_menu', 'nav');

WordpressSeo оптимизация
Евгений
  ·   · 1,7 K
WordPress для чайников и разработчиков 🤓  · 13 апр 2021  · wordpresslab.ru

Здравствуйте Евгений.

Вы решили пойти самым сложным путём, а именно внедрением микроразметки непосредственно в HTML. Если с элементами навигации будет достаточно просто справиться, то с другими форматами (article, FAQ, reviews...) вам придётся переписывать сам шаблон.

Обратите внимание, что есть более простой метод - это использовать JSON-LD, что очень просто:

1. Ручной метод:

function wplb_schema() {
  $schema = [];
  ... // тут мы опишем все уловия для вывода разных форматов микроразметок на разных страницах и формируем $schema
  $output = json_encode( $schema, JSON_UNESCAPED_SLASHES ); // Преобразуем полученный массив в json строку
  ?>
    <script type="application/ld+json">
      <?php echo $output; // выводим json строку ?>
    </script>
  <?php
}

// Хукаем шапку для вывода json-ld
add_action( 'wp_head', 'wplb_schema' );

2. Автоматизация:

В репозитории есть много плагинов для автоматического формирования микроразметки. На нашем сайте мы используем плагин Rank Math, который позволяет внедрять, абсолютно любую микроразметку и настраивать её.

Вот пример анализа одной из наших страниц сервисом от Google для проверки расширенных снипетов.

Спасибо.

Инструкции и руководства по WordPress для чайников и разработчиков Перейти на wordpresslab.ru
1 эксперт согласен

Алексей, спасибо , а какие из плагинов в состоянии разметить именно меню?