Виправляємо помилки в оптимізації на Opencart
Opencart одна з найпопулярніших CMS для розробки інтернет-магазинів. У кожного магазину на Opencart, незалежно від версії і збірки, існує певний ряд проблем в оптимізації.У статті розповімо про те, які є основні SEO-помилки на Opencart і яким чином їх можна виправити.
- Прості редіректы (склєювання дзеркал, /index.php, /index.php/, index.php?route=common/home).
- Закриття сторінок від індексу.
- Впровадження мікророзмітки на сайт.
Перед тим як зробити будь-які правки на сайті необхідно зробити бекап файлів, які ви будете редагувати.
1. Щоб зробити прості види редіректів (с www без www , /index.php, /index.php/, index.php?route=common/home) вам необхідно зайти на ftp. У корені сайту є файл index.php :
Ми відкриваємо файл index.php і напочатку файлу вставляємо код:
// Редірект с www -> без www //------------------------------------------------------------------------------ $rurl=$_SERVER['REQUEST_URI']; $rhost = $_SERVER['HTTP_HOST']; if ((strpos($rhost,'ww.')) && empty($_POST)) { $nhost = str_replace('www.','',$rhost); header("HTTP/1.1 301 Moved Permanently"); header("Location: http://".$nhost.$rurl); exit(); } //------------------------------------------------------------------------------
Цей код склеює дзеркала на сайті. В цьому випадку основне дзеркало буде https://site.ru/.
// Прибираємо /index.php //------------------------------------------------------------------------------ $rurl = $_SERVER['REQUEST_URI']; if (($rurl=='/index.php') && (empty($_POST))){ header("HTTP/1.1 301 Moved Permanently"); header("Location: /"); exit(); } //------------------------------------------------------------------------------
Цей код прибирає дубль головної сторінки сайту, буде прописаний 301 редирект зі сторінки http://site.ru/index.php на сторінку https://site.ru/
// Прибираємо /index.php?route=common/home //------------------------------------------------------------------------------ $rurl = $_SERVER['REQUEST_URI']; if (($rurl=='/index.php?route=common/home') && (empty($_POST))){ header("HTTP/1.1 301 Moved Permanently"); header("Location: /"); exit(); } //------------------------------------------------------------------------------
/index.php?route=common/home — це ще один дубль головної сторінки сайту.
Прописуємо 301 редирект з цієї сторінки на головну
// Прибираємо /index.php/ //------------------------------------------------------------------------------ $rurl = $_SERVER['REQUEST_URI']; if ((strpos($rurl,'/index.php/')!==False) && (empty($_POST))){ header("HTTP/1.1 301 Moved Permanently"); header("Location: ".str_replace('/index.php/','/',$rurl)); exit(); } //------------------------------------------------------------------------------
Цей код прибирає дублі на всіх сторінках категорій, підкатегорій, товарів, виробників.
Приклад:
http://site.ru/index.php/noski -> http://site.ru/noski
Після всіх цих маніпуляцій файл index.php буде виглядати так:
2. Для того щоб нам закрити непотрібні сторінки від індексації, необхідно відредагувати файл header.tpl нашого шаблону.
Файл header.tpl знаходиться catalog/view/theme/ваша тема/template/common
Відкриваємо файл і після рядка
вставляємо такий код:
$bad_patch = array('vyazanie-bikini', 'vyazanie-razdelnye-kupalniki', 'vyazanie-ananasiki', 'vyazanie-monokini', 'vyazanie-slitnye-kupalniki', 'vyazanye-tankini', 'kupalnik-plate', 'extrimalnye-kupalniki', 'exclusive-avtorskie-kupalniki'); foreach ($bad_patch as $k => $v) { if(substr_count($_SERVER['REQUEST_URI'], $v)) { echo ''; break; } }
Після всіх цих маніпуляцій файл header.tpl буде виглядати так:
Це не єдиний метод закрити сторінки від індексу ось ще один:
3. Внедрение микроразметки. Используя микроразметку, вы можете улучшить представление сниппета вашего сайта в результатах поиска. Более подробно о микроразметке и её видах вы сможете узнать в статті. Ось наприклад:
название сайта #rubricator”;rel=”v:url” property=”v:title”> Анкор посилання повинен бути такий же як і тег
на сторінці
Для того щоб впровадити мікророзмітку на сайт нам потрібно буде правити файли контролера (продукту, категорій, контакти, головна).
a)файла product.php ( catalog/controller/product )
Відкриваємо файл і в рядку 237
$this->data['heading_title'] = $product_info['name'];
створюємо глобальну змінну і передаємо їй значення $product_info['name'];
global $jenka_heading_title; $jenka_heading_title = $product_info['name'];
Після редагування файл product.php буде виглядати так:
б)файла category.php ( catalog/controller/product )
Відкриваємо файл і в рядку 103
$this->data['heading_title'] = $category_info['name'];
створюємо глобальну змінну і передаємо їй значення $category_info['name'];
global $jenka_heading_title; $jenka_heading_title = $category_info['name'];
Після всіх цих маніпуляцій файл category.php буде виглядати так:
в)файла home.php ( catalog/controller/common )
Відкриваємо файл і в рядку 16
$this->template = 'default/template/common/home.tpl';
створюємо глобальну змінну, для якої ми напишемо своє значення.
global $jenka_heading_title; $jenka_heading_title = 'приклад назви магазину';
Після всіх цих маніпуляцій файл home.php буде виглядати так:
г)файла contact.php ( catalog/controller/information )
Відкриваємо файл и в строці 31
$this->redirect($this->url->link('information/contact/success'));
створюємо глобальну змінну, для якої ми напишемо своє значення.
global $jenka_heading_title; $jenka_heading_title = 'Контакти сайту..';
Після всіх цих маніпуляцій файл contact.php буде виглядати так:
Після того як ми це зробили нам необхідно наш код
merengues.ru->#rubricator”; rel=”v:url” property=”v:title”>
а там де (анкор посилання повинен бути такий же як і тег h1) ми вставляємо ось такий код
Завдяки даній статті ви зможете собі заощадити гроші. І не будете витрачати їх на програміста.
Розвиток технологій і програм сприяє автоматизації, яка дісталася і до SEO-правок на сайти OpenCart. Якщо в статті вище ми все впроваджували за допомогою коду, то нижче я хочу описати новий метод впровадження правок ¬— за допомогою встановлення та налаштування модуля.
- Модуль 301 редиректівМенеджер редиректів дозволить створювати 301 редіректи на Opencart просто з адмінки сайту. Налаштування модуля дуже просте:
- Модуль для закриття сторінок від індексаціїМодуль Noindex, Follow, Noindex-Nofollow дозволяє додавати meta name =”robots” на сторінки категорій, продуктів, інформації і виробників. Налаштування модуля дуже просте:
- Модуль для впровадження метатегів на сайті Модуль забезпечує автоматичну SEO-оптимізацію метатегів всіх категорій і товарів, що має велике значення для SEO-просування інтернет-магазинів. Налаштування модуля дуже просте і зрозуміле. Перевага модуля — можна використовувати дуже багато змінних. Наприклад:
- Модуль впровадження мікророзмітки на сайтУ модулі використовується новітній формат мікророзмітки application / ld + json і більш консервативний microdata. Це дозволить «сподобатися» всім пошуковим системам (спосіб розмітки можна вибрати в адмінці). Наприклад:
Важливий модуль, який повинен бути на сайті – модуль фільтрації товарів. Рекомендую використовувати такі модулі: Mega Filter PLUS и FilterVier_SEO. Більш функціональний – модуль FilterVier_SEO.
Модуль FilterVier_SEO — фільтр товарів на сторінках сайту в категоріях, брендах, акціях для версій OpenCart 2.x.x і 3.0.x, з повним керуванням під SEO. У модуля дуже круті настройки:
Завдяки даним модулів ви зможете максимально швидко і просто оптимізувати свій сайт. Якщо ви хочете додаткові модулі, то рекомендую почитати цю статтю.