Поиск по актерам для киносайтов ucoz
827материалов
228тем на форуме
3004комментария
6159пользователей

Поиск по актерам для киносайтов ucoz


Не раз я сталкивался с такой проблемой, что заказчику необходимо было организовать поиск фильмов по актерам. Немного поразмыслив я написал простенький скрипт, который посредством технологий JavaScript (библиотека JQuery) из определенного поля берет имена актеров и превращает их в конструкцию, напоминающую теги. Скрипт будет работать в любом модуле, но так как чаще всего используют для киносайтов модуль load и news, сделал на их примере.

Как это работает? Скрипт получает из поля имена актеров, например Джеки Мэйсон, Энтони Дель Рио, Эбби Уатен, Пол Фицджералд, Том Ноуики, Одри Лэндерс, Нэйтан П. Кэри, Лин Шэй, Джеймс Мартин Келли, Дави Джон. Здесь все актеры разделены запятой, именно по этому знаку препинания скрипт будет разделять актеров и заносить в массив. Можно разделять по любому другому знаку, цифре, букве, соответственно в строке скрипта изменив этот знак на нужный:

Код
Код
var actors = actors.split(',');

Далее скрипт по циклу обрабатывает данные, обрамляя имена ссылками, и выводит весь список в определенный div.

Приступим к установке:

Для начала в Админ Панели зададим поле, в котором будем выводить актеров, например использую поле Имя Автора Материала - $AUTHOR_NAME$ в каталоге файлов (модуль load). Вместо этого поля можно использовать, например, $OTHER1$.

Теперь на странице материала и комментариев к нему создадим пустой div по месту:

Код
Код
<div class="actors"></div>

В этот div будут выводиться теги-актеры.

Далее сразу под этим div'ом размещаем следующий скрипт:

Код
Код
<script>   
   var actors = '$AUTHOR_NAME$'; //поле, где заданы актеры   
var actors = actors.split(',');   
var links = new Array();   
for (var i = 0; i < actors.length; i++)   
{links [i]= '<a href="/search/' + actors [i]+ '">' + actors [i]+ '</a>';}   
   $('.actors').html(links.join (', '));//выводим в нужный div   
</script>

В конечном итоге получим вот такую конструкцию:

Код
Код
<div class="actors"></div>   
<script>   
   var actors = '$AUTHOR_NAME$'; //поле, где заданы актеры   
var actors = actors.split(',');   
var links = new Array();   
for (var i = 0; i < actors.length; i++)   
{links [i]= '<a href="/search/' + actors [i]+ '">' + actors [i]+ '</a>';}   
   $('.actors').html(links.join (', '));//выводим в нужный div   
</script>

Имя класса дива можно изменить на свое, только не забудьте изменить это же имя в скрипте в строке

Код
Код
$('.actors').html(links.join (', '));//выводим в нужный div

На этом установка закончена. Спасибо за внимание, пишите свое мнение, идеи и вопросы в комментариях.

ЗАКАЗАТЬ УСТАНОВКУ

Скрипт опубликовал:
...
Логин на сайте: ...
Группа: ...
Статус: ...
Информация о скрипте:
Дата добавления материала: 26.08.2013 в 00:19
Материал просмотрен: 1351 раз
Категория материала: Скрипты для uCoz
К материалу оставлен: 1 комментарий

Пожаловаться
Сказать спасибо
Источник

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


pro100kasper
pro100kasper @pro100kasper 15.07.2015 00:591
+1
Хороший скрипт у самого такой стоит, главное, что можно его использовать бесконечно раз на странице достаточно везде в коде изменить actors на свое значение.
avatar
Вход через социальные сети
Работа в компании uCoz
uSocial - социальные кнопки
uLike – кнопка «Мне нравится»
Статистики нашего сайта