Время:
Новых сообщений: Нет
Вы на форуме дней
Ваша группа: Гость
Ваш IP: 18.117.107.78
Logical-Portal — молодежный портал со своей изюминкой, каждый сможет найти что-то интересное и полезное для себя, например наш форум общения с которым вам обязательно нужно ознакомиться.
  • Страница 1 из 1
  • 1
Похожие материалы
Сообщение оставлено 30.05.2011 в 00:46:54 | Сообщение #1


Для начала подключаем в любое место скрипт:
Quote
<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<?else?><?if($MODULE_ID$ = 'news')?>14<?endif?><?endif?>,
data: new String()
};

$.post('/$MODULE_ID$', {
query: related.title,
a: related.a
}, function(data){
$('.eTitle a', 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© 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>


При необходимости, можно что-нибудь подправить. Дальше в нужном месте ставим:
Quote
<span style="display:none;">Похожие материалы:</span>
<div id="related"></div>


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

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

related.title - название материала, обычная переменная, например в модуле «Новости сайта» это $ENTRY_NAME$
related.number - максимальное количество выводимых записей
related.form - форма вывода материалов, где можно использовать тэги:
{ID} - порядковый номер выводимой записи
{URL} - ссылка на материал
{TITLE[, num]} - название материала, через запятую можно указать максимальное количество символов, после которых будет поставлено многоточие, а можно вообще не указывать запятую с числом (например, {TITLE} - выведет все, {TITLE, 5} - обрежет по первые 5 символов)
 
 
   
Сообщение оставлено 30.05.2011 в 09:43:43 | Сообщение #2
не много не понял, это для каталога файлов?
и как работает?
 
 
   
Сообщение оставлено 30.05.2011 в 14:43:48 | Сообщение #3
L1ghT, сам не пользовал но нашел вот и залил
 
 
   
Сообщение оставлено 31.05.2011 в 16:54:06 | Сообщение #4
у меня не работает cry
 
 
   
Сообщение оставлено 01.06.2011 в 13:05:09 | Сообщение #5
edrag01,
И я бы предпочёл использовать вместо
Quote
query: related.title,

конструкцию
Quote
query: related.title.replace(/([a-z а-я]{1,})(\d.{1,})/ig,'$1'),


можно
Quote
related.title.replace(/([а-я]{1,})(\S{1,})/ig,'$1'),

Результат будет
Quote

в фразе Google хром[[@#$%],[]
выделит только хром

или
Quote
related.title.replace(/([а-я]{1,})([^\d{1,}]\S{1,})/ig,'$1'),

тогда в фразе Google Хром 123 [[@#$%],[] выделит только Хром 123


 Сообщение отредактировал Роман☜❶☞ - Среда, 01.06.2011, 13:07:40
 
 
   
Сообщение оставлено 02.06.2011 в 05:29:48 | Сообщение #6
дак оно работает или нет wacko
 
 
   
Сообщение оставлено 04.06.2011 в 18:53:33 | Сообщение #7
zhyk, работает
 
 
   
  • Страница 1 из 1
  • 1
Поиск:
 
Графика от: Megas, GraFOS | Дизайн сверстал E.A.
Хостинг от uCoz
Яндекс.Метрика