Надоело качать зараженные модули из варезов? Не хочется ли покупать дорогие никому не нужные надстройки? Тогда давайте вместе автоматизируем формирование title, мета-тегов и заголовка H1 в Opencart через несколько минут.
Задача
План статьи
Автоматическое поколение конвертабельного и SEO-оптимизированного title, description, h1 на Opencart (не путаем с ocStore) для товаров, категорий (подкатегорий).
Проектирование Title, H1, Мета-тега Description для Opencart
Проектирование для интернет-магазина детского трикотажа на Opencart (там уже все интегрировано в качестве примера для вас). Проект шаблонирования под этот сайт:
Шаблоны title
- Категории (Подкатегории): «Купить Название категории оптом и в розницу от производителя в Украине».
- Товары: «Купить Название товара оптом и в розницу – София Текстиль».
Шаблоны description
- Категории (Подкатегории): «София Текстиль предлагает купить фирменный* Название категории* оптом и в розницу в Украине. ✔Качественный трикотаж ✔Недорого ✔Всегда скидки и акции ☎+38 (098) 70-11-853».
- Товары: «Название товара от София Текстиль –✔Опт и розница ✔Качество ✔Низкая цена ✔Скидки и акции ☎+38 (098) 70-11-853».
Шаблоны H1:
- Категории (Подкатегории): «Купить Название категории в Украине»
- Для товаров не нужно менять.
Реализация (2 минуты)
Opencart 1.5.*.*
Заходим в папку сайт.ру/catalog/controller/product/
Категории (Подкатегории): Открываем файл category.php
Нахожу в поиске "setTitle". В соответствии с шаблоном меняю всю строку на:
$this->document->setTitle('Купить '.$category_info['name'].' оптом и в розницу от производителя в Украине.');
Строкой ниже находится "setDescription". Изменяю всю строчку на:
$this->document->setDescription('София Текстиль предлагает купить фирменный '.$category_info['name'].' оптом и в розницу в Украине. ✔Качественный трикотаж ✔Недорого ʀ 98 ) 70-11-853');
Несколькими строками ниже находится data['heading_title']. Изменяю всю строчку на:
$this->data['heading_title'] = 'Купить '.$category_info['name'].' в Украине';
Потребляемые товары: Открываем файл product.php. По аналогии придерживаясь шаблона:
Нашли setTitle и setDescription, поменяли полностью 2 строчки на:
$this->document->setTitle('Купить '.$product_info['name'].' оптом и в розницу – София Текстиль'); $this->document->setDescription($product_info['name'].' от София Текстиль – ✔Опт и розница ✔Качество ✔Низкая цена ✓0 -11-853' );
Ниже там где и в прошлый раз heading_title поменяли на (там уж такой, какой мне нужен, но вы можете с помощью конкатенации присоединить по аналогии примера "Категории" нужные слова с обеих сторон переменной):
$this->data['heading_title'] = $product_info['name'];
Теперь просто замените мой текст шаблона на свой и дерзайте!
Opencart 2.*.*, 3.*.*
После внесенных изменений не забудьте обновить кэш модификатора (он обновляет весь кэш на сайте). Для этого зайдите в админке в “Модификации” – сверху справа кнопка обновления и очистки кэша!
Файлы и пути к ним так же, как и для Opencart 1.5.., только для редактирования используются следующие строки:
$this->document->setTitle($product_info['meta_title']);
$this->document->setDescription($product_info['meta_description']);
$this->document->setKeywords($product_info['meta_keyword']);
$data['heading_title'] = $product_info['name'];
Пример отредактированных строк:
$this->document->setTitle('Купить '.$product_info['name'].' в Украине - Кофе из Италии');
$this->document->setDescription('Кава Моккачіно пропонує купити '.$product_info['name'].' оптом та в роздріб в Україні з Італії. ✔Якасна європейська кава ✔Недорого ✔Завжди знижки та акції ☎+38 (098) 70-11-853']);
$this->document->setKeywords('купить, '.$product_info['name'].',Украина, недорого, дешево, из италии, оригинал, опт, оптом');
$data['heading_title'] = 'Купить '.$product_info['name'];
Проверка внесенных изменений
После внесения и сохранения изменения для второй версии опенкарта не забудьте очистить кэш. Если у вас есть посторонний плагин кэширования – обязательно очистите кэш и там. Были случаи, когда принудительно страницы кэшировались возле хостинга – тогда попросите хостинг-провайдер очистить кэш сайта.
Изменения необходимо проверять непосредственно на страницах сайта в коде, а не в админке – в админке никаких изменений не будет – все будет так, как было раньше!
Для проверки изменений зайдите в код страницы (cntr+U для Windows, cmd+U для Mac) и в поиске по коду страницы пропишите , чтобы проверить измененный Title страницы, description – для проверки мета-описания description страницы, keywords – для проверки измененных ключевых слов в keywords, <h1 для перевірки зміни назви.</p>
Переменные Opencart
Переменные, которые могут потребоваться при шаблонизации мета-тегов в Opencart 1.5.* и 2.*:
Переменные category.php:
- $category_info['meta_title'] – Текущий title категории, заданный в админ-панели сайта. Берется из базы данных;
- $category_info['meta_description'] - Текущий META description категории, поставленные в админ-панели сайта. Берется из базы данных;
- $category_info['meta_keyword'] – Текущий keywords META категории, заданный в админ-панели сайта. Берется из базы данных;
- $category_info['name'] - название категории;
Переменные product.php:
- $product_info['meta_title'] – Текущий title товара, заданный в админ-панели сайта. Берется из базы данных;
- $product_info['meta_description'] – Текущий META description товара, заданный в админ-панели сайта. Берется из базы данных;
- $product_info['meta_keyword'] — текущий META keywords товара, заданный в админ-панели сайта. Берется из базы данных;
- $product_info['name'] - название товара;
- $product_info['manufacturer'] - производитель товара;
- $product_info['model'] - модель товара;
- $product_info['weight'] - вес товара;
- $product_info['length'] - длина товара;
- $product_info['width'] - ширина товара;
- $product_info['height'] - высота товара;
- $product_info['sku'] - артикул товара;
- $product_info['price'] - цена товара;
- $product_info['stock_status'] – наличие товара.
Сменные manufacturer.php:
- $manufacturer_info['meta_title'] – Текущий title производителя, заданный в админ-панели сайта. Берется из базы данных;
- $manufacturer_info['meta_description'] - Текущий META description производителя, заданный в админ-панели сайта (если есть такое поле в админке на странице редактирования производителя). Берется из базы данных;
- $manufacturer_info['meta_keyword'] — текущий META keywords производителя, заданный в админ-панели сайта (если такое поле в админке на странице редактирования производителя). Берется из базы данных;
- $manufacturer_info['name'] - название производителя;
FAQ – Вопрос-ответ
Статья имела ошеломляющий успех и спрос в интернете, поэтому возникла необходимость сделать краткий FAQ по популярным вопросам и ответам на них.
- Не вижу изменений в админ-панели, что делать? – Изменения не будут видны в админ-панели. Проверьте код страниц, для которых были внесены изменения (категория, товары или другие). Подробнее в разделе статьи "Проверка внесенных изменений";
- Как использовать метод многоязычного сайта? – Для многоязычного магазина разрабатывается индивидуальный код, поэтому советую воспользоваться услугами своего программиста или написать контактами (будет стоить в районе $10-20 в зависимости от нагрузки);
- Провёл изменения, сохранил файлы, но код страниц изменений нет, что делать? – Очистите кэш. Подробнее в разделе статьи "Проверка внесенных изменений";
- Подойдет ли решение для моей версии магазина Opencart? – Если номер версии начинается с цифр 1.5 или 2., то подходит для других версий – напишите за контактами, платно произведу изменения;
- Можно ли добавить к meta description контактные телефоны в виде переменной на записанные в конфигурации? – Решение здесь;
- Подходит для моего сайта (и ссылки) – Подходит для всех сайтов с подходящей версией Opencart, кроме тех, в которых используются посторонние модули, уже использующие эти переменные. Несколько модулей находили в интернете, которые были написаны специально по идее моего решения;
- Всем привет, я тоже изменил цель теги все как в инструкции, и те слова, что добавил все стали вопросительным знаком? – Решение в кодировании файла – нужно изменить на UTF-8 (через Notepad++ или аналоги);
- Как добавить заголовок h1 на главную страницу? – Решение;
- У вас другой вопрос? – Если он поможет всем, а не только вам – добавляйте в комментарии, и я решу его бесплатно. Если у вас индивидуальный случай – пишите в контакты, разрешу вопрос за деньги.
Не понимаете как и где что нужно изменить в Opencart? Могу подсказать лично! Обращайтесь за контактами.
Продвинутая шаблонизация Title, мета-тегов Description, H1 в Opencart с помощью модулей
За несколько лет существования этой статьи мной было проведено более 150 SEO-оптимизации интернет-магазинов на Opencart разных версий. В процессе я перепробовал множество готовых решений и поделяюсь с вами самыми успешными по моему мнению. Если вы знаете дополнительные решения, пишите в комментариях, обязательно потестую и добавлю к статье.
SEOGEN 2.0
Супер быстрый, простой и гибкий модуль, решающий комплексные задачи автоматизации тайтла, дескрипшн, h1, seo url. Его преимущества:
- Возможность точечных генераций и сохранность их в виде профилей. Например, для категории "Аккумуляторы" вы можете сделать отдельный профиль генерации мета-тегов товаров, принадлежащий этой категории, который точечно заточить под слова "Аккумулятор", "АКБ" и т.д.
- Супер быстрая скорость работы. Генерация для 5000 товаров занимает около 1 секунды даже на медленных серверах и хостингах.
- Автоматическая генерация при добавлении товара.
Paladin SEO
В интернете и на профильных форумах об этом супер классном модуле пишут много гадостей, но уверяю вас – я уже поставил его на 50+ сайтов, полет нормальный, нигде нет проблем. Достоинства:
- Настоящий комбайн для SEO! Кроме генерации мета-тегов здесь есть: модуль sitemap.xml, всевозможные микроразметки (даже самые редкие, например, окно поиска), Last-Modified и If-Modified-Since, Canonical, продвинутая настройка хлебных крошек, оптимизация главной страницы, менеджер 404 ошибок, создание доп. полей в товарах (title картинки, alt картинки, h1, h2, h3, seo title), настройка мультиязыковости по SEO (языки в подпапках + hreflang), приведение пагинации в SEO-формат и другие настройки.
- Продвинутые поколения. Есть возможность, например, сгенерировать теги (не мета-теги, в частности, теги) продуктов, количество которых можно расширить по городам и странам. Есть встроенный рандомайзер.
- Генерация отзывов товаров! Задаем шаблоны отзывов, шаблоны имен, выставляем настройки – сколько коснуться % от всех товаров, какую оценку ставить (от и до) и вуа-ля – у сайтов появляются отзывы, а с ними и звездочки в угле (ибо настроена микроразметка schema. org Review для каждого отзыва).
- Автоматизация за кроном. Установите функции, которые хотите генерировать раз в какое-то время и внести настройки в крон – все будет делаться без вашего вмешательства!
SEO Manager
Приблизительно то же, что и Паладин SEO. Для себя выделяю один плюс – скорость работы. Разница с Палладином – отсутствие отзывов. Использую в качестве аналога, если не удается установить Paladin SEO.