Автоматические meta-теги title и description
Популярные запросы: Open Graph, плагин Reading Time, тема Quebec, плагин Telegram, набор иконок Analogue
- 791 просмотр +1
- 22 января, 2023
- Обновлено: 30 марта, 2026
- admin
- Время чтения: 3 минуты
- 1 (Подробно)
Итак, вы запускаете интернет-магазин и начинаете наполнять его товарами. Делать это можно разными способами, однако сразу же возникает вопрос создания уникальных мета-тегов title и meta description. Когда количество товаров начнет переваливать за сотню, вопрос начинает превращаться в серьезную проблему. Ни один СЕО-аудит не проходит без ошибок, а оптимизатор и контентщик начинают предлагать варианты один хуже другого.
В движке Cotonti можно легко автоматизировать данную задачу. Поясним ее на примере интернет-магазина. Опять же, ради примера, будем считать, что в структуре экстраполей у нас существует поле page_price, в котором хранится цена товара.
Прежде всего создадим плагин, или добавим новую часть к уже существующему. Мы будем использовать хук header.main:
<?php
/* ====================
[BEGIN_COT_EXT]
Hooks=header.main
[END_COT_EXT]
==================== */
defined('COT_CODE') or die('Wrong URL');
Для начала все же проверим экстраполе с ценой на ненулевое значение и подставим к нему значение валюты. В противном случае используем строковое значение "недорого":
$howmuch = ($pag['page_price'] > 0) ? 'за ' . $pag['page_price'] . ' BYN') : 'недорого';
Следующим шагом формируем meta title. Исходим из того, что название товара находится в стандартном поле page_title:
$out['fulltitle'] = 'Купить ' . $pag['page_title'] . ' в Минске ' . $howmuch;
Чтобы все было по-джедайски, определим языковые переменные:
$L['what'] = 'Купить'; $L['where'] = 'в Минске';
Результирующий код:
$out['fulltitle'] = $L['what'] . ' ' . $pag['page_title'] . ' ' . $L['where'] . ' ' . $howmuch;
Поскольку подобным образом надо поступать только с определенным набором страниц, ограничим наш генератор. Например, так:
if ($c == 'computers') $out['fulltitle'] = $L['what'] . ' ' . $pag['page_title'] . ' ' . $L['where'] . ' ' . $howmuch;
Meta description генерим аналогичным способом, но уже в компоненте плагина с хуком page.main:
<?php /* ==================== [BEGIN_COT_EXT] Hooks=page.main [END_COT_EXT] ==================== */
Генерим языковые переменные для тега meta description:
$L['weoffer'] = 'Предлагаем нашим клиентам купить'; $L['delivery'] = 'с доставкой и подключением под ключ';
Результирующий код:
$out['desc'] = $L['weoffer'] . ' ' . $pag['page_title'] . ' ' . $howmuch . ' ' . $where . ' ' . $L['delivery'];
Выводы
Несложным плагином из двух частей мы смогли автоматизировать рутинную задачу по формированию мета-данных для типовых и малоконтентных страниц сайта. В нашем случае, товаров интернет-магазина. Чередуя текстовые вставки и значения экстраполей, мы получили уникальные мета-теги title и description для каждой товарной позиции.
Все, что от вас потребуется в дальнейшем, это отслеживать длину полученных значений так, чтобы она не превышала максимальные 65 и 155 символов для title и description соответственно.
Новый комментарий
Ошибка
Выполнено