• Главная
  • Поиск
    •  
  • Здравствуйте, Гость

Автор Тема: data-vocabulary.org schema deprecated - Замена разметки на schema.org  (Прочитано 865 раз)
  • *
  • Сообщений: 16
Здравствуйте! На почту пришло письмо от гугл:
Проблемы категории "Строки навигации" на сайте http://**********.****/
Владельцу сайта http://*********.****/
На Вашем сайте обнаружены проблемы (1) категории "Строки навигации".
Основные предупреждения
Предупреждения – повод задуматься об оптимизации ресурса. Некоторые предупреждения позволяют узнать, как улучшить вид страниц в результатах поиска Google. То, из-за чего сегодня выносится предупреждение, в будущем может классифицироваться как ошибка. На основании анализа Вашего сайта были вынесены следующие предупреждения:

data-vocabulary.org schema deprecated

Рекомендуем Вам по мере возможности устранить указанные выше проблемы. Тогда в результатах поиска Google будет появляться больше страниц Вашего сайта, и притом в наилучшем виде.

Что надо сделать?
« Последнее редактирование: 25 Январь 2020, 21:09:34 от Dis »

Оффлайн Dis
  • Admin
  • *****
  • Сообщений: 1621
    • Шаблоны и плагины Osclass
« Ответ #1 : 25 Январь 2020, 21:08:04 »
Google решил перестать поддерживать свою же разметку для хлебных крошек :)
Тогда нужно изменить на разметку https://schema.org/BreadcrumbList
Открывайте файл /oc-includes/osclass/classes/Breadcrumb.php
начиная со строки 299 код:
                $text .='itemscope itemtype="http://data-vocabulary.org/Breadcrumb" >';
                // set separator
                if( $i > 0 ) {
                    $text .= ' ' . $separator . ' ';
                }
                // create span tag
                $title = '<span itemprop="title">' . $this->aLevel[$i]['title'] . '</span>';
                if( array_key_exists('url', $this->aLevel[$i]) ) {
                    $title = '<a href="' . osc_esc_html($this->aLevel[$i]['url']) . '" itemprop="url">' . $title . '</a>';
                }
                $node[] = $text . $title . '</li>' . PHP_EOL;
            }

            $result  = '<ul class="breadcrumb">' . PHP_EOL;
Меняйте на :
                $text .='itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem" >';
                // set separator
                if( $i > 0 ) {
                    $text .= ' ' . $separator . ' ';
                }
                $b = $i + 1;
                // create span tag
                $title = '<span itemprop="name">' . $this->aLevel[$i]['title'] . '</span>';
                if( array_key_exists('url', $this->aLevel[$i]) ) {
                    $title = '<a href="' . osc_esc_html($this->aLevel[$i]['url']) . '" itemprop="item">' . $title .'<meta itemprop="position" content="' . $b . '" /></a>';
                }
if( ($i == (count($this->aLevel) - 1)) && ($i != 0) ) {
$title = '' . $title .'<meta itemprop="position" content="' . $b . '"';
                }
                $node[] = $text . $title . '</li>' . PHP_EOL;
            }

            $result  = '<ul class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList">' . PHP_EOL;
Я проверил в тестовом инструменте от Google:
https://search.google.com/structured-data/testing-tool
Проверку проходит без ошибок.
« Последнее редактирование: 25 Январь 2020, 22:34:33 от Dis »
Доработки любой сложности.
Задание присылайте в личку.

  • *
  • Сообщений: 16
Вот этот новый код, что вы предложили выдает 1 ошибку: http://prntscr.com/qte62n
А старый проверил, ни чего не выдает: http://prntscr.com/qte7a8
« Последнее редактирование: 27 Январь 2020, 12:49:30 от Kazashka »

Оффлайн Dis
  • Admin
  • *****
  • Сообщений: 1621
    • Шаблоны и плагины Osclass
А зачем Вы в инструмент код вставляете ? Это же php код...а не готовая разметка!
Url проверяйте! Все там отлично.
Доработки любой сложности.
Задание присылайте в личку.

  • *
  • Сообщений: 16
Всё норм, url  без ошибок, спасибо. Интересно на других платформах, например в Вордпресс, тоже так же будет или простым обновлением обойдемся!?

  • **
  • Сообщений: 59
На счет этого надо спрашивать на форумах движка Wordpress, так как разрабы только знают...А у нас тут форум по немного другому движку называется ... (osclass) а в прочем вы сами знаете :D

 


test