Решил поделиться с сообществом своим файлом с микроразметкой для типа контента "Новости" (так как они у меня в приоритете). Несколько пояснений:
1. В папке templates/default/content находим файл default_item.tpl.php, копируем его и переименовываем в news_item.tpl.php — тем самым делаем свой шаблон для типа материала "Новости"
2. В новом файле добавляем информацию об издателе: Название сайта, логотип, адрес, телефон (рекомендация Гугла).
3. Размечаем по стандарту поля author, articleBody, headline name — здесь все просто.
4. Для description и image придется "выдернуть" поля из основного содержимого.
5. Для правильного указания datePublished и dateModified, согласно инструкции делаем свой helper.php. В нем редактируем функцию function html_date и добавляем свою для dateModified:
function html_date($date=false, $is_time=false){ $date = '<time itemprop="datePublished" datetime="'.date('c', $timestamp).'">'.htmlspecialchars(date(cmsConfig::get('date_format'), $timestamp)).'</time>'; return $date; } function modif_date($date=false, $is_time=false){ $date = '<time itemprop="dateModified" datetime="'.date('c', $timestamp).'">'.htmlspecialchars(date(cmsConfig::get('date_format'), $timestamp)).'</time>'; return $date; }
У меня остался не решенным вопрос с указанием itemprop="width" и itemprop="height". Подразумеваю, что нужно сделать через getimagesize — но у меня не получилось.
Возможно, рано или поздно данная микроразметка наряду с Open Graph появится по-умолчанию в InstantCms 2 (моя запись на GitHub), но а пока предлагаю поделиться своими наработками.
UPD: Найдено универсальное решение от Evanescence: http://instantcms.ru/blogs/moi-razrabotki/dobavljaem-schema-org-k-open-graph.html