Похожие новости по названию


Скрипт выводит список похожих новостей, сравнивая их не по тегам, а по названию.

Для начала подключаем в любое место скрипт:

Code
<script type="text/javascript">  
  $(function(){  
  related = {  
  title: '$ENTRY_NAME$', // название материала  
  number: 10, // количество материалов для вывода  
  push: $('#related'), // куда выводить  
  form: '<div class="related" id="r{ID}"><a href="{URL}" title="{TITLE}">{TITLE, 20}</a></div>', // форма вывода  
  a: <?if($MODULE_ID$ = 'stuff' || $MODULE_ID$ = 'dir' || $MODULE_ID$ = 'publ')?>2<?if($MODULE_ID$ = 'news')?>142,  
  data: new String()  
  };  

  $.post('/$MODULE_ID$', {  
  query: related.title.toLowerCase().replace(/([0-9\.\,]+)/g, ' '),  
  a: related.a  
  }, function(data){  
  $('.eTitleR', data).each(function(id){  
  if(id < related.number){  
  related.html = $(this).html();  
  if(location.href.indexOf($(this).attr('href')) == -1) related.data += related.form.replace(/\{ID\}/g, id).replace(/\{URL\}/g, $(this).attr('href')).replace(/\{TITLE(, ([0-9]+))?\}/g, function(a, b, c) {if(c) return (related.html.length > c ? related.html.substr(0, c) + '...' : related.html); else return related.html;});  
  };  
  });  
  if(related.data != '') related.push.html(related.data).prev('span').show();  
  });  
  });  
  </script>


При необходимости, можно что-нибудь подправить. Дальше в нужном месте ставим:

Code
<span style="display:none;">Похожие материалы:</span>  
<div id="related"></div>

Элемент span с надписью «Похожие материалы» изначально должен быть скрытым, чтобы не переключать его видимость 100500 раз.

Теперь в нужном модуле на странице «Вид материалов» в самое начало ставим:

Code
<a style="display:none;" class="eTitleR" href="$ENTRY_URL$">$TITLE$</a>


Теперь насчет некоторых параметров скрипта.

related.title - название материала, обычная переменная, например в модуле «Новости сайта» это $ENTRY_NAME$
related.number - максимальное количество выводимых записей
related.form - форма вывода материалов, где можно использовать тэги:
{ID} - порядковый номер выводимой записи
{URL} - ссылка на материал
{TITLE[, num]} - название материала, через запятую можно указать максимальное количество символов, после которых будет поставлено многоточие, а можно вообще не указывать запятую с числом (например, {TITLE} - выведет все, {TITLE, 5} - обрежет по первые 5 символов)

Опубликовал: TIK_TAK в категорию Скрипты и хаки для ucoz - Дата добавления: 21.11.2024, 21:16

Теги: Скрипты и хаки для ucoz, названию, ПО, похожие, Новости

Сообщить о новой версииПроблемы со скачиванием?
Источник/Автор: uweb.su / Stufford
ССЫЛКИ

Комментарии:


Оставить комментарий

Имя *:
Email *:

Все смайлы | Регистрация

Популярные файлы

Друзья сайта

Всё для Counter-Strike 1.6

Теги

  
     

Вход на сайт

     
     

Информация:

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Статистика