Я использую версию Opencart 2.x и магазин, установленный в / в подкаталоге. Я знаю, как включить seo_url (.htaccess.txt -> .htaccess, установить RewriteBase в / shop / и включить URL-адреса SEO в панели администратора).
Seo работает, и мои ссылки, такие как information/information_id=1
изменены на /faq
и т. Д.
Проблема в том, что если я добавлю в записи таблицы url_alias: inforamtion/contact = contact
– этот URL-адрес работает, но на сайте он по-прежнему выглядит как /shop/index.php?route=information/contact
не как /shop/contact
Я предположил, что это должно быть изменено автоматически, но нет. Все ссылки сайта на товар, категории и информационные страницы были изменены, но добавленные мной вручную – НЕ. Зачем?
PS: Я могу изменить его в коде, но думаю, что это нехорошее решение. Предположим, что существует правильный способ делать то, что мне нужно.
Я не уверен, что у вас уже есть ответ на ваш вопрос, но я все равно оставлю его здесь, так как мне понадобилось пару дней, чтобы понять это.
Чтобы перейти от /index.php?route=information/contact
к /index.php?route=information/contact
/contact
, вам требуется два шага
(Вероятно, вы уже сделали шаг 1)
INSERT INTO url_alias (query, keyword) VALUES ('common/home', ''); INSERT INTO url_alias (query, keyword) VALUES ('account/wishlist', 'wishlist'); INSERT INTO url_alias (query, keyword) VALUES ('account/account', 'my-account'); INSERT INTO url_alias (query, keyword) VALUES ('checkout/cart', 'shopping-cart'); INSERT INTO url_alias (query, keyword) VALUES ('checkout/checkout', 'checkout'); INSERT INTO url_alias (query, keyword) VALUES ('account/login', 'login'); INSERT INTO url_alias (query, keyword) VALUES ('account/logout', 'logout'); INSERT INTO url_alias (query, keyword) VALUES ('account/order', 'order-history'); INSERT INTO url_alias (query, keyword) VALUES ('account/newsletter', 'newsletter'); INSERT INTO url_alias (query, keyword) VALUES ('product/special', 'specials'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/account', 'affiliates'); INSERT INTO url_alias (query, keyword) VALUES ('checkout/voucher', 'gift-vouchers'); INSERT INTO url_alias (query, keyword) VALUES ('product/manufacturer', 'brands'); INSERT INTO url_alias (query, keyword) VALUES ('information/contact', 'contact-us'); INSERT INTO url_alias (query, keyword) VALUES ('account/return/insert', 'request-return'); INSERT INTO url_alias (query, keyword) VALUES ('information/sitemap', 'sitemap'); INSERT INTO url_alias (query, keyword) VALUES ('account/forgotten', 'forgot-password'); INSERT INTO url_alias (query, keyword) VALUES ('account/download', 'downloads'); INSERT INTO url_alias (query, keyword) VALUES ('account/return', 'returns'); INSERT INTO url_alias (query, keyword) VALUES ('account/transaction', 'transactions'); INSERT INTO url_alias (query, keyword) VALUES ('account/register', 'create-account'); INSERT INTO url_alias (query, keyword) VALUES ('product/compare', 'compare-products'); INSERT INTO url_alias (query, keyword) VALUES ('product/search', 'search'); INSERT INTO url_alias (query, keyword) VALUES ('account/edit', 'edit-account'); INSERT INTO url_alias (query, keyword) VALUES ('account/password', 'change-password'); INSERT INTO url_alias (query, keyword) VALUES ('account/address', 'address-book'); INSERT INTO url_alias (query, keyword) VALUES ('account/reward', 'reward-points'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/edit', 'edit-affiliate-account'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/password', 'change-affiliate-password'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/payment', 'affiliate-payment-options'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/tracking', 'affiliate-tracking-code'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/transaction', 'affiliate-transactions'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/logout', 'affiliate-logout'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/forgotten', 'affiliate-forgot-password'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/register', 'create-affiliate-account'); INSERT INTO url_alias (query, keyword) VALUES ('affiliate/login', 'affiliate-login');
Где на фронте находятся сторонние URL-адреса, отличные от SEO (те, у которых есть index.php? Route = in them)? Если вы скопировали / вставляли какие-либо в разметку в своих шаблонах, они останутся такими, какими они есть. Opencart также имеет различные переадресации и вещи, жестко закодированные в его файлы контроллеров, которые могут перенаправлять на такой URL-адрес. Таким образом, это зависит от того, где эти ссылки находятся на вашем сайте.