Как создать SEO-дружественную ссылку для пользовательских, динамически генерируемых страниц в Opencart?

Как создать SEO-дружественную ссылку для пользовательских, динамически генерируемых страниц в Opencart?

20.11.2019 04:07:50 Просмотров 44 Источник

Я использую платформу Opencart 2.0

У меня есть контроллер, который называется happy_hours.РНР там я перебираю продукты и категории на текущий час. Для категорий я создаю такие ссылки

'href'  => $this->url->link('product/happy_hours', 'id='   . $category['category_id'])

В самом .tplфайл ссылка выглядит так:

index.php?route=product/happy_hours&id=65

В таблицу oc_url_aliasданных oc_url_alias я добавил запись для SEO-ссылки на 'happy_hours' like

query = product/happy_hours
keyword = happyhours

Теперь я могу получить доступ прямо сейчас domain.com/happyhours

Но как я могу создать такую SEO ссылку для категорий?

domain.com/happyhours/categoryname

Обновление

исправление опубликовано

У вопроса есть решение - Посмотреть?

Ответы - Как создать SEO-дружественную ссылку для пользовательских, динамически генерируемых страниц в Opencart? / How do I create an SEO-friendly link for custom, dynamically generated pages in Opencart?

Является ответом!
Ivan

20.11.2019 05:14:34

кое-как удается это делать

в soe_url.php контроллер

elseif ($key == 'id') {

                $categories[] = $value;

                foreach ($categories as $category) {
                    $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "url_alias WHERE `query` = 'happy_hour_id=" . (int)$category . "'");

                    if ($query->num_rows && $query->row['keyword']) {
                        $url .= '/' . $query->row['keyword'];
                    } else {
                        $url = '';

                        break;
                    }
                }
                    unset($data[$key]);
            }

в базе данных url_alias

query = happy_hour_id=65
keyword = happyhour/category name

в финале

domain.com/happyhour/category name
Закрыть X