Экономика стран

К сожалению, большинство людей, которые будут ими затронуты почти весь мир, не будут иметь никакого влияния на результат. Вести Экономика Дайджест иностранной прессы за 14 августа.
Вести Экономика Греции снова придется списывать долги Греция не сможет самостоятельно расплатиться по долгам, и понадобится новая реструктуризация долгов, чтобы спасти страну от банкротства.

Розширені сніппети для Drupal 7- покрокова інструкція

  1. Установка необхідних модулів
  2. Редагування файлу template.php
  3. Створюємо кастом токени
  4. Виправляємо баг модуля Shema Metatag
  5. Налаштування модуля Metatag
  6. Налаштування модуля Structured Data
  7. Перевірка результату

Уже все напевно знають, що розширені сніппети дозволяють уявити сторінку вашого сайту у видачі пошукових систем більш інформативно і помітно, що підвищує кількість кліків по ній, і в майбутньому позитивно може позначатися на позиціях. Упустимо вікі тексти про те які бувають сніппети і розмітки і взагалі що це і як, тема цього поста про те, як впровадити структуровані дані (мікророзмітки) для сайтів, створених моєму улюбленому движку - Друпал7.

Хочеться ще сказати, що керівництво призначене для користувачів, які хоч трохи знайомі з роботою і структурою сайтів на Друпал, якщо писати керівництво повністю, з нуля, то вийде міні книга.

Установка необхідних модулів

І так, для початку нам необхідно встановити необхідні для роботи модулі

  1. Token
  2. Custom token
  3. Metatag
  4. Fivestar і Voting Api
  5. Schema.org metatag
  6. Structured data

Для Drupal 7 найпопулярнішим модулем мікророзмітки прийнято вважати модуль schema.org , Але він уже давненько не оновлювався і тепер непотрібний, оскільки не працює як треба, саме тому ми і будемо використовувати модуль Schema.org metatag.

І так, встановлюємо модулі, і тепер включаємо. У модулі Schema.org metatag включаємо ті підмодулі, які нам потрібні. Кожен подмодуль відповідає за окремий вид контенту. наприклад:

  • Schema.org/Article - мікророзмітки для статей
  • Schema.org/Product - для товарів
  • Schema.org/Service - для сервісів і послуг
  • Schema.org/Review - для різних оглядів і відгуків і.т.д.

У нашому випадку необхідні сніпетів для інтернет магазину, соответсвующей включаємо Schema.org/Product

На жаль, просто установкою модулів не обійтися так як стандарти пошукових систем до мікророзмітки змінюються швидше, ніж оновлюються модулі. Тому нам доведеться дещо допив в коді.

Редагування файлу template.php

Цей крок необхідний для того, щоб змусити правильно працювати модуль Fivestar. Проблема в тому, що далі, при налаштуванні metatag нам необхідно буде підставляти потрібні маркери, але токени відповідають за замовчуванням за висновок зірочок рейтингу у мене тупо не працювали (наприклад [node: field-rating: rating_count] відповідає за кількість голосів, і [node: field-rating: average_rating] середнє число рейтингу), тому пишемо свою функцію в файлі включеної теми шаблону (/sites/all/themes/yourtheme/template.php)

. У файл теми: template.php додаємо функцію:

function YOURTHEME_rating_token () {$ output = ''; $ Output [ 'rating_count'] = ''; $ Output [ 'rating_number'] = ''; if (arg (0) == 'node') {$ rating_count = db_query ( "SELECT value FROM {votingapi_cache} WHERE entity_id =: id AND function =: fu", array ( ': id' => arg (1), ': fu' => 'count')) -> fetchField (); if (isset ($ rating_count)) {$ output [ 'rating_count'] = $ rating_count; } $ Rating_number = db_query ( "SELECT value FROM {votingapi_cache} WHERE entity_id =: id AND function =: fu", array ( ': id' => arg (1), ': fu' => 'average')) - > fetchField (); if (isset ($ rating_count)) {$ output [ 'rating_number'] = (round ($ rating_number, 0)) / 10; }} Return $ output; }

За замовчуванням цей код для рейтингів з 10 зірочками.

Якщо Ви будете використовувати 5 зірочок - замініть в коді рядок:

$ Output [ 'rating_number'] = (round ($ rating_number, 0)) / 10;

на

$ Output [ 'rating_number'] = (round ($ rating_number, 0)) / 20;

Створюємо кастом токени

Тепер нам потрібно створити свої маркери для майбутнього виведення цих самих зірочок. В меню адміністратора переходимо в: Структура -> Custom Token -> Add Token (admin / structure / token-custom / add)

Створюємо токен: Перший токен - відповідає за виведення кількості тих, хто проголосував. І так:

  1. Називаємо токен наприклад: rating count
  2. Робимо опис, наприклад: Кількість тих, хто проголосував
  3. У token type вибираємо формат "Власна"
  4. В вміст в форматі PHP code вставляємо: <? Php global $ theme; $ Output = ''; if ($ theme == 'YOURTHEME') {$ output = YOURTHEME_rating_token () [ 'rating_count']; } Return $ output; ?>

  5. Зберігаємо і переходимо до створення другого токена

Другий токен буде твечать за виведення середньої оцінки у вигляді цифри. І так:

  1. Переходимо для створення кастом токена (/ admin / structure / token-custom / add)
  2. Називаємо токен наприклад: rating number
  3. Робимо опис, наприклад: Число рейтингу
  4. У token type вибираємо формат "Власна"
  5. В вміст в форматі PHP code вставляємо: <? Php global $ theme; $ Output = ''; if ($ theme == 'YOURTHEME') {$ output = YOURTHEME_rating_token () [ 'rating_number']; } Return $ output; ?>

  6. Зберігаємо і переходимо до налаштування метатегов

Виправляємо баг модуля Shema Metatag

Увага! Як виявилося поки я готував статтю вийшла нова версія модуля 7.x-1.1 в якій це баг вже виправлений! Так що качайте останню версію і цей крок пропускайте. Але для загальної інформації все таки залишу опис раніше існуючої проблеми.

Як я говорив вище, часто модулі для Друпал просто не встигають оновлюючи за темпами змін в пошукових системах. Так і тут. Проблема в тому, що ушите в модуль Shema.org Metatag значення Rating для типу матеріалів Product не проходить валідацію мікророзмітки в Google. Нам його потрібно замінити на

Редагуємо файл sites / all / modules / schema_metatag / schema_product / schema_product.metatag.inc

шматок коду:

$ Info [ 'tags'] [ 'schema_product.rating'] = array ( 'class' => 'SchemaRatingBase', 'label' => t ( 'rating'), 'description' => '', 'multiple' = > TRUE, 'weight' => ++ $ weight,) + $ defaults;

Замінюємо на:

$ Info [ 'tags'] [ 'schema_product.aggregateRating'] = array ( 'class' => 'SchemaRatingBase', 'label' => t ( 'aggregateRating'), 'description' => '', 'multiple' = > TRUE, 'weight' => ++ $ weight,) + $ defaults;

Налаштування модуля Metatag

  1. Переходимо в налаштування метатегов admin / config / search / metatags і додаємо (якщо ще не додавали) тип метатегов (admin / config / search / metatags / config / add) У нашому випадку тип шаблону метатегов вже був раніше створений як: Вміст: прилад
  2. Натискаємо редагувати потрібний тип. При необхідності задаємо шаблон метатегов для заданого типу матеріалу і переходимо на вкладку завдання мікророзмітки Shema.org Product (у Вашому випадку це може бути Schema.org Article або Schema.org Service наприклад, все залежить від того, який подмодуль ви включили на етапах вище, і який тип матеріалу вам необхідно розмітити.
  3. Заповнюємо необхідні поля. Приклад заповнення прикріплюю, сподіваюся далі самі розберетеся що і як зробивши поправки під свої потреби і настройки.

Зверніть увагу, що в дані ratingValue і ratingCount ми вставляємо раніше створені нами Custom токени. Також, якщо у вас 5 зірочок в рейтингу на сайті, змініть bestRating з 10, на 5

Налаштування модуля Structured Data

Модуль необхідний для розширеного представлення вашого сайту, а не окремої сторінки. Дозволяє виводити логотип, соціальні посилання і.т.д. Тут особливо налаштовувати нічого, думаю все зрозуміло буде. Переходимо в admin / config / structured-data заповнюємо необхідні поля.

Перевірка результату

Перед завершенням обов'язково переконайтеся що все налаштували вірно. Для цього переходимо в сервіс перевірки структурованих даних від Google https://search.google.com/structured-data/testing-tool, і перевіряємо будь-яку сторінку нашого сайту соответсвубщего типу матеріалу, для якого були зроблені настройки.

На виході повинні отримати таке:

На виході повинні отримати таке:

WellDone!

Це звичайно не панацея, і для багатьох програмістів буде легше прописати мікророзмітки прямо в .tpl файлах теми, але такий спосіб організації мікророзмітки на сайті Друпал 7 теж робочий і имееет місце бути. Також, для доповнення мікроданних хлібними крихтами, а також поліпшення структури сайту, раджу використовувати модуль Path Breadcrumbs . Його настройка це окрема стаття, але в налаштуваннях сніпетів рекомендую ставити так:

Його настройка це окрема стаття, але в налаштуваннях сніпетів рекомендую ставити так:

Php global $ theme; $ Output = ''; if ($ theme == 'YOURTHEME') {$ output = YOURTHEME_rating_token () [ 'rating_count']; } Return $ output; ?
Php global $ theme; $ Output = ''; if ($ theme == 'YOURTHEME') {$ output = YOURTHEME_rating_token () [ 'rating_number']; } Return $ output; ?
Навигация сайта
Реклама
Панель управления
Календарь новостей
Популярные новости
Информация
Экономика стран www.mp3area.ru © 2005-2016
При копировании материала, ссылка на сайт обязательна.