Виправляємо помилки entry-title, author і updated
Компанія Google представляє для веб-розробників широкий вибір інструментів, які допомагають здійснювати аналітику, пошукову оптимізацію, виявлення проблем з безпекою і багато чого іншого. Тому відразу після розміщення свого сайту на хостингу і прив’язки домену я зареєстрував його у Google Console. Для цього сервісу використовується єдиний акаунт Google, потрібно лише підтвердити, що ви є власником сайту.
Після цього отримуємо доступ до таких розділів:
- Панель інструментів
- Повідомлення
- Вигляд у пошуку
- Пошуковий трафік
- Індекс Google
- Сканування
- Проблеми з безпекою
- Веб-інструменти
У кожному з них зібрані відповідні інструменти, які допомагають у пошуковому просуванні свого ресурсу.
Невдовзі після потрапляння сайту в індекс пошукової системи у розділі Вигляд у пошуку – Структуровані дані почав спостерігати помилки мікророзмітки hentry:
- Немає: author
- Немає: entry-title
- Немає: updated
При цьому у результатах пошуку Google показує дату допису та заголовок правильно:
При публікації дописів заголовок матеріалу, інформація про автора і дата публікації виводяться на сторінці. Вся ця інформація чудово бачиться і сприймається людиною. Пошуковий же робот не може правильно відрізнити блоки коду веб-сторінки, якщо не позначити їх відповідними мітками. Лише після цього він розуміє, що цей фрагмент є заголовком, інший – виводить дату публікації, наступний – інформацію про автора і т.д.
Тож помилки з’явилися через недотримані правила мікророзмітки розробниками шаблону.
Мікророзмітка – це семантична розмітка сторінок HTML, яка дозволяє явно вказати пошуковим роботам смислове значення окремих блоків тексту.
Причина з’ясована, потрібно правити файли шаблону. Перед виконанням наступних дій обов’язково зробіть резервну копію сайту, або файлів, що будуть редагуватися.
На своєму сайті я використовую безкоштовний мінімалістичний шаблон Ribbon Lite. У ньому для виведення окремих постів використовується файл single.php (як і в більшості шаблонів). Тому всі описані дії стосуватимуться редагуванню цього файлу. Варто зауважити, що за виведення дописів на сайті відповідають також файли шаблону index.php, search.php, archive.php (швидше за все, їх теж потрібно буде правити).
Суть змін полягає у додаванні відповідного класу елементам, які виводять заголовок допису на блозі, інформацію про автора та дату публікації.
Виправляємо помилку entry-title
У шаблоні Ribbon Lite ця помилка виправляється найпростіше.
У файлі single.php рядок 29 виводить заголовок допису
<h1 class="title single-title"><?php the_title(); ?></h1>
додаємо клас entry-title:
<h1 class="title single-title entry-title"><?php the_title(); ?></h1>
Пам’ятайте, використання в тегах декількох класів виконується через пропуск, наприклад: <h1 class=”class1 class2 class3″>…</h1>
Виправляємо помилку author
Нас цікавить рядок 33.
<span class="theauthor"><span><i class="ribbon-icon icon-users"></i></span><?php _e('By','ribbon-lite'); ?> <?php the_author_posts_link(); ?></span>
Змінюємо.
<span class="theauthor"><span><i class="ribbon-icon icon-users"></i></span><?php _e('By','ribbon-lite'); ?> <span class="author vcard"><span class="fn"><?php the_author_posts_link(); ?></span></span></span>
Тут функцію виведення інформації про автора <?php the_author_posts_link(); ?> потрібно заключити в теги <span> з указаними класами.
Виправляємо помилку updated
За виведення дати допису відповідає рядок 23:
<div class="post-date-ribbon"><div class="corner"></div><?php the_time( get_option( 'date_format' ) ); ?></div>
Змінюємо.
<div class="post-date-ribbon"><div class="corner"></div><span class="updated"><?php the_time( get_option( 'date_format' ) ); ?></span></div>
Як і в попередньому випадку, використовуємо тег <span> з відповідним класом.
Якщо ви використовуєте інший шаблон WordPress, знайти потрібні файли та місця коду можна орієнтуючись на фрагменти:
- <?php the_title(); ?> – виведення заголовку;
- <?php the_author_posts_link(); ?> або <?php the_author(); ?> – виведення інформації про автора;
- <?php the_time( get_option( ‘date_format’ ) ); ?> або <?php the_time(‘ F jS, Y ‘); ?> – виведення дати публікації.
Після внесення змін у файл(-и), завантажуємо їх на хостинг із перезаписом існуючих.
Відразу помилки в Google Console не зникнуть. Потрібно чекати повторної перевірки пошуковим роботом (від декількох днів до декількох тижнів).
Але за допомогою Інструменту тестування структурованих даних зміни можна побачити відразу. Вставляємо посилання на сторінку свого сайту і натискаємо кнопку “Перевірити”.
Так було до правок коду шаблону:
А так – після:
Тобто, Google побачив наші мітки entry-title, updated, author, і вивів навпроти них правильні значення.
Успіхів!
upd 08.09.2017. Через два тижні:
Після всіх виправлень, в перевірці залишилась одна помилка: url
Значення в полі url є обов’язковим. Не підкажете, де це шукати?
На вашому сайті справді є така помилка, зокрема на сторінках виведення окремих матеріалів (можливо на інших теж, я не перевіряв). Причина в фрагменті:
А саме через відсутність у параметрі content значення – адреси логотипа.
Потрібно шукати цей код у шаблоні і виправити.
Якщо вказати адресу графічного файлу, тоді помилки не буде. Наприклад
Перед внесенням змін в шаблон зробіть резервні копії файлів.
Дякую, буду шукати. Ні, то звернусь до розробника. Спробую ці помилки ще на одному сайті, щиро Вам дякую.
Будь ласка, звертайтесь) У вас, до речі, цікавий сайт.
Доброго дня! Скажіть, будь ласка, а Ви мали справу з трішки складнішими шаблонами? Я, наприклад, використовую шаблон Explore, Google мені показує такі ж помилки, як і у Вас (відсутні title, author i update), але я не можу знайти те, що потрібно. Title є лише на сторінці 404.php, але ж це не найголовніший файл, де він мав би бути. А іншого немає. Цей шаблон якось зовсім інакше написаний.
Добрий день! Напишіть адресу свого сайту, я подивлюся, що можна зробити.
Адресу сайту написала у полі “сайт”. Частково вдалося розібратися з цією проблемою: ці дані виводились у файлі content-single.php командою “”. Я її приховала і натомість додала вивід автора й дати окремо, але не там, а внизу, над футером, у файлі single.php. Проте заголовок не зник, але де він виводиться, не можу знайти. На сторінці запису він виводиться в H1, а в усіх файлах, що я дивилась, всюди H2, крім файлу 404.php. Якщо допоможете його знайти, буду дуже вдячна.
Перепрошую, чомусь із мого попереднього допису зникла команда, яку я написала, мабуть, її треба було вписувати інакше. Сайт тільки в розробці, поки збираю матеріал, тож тимчасово опублікувала лише один запис в меню Історія (потім знову приховаю).
Html-код і скрипти в коментарях не пропускає вордпрес (в цілях безпеки). Завантажив шаблон, але потрібен час, щоб розібратися. Перевірте файл шаблону header.php, зокрема рядок 127. Коментар у 119 рядку (// showing the pages/posts title) дає підстави вважати, що це потрібний фрагмент. Найпростіше перевірити – вписати свій текст-мітку між тегами h1 у 127 рядку й перевірити, де ця мітка виведеться на сайті.
Справді так! Щиро дякую!!!
Будь ласка, звертайтесь. Успіхів Вашому сайту, хороша ідея)