Настройка ЧПУ для OpenCart — обязательная SEO настройка
Здравствуйте, дорогие читатели. Мы продолжаем нашу серию статей, посвященных созданию интернет-магазина на системе управления контентом OpenCart. Сегодня мы с вами поговорим о том, как правильно настроить ЧПУ для того, чтобы ваш сайт лучше воспринимался поисковыми машинами. Также я расскажу, как установить модуль для ЧПУ, если он у вас не установлен по умолчанию.
Что такое ЧПУ
Человеку понятный урл (ЧПУ) – это web-адрес, который легко воспринимается человеком. Урл – это жаргонное наименование URL, если сказать простым языком, то это простая ссылка на какой-либо ресурс интернета. Если вы зайдёте, например, на какой-либо популярный интернет-магазин электроники и перейдёте в категорию с мобильными телефонами, то вы увидите, что адрес сайта будет подобный этому: www.[магазин] .ru/catalog/phone/.
Если же вы зайдёте в какой-нибудь раздел вашего сайта, то вы увидите, что в адресной строке содержится набор каких-то непонятных символов, например: www.(ваш_сайт) .ru/index.php?route=product/category&path=20.
Во-первых, именно такие адреса поисковые роботы не любят, да и людям не совсем понятны. Во-вторых, при обращении к различным товарам вашего магазина в системе могут создаваться так называемые «дубль страницы». Это означает, что на одну и ту же страницу можно попасть по разным адресам, поэтому поисковая система будет размазывать «ранг» этой страницы по каждому из дублей. Это плохо будет влиять на позиционирование вашего магазина в результатах поисковой выдачи. Чтобы от этого избавиться, нужно: во-первых сформировать нормальные ЧПУ-адреса ваших товаров, а во-вторых избавиться от дублей.
Установка модуля для ЧПУ
Для того чтобы избежать всех вышеперечисленных проблем, вам нужно установить специальный модуль SeoPro. Данный модуль уже предустановлен в русской версии OpenCart, которую мы устанавливали в статье «Установка CMS для интернет-магазина OpenCart на хостинг». Данная версия была скачана из официального русскоязычного сайта myopencart. Если у вас стоит версия, скачанная из данного сайта, то вы можете смело пропустить этап установки модуля и перейти сразу же к его настройке. Если же у вас установлена другая сборка OpenCart, то следуйте дальнейшей инструкции.
Перед тем, как устанавливать модуль, обязательно сделайте бекап. О том, как делать бекап вы можете прочитать в ЭТОЙ СТАТЬЕ.
- Скачиваем модуль по данной ссылке. НО лучше оплатить работу автора и купить модуль здесь не нарушая авторских прав. Плюс покупки еще в том, что вы всегда можете получать актуальные обновления.
- Далее распакуйте скачанный архив у себя на компьютере. Зайдите в FileZilla и замените файл seo_pro.php в папке catalog/controller/common.
- На данном этапе вам нужно зайти в управление базами данных вашего хостинга. Для этого перейдите во вкладку «Базы данных» и нажмите кнопку «phpMyAdmin». Откроется окно, в котором нужно ввести логин и пароль такие же, как для доступа к вашему хостингу.
- Далее нажмите на название вашей базы данных в левой части экрана. Затем нажмите на вкладку «SQL» и скопируйте в текстовое поле все содержимое файла «sql.txt», который находится в архиве с модулем. Нажмите кнопку «Вперед».
Всё, модуль установлен. Осталось только включить его и произвести настройку.
Включение ЧПУ и его настройка
Для того чтобы включить данный модуль, вам нужно зайди в административную панель вашего интернет-магазина.
Затем вам нужно нажать на вкладку «Система» и выбрать пункт «Настройки». В открывшимся окне, напротив вашего магазина, нажмите кнопку «Изменить».
В открывшемся окно нажмите на вкладку «Сервер». В ней отображаются все настройки, которые связаны непосредственно с сервером.
Найдите пункт «Включить ЧПУ» и нажмите кнопку «Да». В пункте «Тип ЧПУ» выберите «SeoPro». ЧПУ по умолчанию использовать не рекомендуется, потому что оно имеет очень много багов и недоработок. После этого нажмите кнопку «Сохранить» в правом верхнем углу экрана.
На следующем этапе вам нужно включить файл «htaccess». Делается это очень просто. Зайдите в FileZilla, найдите файл «.htaccess.txt» и переименуйте его на «.htaccess».
Для того чтобы ЧПУ корректно отображалось, у каждой категории должно быть заполнено поле «SEO URL». Именно оно будет подставляться в человеко-понятный адрес. Также это касается и товаров. То есть для каждого товара обязательно должна быть указана главная категория и заполнено поле «SEO URL». Даже если урл будет указан для товара, но категория, в которой он содержится, будет без заполненного поля «Seo Url», то ЧПУ всё равно не будет работать. Также важным моментов является то, что все URL должны быть уникальными для каждого товара. Еще данный модуль позволяет избежать дублирующихся страниц.
Теперь вы можете зайти на свой магазин и проверить, как работает ЧПУ для разных категорий и товаров. В случае если ЧПУ не работает, и в адресной строке вы видите набор каких-нибудь символов, вам следует очистить кэш.
Для этого через FileZilla вам нужно зайти в папку system/cache и удалить из неё всё, кроме файла «index.html».
Заключение
Как вы можете видеть, восприятие таких адресов намного лучше как для человека, так и для поисковых машин. Установка модуля не занимает много времени и является довольно простой.
Здравствуйте Николай!
Делаю все по инструкции, но после того как копирую текст в базу данных в вкладку «SQL»
нажимаю «вперед», мне выдает такую ошибку.
Ошибка
SQL запрос:
INSERT INTO url_alias (query, keyword) VALUES (‘common/home’, »);
Ответ MySQL: Документация
#1146 — Table ‘vovansin_mehizd9.url_alias’ doesn’t exist
Привет, Владимир. У тебя скорее всего опечатка в первой строчке. Вторым параметром должны быть пустые одинарные кавычки.
Должно быть так: INSERT INTO url_alias (query, keyword) VALUES (‘common/home’, »);
Спасибо! У меня все работает. Но обратил внимание На HTML-тег H1,HTML-тег Title есть смысл вставлять ЯНДЕКС слова или только сюда Мета-тег Keywords,Мета-тег Description. Спасибо!
Вообще достаточно Тайтл и Дескрипшн.
Спасибо!
Спасибо за совет, но не помогло. Поставил ocstore 1.5.5.1.2 теперь все Ок!
Добрый день Николай.Никак не пойму на что «замените файл seo_pro .php в папке catalog/controller/common.» Эта папка загружена на сервер или это та, что загружена на комп? У меня на WebFTP загружен seo_url.php
А когда дальше я копирую содержимое файла «sql.txt» и вставляю его во вкладку SQL. Мне выдает вот что
SQL запрос:
INSERT INTO url_alias (query, keyword) VALUES (‘common/home’, »);
Ответ MySQL: Документация
#1146 — Table ‘pantera165_tkan1 .url_alias’ doesn’t exist
Такая же ошибка, что и у Владимира. Как дальше поступить? Или ставить ocstore 1.5.5.1.2?
Возможно из-за этого у меня в настройках OpenCart нет раздела Включить ЧПУ
Либо вы тоже допустили ошибку, либо не парьтесь и поставьте ocstore.
Николай добрый день, подскажите поле SEO URL при каждом добавлении товара заполнять на каком языке? на русском, или же по русски английскими буквами?)) понятно что это будет название товара, а вот с языком не ясно.
Добрый. Русские слова английскими буквами. Но я вставляю числа, так проще. У меня у каждого товара артикул например 000038 и т.д. Вот я эти артикулы и использую для урлов.
спасибочки, теперь ясно)
Николай, у меня еще вопрос :
не открывается база mysql
пишет :Невозможно подключиться к серверу MySQL
что делать ?
Причин может быть очень много, я ничем не могу помочь. Если совсем тяжко в этом направлении, то доверьте это профессионалам. Я кстати так и делаю)
Николай все сделал как надо без ошибок.
Скачал, распаковал, залил сюда catalog/controller/common, скопировал содержимое и поставил в БД , выдает такую же хрень Ошибка
SQL-запрос:
INSERT INTO url_alias( query, keyword )
VALUES (
‘common/home’, »
);
Ответ MySQL: Документация
#1146 — Table ‘krab-chkof.url_alias’ doesn’t exist
Не работает.
ставить ocstore 1.5.5.1 не хочу т.к. уже магаз наполнен товарами и прописываю ЧПУ к товарам, но статьи не получается ЧПУ.
Денис, если бы я был кодером, я бы мог вам помочь, но я таковым не являюсь(( Данная статья писалась по ходу действий и все работало. Попробуйте проще обратиться к фрилансерам. Вам это за 300-500 р сделают. Например тут https://kakzarabativat.ru/soveti/gde-najti-vremennogo-ispolnitelya-ili-rabotnika/
Вам необходимо указать префикс базы данных -к примеру по стандарту префикс oc_ — тогда запрос будет выглядеть INSERT INTO oc_url_alias( query, keyword )
VALUES (
‘common/home’, »
);
И все заработает!
Спасибо за совет. Помогли!
Здравствуйте! Я нашла ответ главной проблемы-ошибки. Надо написать префикс базы данных.
То есть при ошибке на INSERT INTO url_alias (query, keyword) VALUES (‘common/home’, »);
взять префикс (у меня, например он ос_)
Получится INSERT INTO oc_url_alias (query, keyword) VALUES (‘common/home’, »);
Повторить с остальными строками.
Приветствую! Кроме SEO оптимизации, ещё как то раскручивали свой магазин? Контекстная реклама, ссылочная, на целевых сайтах и т.п., или так все работает? Спрашиваю т.к. сам на этой стадии, стоит вкладывать деньги?
Ссылки нет, только из социальных сетей с городских пабликов и групп. Контекстную пробовал, результаты сомнительны были, но были. На тот момент в контекстной рекламе я был «деревянным», может поэтому выхлоп был небольшой.
Добрый день, Николай.
все сделал как написано, шаг за шагом, но в админке если только чекед «Включить SEO URL», других полей как у Вас на скрине(«включить чпу», «тип чпу» и тд) нет..
Не подскажете в чем может быть проблема?
версия opencart 1.5.5.1
Даже не знаю, честное слово. Я сам не кодер, делали все по скринам.
Добрый день ! Все делаю как вы пишите, вроде все получается, но на конце ссылки выходит вот что turmalinovaya_produkciya%20/ и то не везде ! Я отключила категории, где один переход все нормально, а где подкатегория то вставляется вот эти 20% .. в чем причина ? Буду благодарна за помощь !
Здравствуйте. Не знаю, в чем может быть проблема((( Но % это пробел, а 20 даже без понятия…
% — это не пробел!
%20 — это байт со значением 20 (код какого-то русского символа)
Здравствуйте!
Елизаdета, у меня такая же проблема, не открывает страницу категории и выдаёт ошибку %20 Кстате Николай, название страницы у меня было из двух слов на анг. языке и где пробел между словами я забыл вставить чёрточку. Вставив её ничего не поменялось таже проблема осталась.
В чём причина и кто может подсказать? Буду весьма признателен
Все сделала как Вы прописали и все равно ссылки остались такого вида: /index.php?route=product/product&path=129&product_id=265
Статья писалась, когда параллельно проделывалась работа, значит вы что-то не правильно сделали. Обратитесь к специалистам на форум опенкарта, там вам очень дешево помогут все это сделать.
«Для этого через FileZilla вам нужно зайти в папку system/cache и удалить из неё всё, кроме файла «index.html».»
OcStore 2.1.0.2.1 у меня кеш находится по пути /system/storage/cache
Странная проблема.
В категориях и статьях такого нет, но в товарах URL сами дописываются. Например- я прописал iphone-6. Когда открывается страничка с товаром к записи прибавляется что то типа .#kgk094Q63nj
вот в чпу вместо пробула лупит «_», это не есть хорошо.
Как изменить чтоб вместо пробела добавляло «-«?
Так же для экономии времени и более быстрого редактирования товаров и категорий, рекомендуем использовать OpenCart Quick Editor.