» »

Скрипт поиск похожих материалов сайта ucoz


Скрипт поиск похожих материалов сайта ucoz

Что по мне этот скрипт очень полезный. Когда у вас на сайте к примеру в каталоге файлов, то иногда мы ошибаемся. И ставим одно и тоже описание на один и тот же скрипт а возможно на совершенно другой похожий.
Этот скрипт нам будет выводить когда вы будете писать если дубликат на такое название. И вы будете точно уверены что название такого на вашем интернет ресурсе нет. И просто зальете материал зная, и проставляем теги к нему.

И так начнем устанавливать:

1. Заходим в ПУ - Управление дизайном - модуль Каталог файлов - Вид материалов и находим вот такой код:

Код
<div class="eTitle" style="text-align:left;"><a href="$ENTRY_URL$">$TITLE$</a></div>


И заменяем его на данный код:

Код
<div class="eTitle" style="text-align:left;"><a href="$ENTRY_URL$" class="entryLink">$TITLE$</a></div>


Страница добавления/редактирования материала и внизу, перед закрывающим кодом /body ставим скрипт:

Код
<script>  
(function(){  
var __e = document.querySelector('#addEntForm input[name="title"]');  
if ( __e ) { __e.setAttribute('onchange','searchEntr()'); }  
})();  
function searchEntr () {  
var likeThis = [], qq = document.addform.title.value, h = _uWnd.getdims(), j = h.clientW - 305, g = h.clientH - 215;  
if (qq.length > 3) {  
$.post("/$MODULE_ID$", {query: qq, a: <?if($MODULE_ID$ = 'load')?>2 <?endif?>},  
function (reslt) {  
$(".entryLink", reslt).each(function () {  
var href = $(this).attr("href"), html = $(this).html(), shtml = ((html.length>40)?html.substr(0,40)+'...':html);  
if (href && html) {  
likeThis.push('<a href="' + href + '" target="_blank" title="' + html + '">' + shtml + '<\/a><br \/>');  
}  
});  
if (likeThis[0]) {  
new _uWnd('sw', 'Найдены похожие материалы', 300, 200, {min: 0, max: 0, x: j, y: g, alert: 1, autosize: 0, icon: '', fixed: 1, shadow: 1, resize: 0, nomove: 1, hidden: 0, notaskbar: 1, fadetype: 2, fadespeed: 500, fadeclosetype: 1, fadeclosespeed: 500, align: 'left'},'<fieldset><legend>' + qq + '</legend>' + likeThis.join("") + '</fieldset>');  
}  
else {  
_uWnd.close('sw');  
}  
});  
}  
}  
</script>


PS скрипт проверен на тестовом сайте и если появится что то похожее по названию, то с правой стороны будет окно, сколько материалов уже есть под таким названием.

Найдены похожие материалы на uCoz

Проверял на каталоге файлов.
25.01.2014 Просмотров: 1010 Комментарий: (10)

Поделиться в социальных сетях

Материал разместил

Комментарий: 10
ArtElect
ArtElect 27.06.2014 10:031
0
По мне так это полезный скрипт, так как он показывает название материалов и поэтому не будет повторов...
Нужный happy
Kosten
Kosten 27.06.2014 11:282
0
KirOs, здесь полностью согласен. Когда много материалов, не исключение повторение название.
ArtElect
ArtElect 27.06.2014 20:593
0
Kosten, Это точно happy
ТОРНАДО
ТОРНАДО 08.12.2015 12:324
0
а если такого кода нету
Konoplia
Konoplia 19.11.2016 19:395
0
Не могу его к себе запилить, не работает.. У меня построение вида немного другое. Пробовал по разному и класс добавлял у себя, и так, и сяк, но нечего. Вот как его под вид как у меня прикрепить? У меня Титл идет без ссылки, вот так:

Код
<p style="тут мои стили;">$TITLE$ $MODER_PANEL$</p


А сама ссылка кнопкой "Смотреть" в самом низу:

Код
<div style="float: right;"><a class="smotret" href="$ENTRY_URL$"><span>Смотреть</span</a></div>
Kosten
Kosten 19.11.2016 20:106
0
На вид материале пробовал и также не чего не получилось, стандартный поставил, и только после этого появилось окно.
Kosten
Kosten 19.11.2016 20:197
0
Вообщем попробуйте так, найти и убрать на вид материалов этот кусок кода.

Код
<a href="$ENTRY_URL$">$TITLE$</a>


И вместо этого поставить:

Код
<div class="eTitle" style="text-align:left;"><a href="$ENTRY_URL$" class="entryLink">$TITLE$</a></div>


Просто поставил уже на дизайнерском вид материала, и показывает.
Kosten
Kosten 19.11.2016 20:368
0
Konoplia, тему создайте Здесь и скиньте вид материала - код. Можно и по другому сделать, сейчас попробовал и получилось, просто к оператору прописать стиль.

Как пример.

Находим этот оператор.

$ЕNЕRY_URL$

и к нему ставим класс

Код
<a href="$ENTRY_URL$" class="entryLink">$TITLE$</a>
Konoplia
Konoplia 22.11.2016 09:129
0
Цитата Kosten
Konoplia, тему создайте Здесь и скиньте вид материала - код. Можно и по другому сделать, сейчас попробовал и получилось, просто к оператору прописать стиль.

Как пример.

Находим этот оператор.

$ЕNЕRY_URL$

и к нему ставим класс

Спасибо! Создал тему, надеюсь поможете решить вопрос 09a
Kosten
Kosten 22.11.2016 18:2410
0
Но у вас как понял работает, если не трудно, то скиньте скрин в комментарий, чтоб просто другие видели, что рабочий материал.
avatar