Помогите, пожалуйста, добавить разметку schema.org в "хлебные крошки" и Главное меню.


Romanov Roman
627

Ребят, всё-таки решил я внедрить микроразметку schema. Во всяком случае, хуже не будет.

Устанавливать плагин не хотелось бы.

Попробую прописать сущности вручную.

Кому не слишком трудно, не могли бы Вы мне подсказать.

Есть «хлебные крошки». Упрощенный вариант.

<div class="crumbs">

Вы находитесь здесь: <?php if (is_home()) { ?>
<?php } elseif (is_single()) { ?>
<a href="https://searchengines.guru/ru/forum/<?php%20echo%20get_option("home'); ?>">Главная</a> →
<?php foreach((get_the_category()) as $cat) {
$cat=$cat->cat_ID;
echo(get_category_parents($cat, TRUE, '')); } ?> →
<?php } ?>
</div>

И есть, коли не ошибаюсь, массив меню.

<nav id="nav">

<!-- Menu -->
<?php wp_nav_menu( array(
'theme_location' => 'ast-menu-primary',
'container' => false )
);
?>
<?php if ( asteroid_option('ast_menu_search') == 0 ) : ?>
<?php endif; ?>
</nav>

Как прописать в коды разметку schema.org?

Заранее Вам благодарен!


Romanov Roman

Да уж… Сам я это не осилю.

Легче забить. Тем паче, что это низчайший фактор ранжирования.


Sokol2012

Можете воспользоваться плагином Schema, он встраивается и корректно работает с Yoast SEO.


Romanov Roman

Sokol2012:
Можете воспользоваться плагином Schema, он встраивается и корректно работает с Yoast SEO.

Спасибо, попробую. Но я Yoast не использую. Установлен All-In-One-Seo-Pack.

———- Добавлено 31.03.2020 в 21:00 ———-

Sokol2012,

Можно ещё знаете, как поступить.

Установить плагин. Посмотреть исходный код, в котором присутствует разметка.

Отключить плагин и попробовать всё внедрить по аналогии — руками.

———- Добавлено 31.03.2020 в 21:06 ———-

Плагин выдал «белый экран».

Обойдусь без разметки.


onep

Как-то так, но проверять нужно


<div class="crumbs" itemtype="http://schema.org/BreadcrumbList">
Вы находитесь здесь: <?php if (is_home()) { ?>
<?php } elseif (is_single()) { ?>
<span itemprop="itemListElement" itemtype="http://schema.org/ListItem"><a href="https://searchengines.guru/ru/forum/<?php%20echo%20get_option("home'); ?>" itemprop="item"><span itemprop="name">Главная</span></a></span> →
<?php foreach((get_the_category()) as $cat) { ?>
<span itemprop="itemListElement" itemtype="http://schema.org/ListItem"><a href="https://searchengines.guru/ru/forum/<?=get_category_link($cat->cat_ID);?>" itemprop="item"><span itemprop="name"><?=get_cat_name($cat->cat_ID);?></span></a></span> →
<?php } ?>
</div>


Sokol2012

Romanov Roman:
Спасибо, попробую. Но я Yoast не использую. Установлен All-In-One-Seo-Pack.

———- Добавлено 31.03.2020 в 21:00 ———-

Sokol2012,
Можно ещё знаете, как поступить.
Установить плагин. Посмотреть исходный код, в котором присутствует разметка.
Отключить плагин и попробовать всё внедрить по аналогии — руками.

———- Добавлено 31.03.2020 в 21:06 ———-

Плагин выдал «белый экран».
Обойдусь без разметки.

С All-In-One-Seo-Pack я бы не рекомендовал устанавливать данный плагин, так как неизвестно как он себя поведет.

Насчёт внедрить всё ручками — конечно, вы можете так и сделать, но это будет посложнее.

П.С. Не забывайте перед каждой правкой файлов делать бэкап, это важно.


Romanov Roman

onep,

Низкий поклон, обязательно проверю!

Что касается меню, то скорее всего его придётся выводить в виде статики.

По-другому разметку не добавить.

———- Добавлено 31.03.2020 в 21:50 ———-

Не вышло. Где-то ошибка в коде.

———- Добавлено 31.03.2020 в 21:51 ———-

Может тут:

<a href="https://searchengines.guru/ru/forum/<?=get_category_link($cat->cat_ID);?>"

———- Добавлено 31.03.2020 в 22:25 ———-

function wp_zhilin_krohi() {

if ( !is_home() ) {
echo '<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
<a itemprop="url" href="'.get_option('home').'" ><span itemprop="title">Главная</span></a></span> » ';
}

if (is_category() || is_single()) {
$cats = get_the_category();
foreach ($cats as $cat) {
echo '<span itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
<a itemprop="url" href="'.get_category_link($cat->term_id).'" ><span itemprop="title">'
.$cat->name.'</span></a></span> » ';
}
}

if(is_single())
{
the_title();
}
};


Romanov Roman

С «хлебными крошками» я разобрался.

Не могли бы Вы помочь мне разметить блок связанных тем?

Если я не ошибаюсь, такая возможность есть: https://schema.org/relatedLink

Я попытался самостоятельно разметить ссылки на похожие посты, формируемые плагином YARPP.

Вот, что у меня получилось:

<ol itemscope itemtype="http://schema.org/WebPage">

<li itemprop="relatedLink"><a href="https://searchengines.guru/ru/forum/related_news_1.html">Related News 1</a></li>
<li itemprop="relatedLink"><a href="https://searchengines.guru/ru/forum/related_news_2.html">Related News 2</a></li>
<li itemprop="relatedLink"><a href="https://searchengines.guru/ru/forum/related_news_3.html">Related News 3</a></li>
</ol>

Но Яндекс ругается на кавычки.

Что я делаю не так?


ivan-lev

Romanov Roman:
Но Яндекс ругается на кавычки.

А как именно он ругается на кавычки? Есть подозрение, что там вся суть ошибки не в related_news_1.html, а в реальных данных.


Romanov Roman

ivan-lev,

Простите, но что Вы имеете в виду под реальными данными?

В настоящее время, я удалил разметку relatedLink по причине ошибки.

Сейчас и не вспомню, на что он там ругался. Кавычки не принадлежат элементу relatedLink.

Что-то вроде того.

Вот, как я внедрял разметку.

Зашёл в админку WordPress. Настройка плагина YARPP.

И прописал в поля <ol></ol> и в <li> </li> вот такую конструкцию.

<ol itemscope itemtype=»http://schema.org/WebPage»>

<li itemprop=»relatedLink»>


ivan-lev

Romanov Roman:
Простите, но что Вы имеете в виду под реальными данными?

У Вас написано, что:

Romanov Roman:
Но Яндекс ругается на кавычки.

Уточнение:

ivan-lev:
А как именно он ругается на кавычки?

Просьба «процитировать яндекс» (возможно, указание конкретного кодастраницы, на которую Он ругается» упростит и ускорит поиск проблемы)..

Он же не говорит «Б*** кавычки»?..

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

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