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

Как сделать отдельный поиск среди стандартных тегов DLE 14 по названиям тега?


     23.04.2020    Все вопросы » Общие вопросы по PHP    878

вопрос
Есть более 15К тегов, по ним нужно сделать отдельный быстрый поиск, чтобы в результате получить список тегов (не постов) соответствующие запросу. К примеру у нас есть теги "сериалы про любовь", "фильмы про любовь" и т.д. При вводе в поисковую форму "любовь" должен быть результат поиска в виде всех тегов где встречается слово "любовь".

Ответа пока нет


1 комментарий

TeraMoune
Эксперт

TeraMoune - 23 апреля 2020 11:50 -

Input поле для ввода текста

<input type="text" name="tags" id="tags" value="" autocomplete="off">

JS код для инициализации Autocomplete

$( '#tags' ).autocomplete({
	source: function( request, response ) {
		$.getJSON( dle_root + 'engine/ajax/controller.php?mod=find_tags&user_hash=' + dle_login_hash, {
			term: extractLast( request.term )
		}, response );
	},
	search: function() {
		var term = extractLast( this.value );
		if ( term.length < 3 ) {
			return false;
		}
	},
	focus: function() {
		return false;
	},
	select: function( event, ui ) {
		var terms = split( this.value );
		terms.pop();
		terms.push( ui.item.value );
		terms.push( '' );
		this.value = terms.join( ', ' );
		return false;
	}
});


Вспомогательные js функции

	function split( val ) {
		return val.split( /,\s*/ );
	}
	
	function extractLast( term ) {
		return split( term ).pop();
	}

Тестовый репозиторий установки плагинов: teramoune

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

наверх