Настройки пользовательских компонентов Joomla

Мне нужен компонент для конкретного каталога, поэтому я заплатил за него одному фрилансеру. Как оказалось, он не очень хорош в своей работе, и мне дали компонент, который работает только частично. Самые большие проблемы — маршрутизатор, хлебные крошки и массив json для родительских категорий.

1. Маршрутизатор

в настоящее время он показывает только domain.com/menuitem/viewname?id=X. Есть 4 разных вида, которые выглядят так, как будто они не связаны вообще. в db каждое представление имеет свою собственную таблицу, как было запрошено, важными полями являются следующие:

Main Categories (root):
id, name, alias

General Categories:
id, name, alias, root_id

General Subcategories:
id, name, alias, cat_id

Detail:
id, name, alias, subcat_id[json array]

Я хотел бы, чтобы URL-адреса SEF выглядели так: domain.com/menuitem/root_alias/category_alias/subcategory_alias/detail_alias, но мне сказали, что это невозможно сделать таким образом. Я проверил документацию SEF на портале Joomla, но я не могу понять это (если это вообще возможно, а если нет, то какой будет хороший подход к SEO).

2. Панировочные сухари

Может быть, это вызвано маршрутизатором и отдельными представлениями, но они всегда показывают Home> Menuitem, но в mainmenu это только / alias, а в хлебных крошках это / alias / mainview. Я нашел, как добавить пользовательские хлебные крошки в путь на портале Joomla, но я не могу понять, как получить родительские элементы. Если бы было решение с SQL, я мог бы использовать его, было бы достаточно.

3. JSON массив в дБ

Я хотел бы изменить его на целочисленное значение и добавить новую таблицу subcategory_detail_xref, чтобы я мог легко находить элементы. Единственный способ сделать это сейчас — это использовать регулярные выражения в SQL, что я не считаю хорошей идеей. Я проверил учебники на портале Joomla, но это выглядит слишком сложно.

Любые идеи, ссылки на примеры или учебные пособия, которые могут помочь или решения высоко ценятся.

PS: Мой сайт работает на последней версии Joomla (3.5), поэтому, если есть решения, доступные только для 3.5+, это нормально, я не собираюсь понижать рейтинг

0

Решение

За исходным кодом маршрутизатора вы можете обратиться к com_content, он аналогичен вашему, в версии 3.5 маршрутизатор должен реализовывать интерфейс.

На сайте разработчиков Joomla нет подробного документа, com_content — это именно то, что вы можете узнать, чтобы получить его.

Хлебные крошки вы должны разработать аналог логики маршрутизатора

Таблица категорий должна расширять JNestedTable для многоуровневой древовидной структуры

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]