hello,
I have checked on the google about making seo friendly and i apply them but i cannot get the solution of my problem
I m using OC 2.3.0.2 and my website 45 url are not seo friendly.
Sr.no. URLs
1 - http://cakegift.in/index.php?route=information/contact
2 - http://cakegift.in/index.php?route=account/account
3 - http://cakegift.in/index.php?route=account/register
4 - http://cakegift.in/index.php?route=account/login
5 - http://cakegift.in/index.php?route=account/wishlist
6 - http://cakegift.in/index.php?route=checkout/checkout
7 - http://cakegift.in/index.php?route=common/home
8 - http://cakegift.in/index.php?route=prod ... mp;path=64
9 - http://cakegift.in/index.php?route=prod ... path=64_86
10 - http://cakegift.in/index.php?route=prod ... path=64_87
11 - http://cakegift.in/index.php?route=prod ... path=64_88
12 - http://cakegift.in/index.php?route=prod ... uct_id=101
13 - http://cakegift.in/index.php?route=prod ... duct_id=98
14 - http://cakegift.in/index.php?route=prod ... duct_id=97
15 - http://cakegift.in/index.php?route=prod ... duct_id=96
16 - http://cakegift.in/index.php?route=prod ... duct_id=95
17 - http://cakegift.in/index.php?route=prod ... duct_id=94
18 - http://cakegift.in/index.php?route=prod ... duct_id=93
19 - http://cakegift.in/index.php?route=prod ... duct_id=92
20 - http://cakegift.in/index.php?route=prod ... duct_id=91
21 - http://cakegift.in/index.php?route=prod ... duct_id=90
22 - http://cakegift.in/index.php?route=prod ... duct_id=89
23 - http://cakegift.in/index.php?route=prod ... duct_id=88
24 - http://cakegift.in/index.php?route=prod ... duct_id=86
25 - http://cakegift.in/index.php?route=prod ... duct_id=85
26 - http://cakegift.in/index.php?route=prod ... duct_id=84
27 - http://cakegift.in/index.php?route=prod ... duct_id=83
28 - http://cakegift.in/index.php?route=prod ... duct_id=82
29 - http://cakegift.in/index.php?route=prod ... duct_id=81
30 - http://cakegift.in/index.php?route=prod ... duct_id=80
31 - http://cakegift.in/index.php?route=prod ... duct_id=79
32 - http://cakegift.in/index.php?route=prod ... duct_id=78
33 - http://cakegift.in/index.php?route=prod ... duct_id=77
34 - http://cakegift.in/index.php?route=prod ... duct_id=73
35 - http://cakegift.in/index.php?route=prod ... duct_id=63
36 - http://cakegift.in/index.php?route=prod ... duct_id=57
37 - http://cakegift.in/about_us
38 - http://cakegift.in/index.php?route=account/return/add
39 - http://cakegift.in/index.php?route=information/sitemap
40 - http://cakegift.in/index.php?route=product/manufacturer
41 - http://cakegift.in/index.php?route=account/voucher
42 - http://cakegift.in/index.php?route=affiliate/account
43 - http://cakegift.in/index.php?route=product/special
44 - http://cakegift.in/index.php?route=account/order
45 - http://cakegift.in/index.php?route=account/newsletter
How to make it seo friendly url, help me i applied all solution if anyone know then help me.
Thank You.
Hi sayedsrkkhan,
You need to enable SEO URL from setting in admin panel. Path to enable - System->Setting->Edit Store then click on "Server" tab . There you can enable "Use SEO URLs" to yes.
After enabled the Use SEO URL you have to enter seo-keywords for each category and product.
Hope it will help to make seo friendly URL.
Thanks
You need to enable SEO URL from setting in admin panel. Path to enable - System->Setting->Edit Store then click on "Server" tab . There you can enable "Use SEO URLs" to yes.
After enabled the Use SEO URL you have to enter seo-keywords for each category and product.
Hope it will help to make seo friendly URL.
Thanks
Please try this code.
I'm using Opencart version 1.5.5.1 and this is the exact code that worked for me:
I'm using Opencart version 1.5.5.1 and this is the exact code that worked for me:
Code: Select all
<?php
class ControllerCommonSeoUrl extends Controller {
/* SEO Custom URL */
private $url_list = array (
'common/home' => '',
'checkout/cart' => 'cart',
'account/register' => 'register',
'account/wishlist' => 'wishlist',
'checkout/checkout' => 'checkout',
'account/login' => 'login',
'product/special' => 'special',
'affiliate/account' => 'affiliate',
'checkout/voucher' => 'voucher',
'product/manufacturer' => 'brand',
'account/newsletter' => 'newsletter',
'account/order' => 'order',
'account/account' => 'account',
'information/contact' => 'contact',
'account/return/insert' => 'return',
'information/sitemap' => 'sitemap',
);
/* SEO Custom URL */
public function index() {
// Add rewrite to url class
if ($this->config->get('config_seo_url')) {
$this->url->addRewrite($this);
}
// Decode URL
if (isset($this->request->get['_route_'])) {
$parts = explode('/', $this->request->get['_route_']);
foreach ($parts as $part) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE keyword = '" . $this->db->escape($part) . "'");
if ($query->num_rows) {
$url = explode('=', $query->row['query']);
if ($url[0] == 'product_id') {
$this->request->get['product_id'] = $url[1];
}
if ($url[0] == 'category_id') {
if (!isset($this->request->get['path'])) {
$this->request->get['path'] = $url[1];
} else {
$this->request->get['path'] .= '_' . $url[1];
}
}
if ($url[0] == 'manufacturer_id') {
$this->request->get['manufacturer_id'] = $url[1];
}
if ($url[0] == 'information_id') {
$this->request->get['information_id'] = $url[1];
}
} else {
$this->request->get['route'] = 'error/not_found';
}
}
/* SEO Custom URL */
if ( $_s = $this->setURL($this->request->get['_route_']) ) {
$this->request->get['route'] = $_s;
}/* SEO Custom URL */
if (isset($this->request->get['product_id'])) {
$this->request->get['route'] = 'product/product';
} elseif (isset($this->request->get['path'])) {
$this->request->get['route'] = 'product/category';
} elseif (isset($this->request->get['manufacturer_id'])) {
$this->request->get['route'] = 'product/manufacturer/info';
} elseif (isset($this->request->get['information_id'])) {
$this->request->get['route'] = 'information/information';
}
if (isset($this->request->get['route'])) {
return $this->forward($this->request->get['route']);
}
}
}
public function rewrite($link) {
$url_info = parse_url(str_replace('&', '&', $link));
$url = '';
$data = array();
parse_str($url_info['query'], $data);
foreach ($data as $key => $value) {
if (isset($data['route'])) {
if (($data['route'] == 'product/product' && $key == 'product_id') || (($data['route'] == 'product/manufacturer/info' || $data['route'] == 'product/product') && $key == 'manufacturer_id') || ($data['route'] == 'information/information' && $key == 'information_id')) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE `query` = '" . $this->db->escape($key . '=' . (int)$value) . "'");
if ($query->num_rows) {
$url .= '/' . $query->row['keyword'];
unset($data[$key]);
}
} elseif ($key == 'path') {
$categories = explode('_', $value);
foreach ($categories as $category) {
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE `query` = 'category_id=" . (int)$category . "'");
if ($query->num_rows) {
$url .= '/' . $query->row['keyword'];
}
}
unset($data[$key]);
}
/* SEO Custom URL */
if( $_u = $this->getURL($data['route']) ){
$url .= $_u;
unset($data[$key]);
}/* SEO Custom URL */
}
}
if ($url) {
unset($data['route']);
$query = '';
if ($data) {
foreach ($data as $key => $value) {
$query .= '&' . $key . '=' . $value;
}
if ($query) {
$query = '?' . trim($query, '&');
}
}
return $url_info['scheme'] . '://' . $url_info['host'] . (isset($url_info['port']) ? ':' . $url_info['port'] : '') . str_replace('/index.php', '', $url_info['path']) . $url . $query;
} else {
return $link;
}
}
/* SEO Custom URL */
public function getURL($route) {
if( count($this->url_list) > 0) {
foreach ($this->url_list as $key => $value) {
if($route == $key) {
return '/'.$value;
}
}
}
return false;
}
public function setURL($_route) {
if( count($this->url_list) > 0 ){
foreach ($this->url_list as $key => $value) {
if($_route == $value) {
return $key;
}
}
}
return false;
}/* SEO Custom URL */
}
?>
Last edited by straightlight on Tue Feb 25, 2020 10:07 pm, edited 1 time in total.
Who is online
Users browsing this forum: Semrush [Bot] and 16 guests