Поисковый фильтр

Автор Сообщение

Удалено

#1/28.05.2013 15:06

Насколько я понимаю , фильтр стран , городов, населенных пунктов можно регулировать вручную. Но на всякий случай уточню. Предположим я знаю где находится список. Если будет необходимость добавлять населенные пункты, например для города добавить райцентр.  Если я добавлю в нужное место, он сразу станет рабочим ?

Не нужно кроме добавления еще что-то править ?

Сообщения:

Cmsworks

Булат
#2/28.05.2013 16:16
0

Администраторы

Карма: +680

Не нужно, списки городов должны обновиться автоматически.

Сообщения: 2400

Andrey40

#3/15.05.2015 19:46
0

Аватар

Пользователи

Карма: +1

Какой нужно хук прописать чтобы результаты поисков выводились здесь же, на главной, а не переходили на каталог проектов?

Сообщения: 5

Lion

Суровый модератор
#4/16.05.2015 11:15
0

Модераторы

Карма: +50

#9438 Andrey40:

Какой нужно хук прописать чтобы результаты поисков выводились здесь же, на главной, а не переходили на каталог проектов?

Смотрите в файле projects/projects.index.php там есть хук projects.index.query. Через него добавляете выборку по фильтру как в projects/inc/projects.list.php, к примеру:

if (!empty($c))
{
	$catsub = cot_structure_children('projects', $c);
	$where['cat'] = "item_cat IN ('" . implode("','", $catsub) . "')";
}

if (!empty($type))
{
	$where['type'] = "item_type=" . $type;
}

if (!empty($sq))
{
	$words = explode(' ', $sq);
	$sqlsearch = '%'.implode('%', $words).'%';

	$where['search'] = "(item_title LIKE '".$db->prep($sqlsearch)."' OR item_text LIKE '".$db->prep($sqlsearch)."')";
}

// Extra fields
foreach ($cot_extrafields[$db_projects] as $exfld)
{
	$shfld[$exfld['field_name']] = cot_import_extrafields($exfld['field_name'], $exfld, 'G', $shfld[$exfld['field_name']]);
	
	if(!empty($shfld[$exfld['field_name']]))
	{
		$where[$exfld['field_name']] = "item_".$exfld['field_name']." LIKE '%".$shfld[$exfld['field_name']]."%'";
	}
}

Плюс через хук projects.index.searchtags нужно будет изменить экшн на index.

$t_pr->assign(array(
	'SEARCH_ACTION_URL' => cot_url('index', '', '', true),
));

Показал только общую схему. Додумывайте, смотрите как это сделано в projects/inc/projects.list.php

Сообщения: 497