Mặc định trong Opencart 2.0, khi bạn vào một danh mục sản phẩm sau đó click vào sản phẩm cần xem thì bạn sẽ thấy URL sẽ rất dài và có dạng:
http://tendomain/danhmuc-cha/danhmuc-con/ten-san-pham
Đây là một URL dài và không tốt cho SEO. Vậy làm cách nào để rút ngắn URL để tốt cho SEO, dạng như:
http://tendomain/danhmuc-cha/danhmuc-con/ten-san-pham
Để làm được điều đó, ta tiến hành như sau:
Vào file catalog/controller/product/category.php tìm đến đoạn code sau:
$data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'name' => $result['name'], 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, $this->config->get('config_product_description_length')) . '..', 'price' => $price, 'special' => $special, 'tax' => $tax, 'minimum' => $result['minimum'] > 0 ? $result['minimum'] : 1, 'rating' => $result['rating'], 'href' => $this->url->link('product/product','path=' . $this->request->get['path'].'&product_id=' . $result['product_id'] . $url) );
Sau đó bạn xóa đoạn
&path=' . $this->request->get['path'] . '
Rồi lưu lại là xong.
Anh cho em hỏi, em đã xóa đoạn đó đi rồi nhưng vẫn không được. Trong file category.php nó cũng còn 1 đoạn có phần này “&path=’ . $this->request->get[‘path’] . ‘” đó là
if (isset($this->request->get[‘path’])) {
$url .= ‘&path=’ . $this->request->get[‘path’];
thì có xóa không? Thanks anh