Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Общие вопросы » Как сделать вывод новостей тегом custom с фильтром по 2м дополнительным полям?

Как сделать вывод новостей тегом custom с фильтром по 2м дополнительным полям?


     16.05.2019    Все вопросы » Общие вопросы    1320

вопрос
Добрый день, как можно вывести новости тегом custom по 2-м значениям из доп. полей. В коробке есть вывод по нескольким полям, но там действует схема - ИЛИ. Какой есть вариант?

Ответил: nowheremany


modules/functions.php
найти
	if( preg_match( "#xfields=['\"](.+?)['\"]#i", $param_str, $match ) ) {
		
		$match[1] = explode (',', $match[1]);

		$temp_array = array();

		foreach ($match[1] as $value) {

			$value = @$db->safesql ( htmlspecialchars ( strip_tags ( stripslashes ( trim ( $value ) ) ), ENT_QUOTES, $config['charset'] ) );
			$temp_array[] = "p.xfields LIKE '%{$value}%'";

		}		
		
		$where[] = "(".implode(' OR ', $temp_array).")";
		
		
	}


ниже вставить

	if( preg_match( "#xfieldsAnd=['\"](.+?)['\"]#i", $param_str, $match ) ) {
		
		$match[1] = explode (',', $match[1]);

		$temp_array = array();

		foreach ($match[1] as $value) {

			$value = @$db->safesql ( htmlspecialchars ( strip_tags ( stripslashes ( trim ( $value ) ) ), ENT_QUOTES, $config['charset'] ) );
			$temp_array[] = "p.xfields LIKE '%{$value}%'";

		}		
		
		$where[] = "(".implode(' AND ', $temp_array).")";
		
		
	}


В шаблоне использовать {custom ... xfieldsAnd=""}

Если поиск нужен по разным значениям полей разных полей возможно сделать так: В шаблоне использовать {custom ... xfieldsAnd="xf1|значение1,xf2|значение2"}
Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх