Cotonti / Open Source PHP Content Management FrameworkContent Management Framework

Foren / National / Russian / Поиск по page.list

Kopusha
#1 14. Juni 2020, 13:13

Нужно сделать в page.list сортировку/поиск по дочерним категориям 

Использую функцию

function cot_page_selectcat($check, $name, $subcat = '', $hideprivate = true)
{
	global $structure;

	$structure['page'] = (is_array($structure['page'])) ? $structure['page'] : array();

	$result_array = array();
	foreach ($structure['page'] as $i => $x)
	{
		$display = ($hideprivate) ? cot_auth('page', $i, 'R') : true;
		if ($display && !empty($subcat) && isset($structure['page'][$subcat]))
		{
			$mtch = $structure['page'][$subcat]['path'].".";
			$mtchlen = mb_strlen($mtch);
			$display = (mb_substr($x['path'], 0, $mtchlen) == $mtch || $i === $subcat);
		}

		if ((!$is_module || cot_auth('page', $i, 'R')) && $i!='all' && $display)
		{
			$result_array[$i] = $x['tpath'];
		}
	}
	$result = cot_selectbox($check, $name, array_keys($result_array), array_values($result_array), true);

	return($result);
}

И в page.list.php

"SEARCH_CAT" => cot_page_selectcat($c, 'c'),
для всех page
или
"SEARCH_CAT_GUIDE" => cot_page_selectcat($c, 'c', 'guide'),

для категории 'guide'.
Но SEARCH_CAT_GUIDE дает мне 

<select name="c" tabindex="-1">
<option value=""> - - - </option>
	<option value="guide">Travel Questions &amp; Answers</option>
	<option value="spots">Travel Questions &amp; Answers / Photo Attractions</option>
	<option value="transport">Travel Questions &amp; Answers / Transport</option>
</select>

То есть вот то что выше у меня уже есть и работает в page.list.guide.tpl
Вопрос - Как переписать функцию что бы получить

<select name="c" tabindex="-1">
<option value=""> - - - </option>
<option value="guide">Travel Questions &amp; Answers</option>	
<option value="spots">Photo Attractions</option>
	<option value="transport">Transport</option>
</select>

 

Added 1 minute later:

Говоря проще я хочу избавиться от Travel Questions &amp; Answers /  в селекте - так как пользователь уже находится в 'guide' и понимает что ищет только по Travel Questions &amp; Answers, а поле селекта слишком длинное и неудобное для мобильного экрана.


Dieser Beitrag wurde von Kopusha (am 14. Juni 2020, 14:15, vor 10 Monate) bearbeitet