Основной курс по Joomla
0 Пользователей и 1 Гость просматривают эту тему.
  • 0 Ответов
  • 525 Просмотров
*

InMix

  • Новичок
  • *
  • 1
  • 0
Проблема с URL в Domus Organizer
« : 17.04.2015, 19:28:52 »
Здравствуйте уважаемые,

Делаю сайт агентства недвижимости на Joomla 3.4, с компонентом «Domus Organizer Free 3.6.1 http://extensions.joomla.org/extensions/extension/vertical-markets/real-estate/domus-organizer6.1» и столкнулся с такой проблемой:

Когда добавляешь объект недвижимости на сайт, URL объекта получается такого вида «сайт.ru/1003-novostrojki-1k/7--1---45-2.html»:

«1003-novostrojki-1k» : это как бы раздел к нему добавляется видимо ид раздела «1003» ковырял код продукта чтобы убрать это ид из адреса но так и не нашел как, а главное в каком файле (слаб в программирование)

И та же беда с адресом самого объекта «7--1---45-2» - Тут поковыряв бд удалось выяснить что первое число это ид объявления (хотя при добавлении объекта я указывал другой ид вида: 0003) 2 следующих пробела идут из таблиц: pr_id_yards и pr_id_users, дальше в таблицу pr_alias записывается остальной адрес (схожий с URL объекта, видимо тоже берет какие-то параметры из других таблиц) тем самым формируя сам адрес.

Вот скрин таблицы:


Нужна ваша помощь чтобы убрать из адреса лишние атрибуты, оставить допустим только ид объекта и все, а из категории убрать ид категории и оставить только её название…
Покопался в коде на предмет обнаружения того же самого поля pr_alias и в файле components\com_domus\models\properties.php, обнаружил такой код:

Код
class DomusModelProperties extends F0FModel
{
private $alreadyFiltered = false;

public function buildQuery($overrideLimits = false)
{
$db    = $this->getDbo();

$query = $db->getQuery(true)
->select('prop.*, cat_name, ty_name, to_descr, di_descr, st_descr, ag_name')
->select('cu_company_name, cu_name, cu_surname')
->select('CASE WHEN CHAR_LENGTH(pr_alias) THEN CONCAT_WS(":", id_properties, pr_alias) ELSE id_properties END as slug')
->select('CASE WHEN CHAR_LENGTH(cat_alias) THEN CONCAT_WS(":", id_categories, cat_alias) ELSE id_categories END as catslug')
->from('#__domus_properties prop')
                    ->innerJoin('#__domus_agencies ON pr_id_agencies = id_agencies')
->innerJoin('#__domus_types ON id_types = pr_id_types')
->innerJoin('#__domus_categories ON id_categories = pr_id_categories')
->innerJoin('#__domus_towns ON id_towns = pr_id_towns')
->innerJoin($db->qn('#__domus_districts').' ON '.$db->qn('id_districts').' = '.$db->qn('pr_id_districts'))
->leftJoin('#__domus_street_type ON id_street_type = pr_id_street_type');

if($this->getState('getFirstImages', 0))
{
$query->select('images.*')
 ->innerJoin('#__domus_images images ON img_id_properties = id_properties')
 ->where('img_published = 1')
 ->where('images.ordering = 1');
}

$this->internalSearch($query);
$this->publicSearch($query);

Предполагаю что он отвечает за формирование URL, но так как сам в этом к сожалению не силен, прошу вашей помощи =(

PS: Возможно кто то уже работал с этим компонентом и сталкивался с подобной проблемой
PSS: На сайте и форуме разработчика не нашел никакой подобной информации, оставить ему тикет с вопросом так же не имею возможности, так как вопросы могут оставлять только владельцы платных версий(


Буду рад любым советам и предложениям по решению данного вопроса, спасибо
« Последнее редактирование: 18.04.2015, 00:41:27 от InMix »