Ни для кого не секрет, что в системе uCoz есть свой стандартный условный оператор, который выводит похожие материалы. Имя ему $RELATED_ENTRIES$. Но это всего лишь обычные, скучные ссылки на схожие материалы.
Согласитесь, что этого мало, особенно, если учесть невероятно быстро нарастающий интерес и набирающему популярность стандарту HTML5 и его спутнику CCS3. Уже не возможно представить ни один уважающий себя сайт без этих "плюшек", всевозможных JQuery слайдеров и пр.
Скрипт "Похожие материалы" покажет вам не только ссылку на схожую статью, но так же выведет картинку и краткое описание к ней. Более того, отобразит эти данные в виде JQuery "Карусели", либо в виде таблицы с одной или двумя колонками (на выбор). Внешний вид, количество выводимых материалов и длина краткого описания настраивается по вкусу. Схожесть материалов определяется по тегам, либо, если теги отсутствуют, схожесть будет определена по названию материала. При этом процент схожести вы выставляете сами (от 0 - в случайном порядке до 100 - полное совпадение).
Если вы хотите выделить свой сайт, заботитесь о своих посетителях и хотите увеличить глубину просмотров ваших страниц пользователями сайта — этот скрипт для вас!
























.owl-carousel .owl-wrapper:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
.owl-carousel{ display: none; position: relative; width: 100%; -ms-touch-action: pan-y;}
.owl-carousel .owl-wrapper{display: none;position: relative;-webkit-transform: translate3d(0px, 0px, 0px);}
.owl-carousel .owl-wrapper-outer{overflow: hidden;position: relative;width: 100%;}
.owl-carousel .owl-wrapper-outer.autoHeight{-webkit-transition: height 500ms ease-in-out;-moz-transition: height 500ms ease-in-out;-ms-transition: height 500ms ease-in-out;-o-transition: height 500ms ease-in-out;transition: height 500ms ease-in-out;}
.owl-carousel .owl-item{float: left;}
.owl-controls .owl-page,.owl-controls .owl-buttons div{cursor: pointer;}
.owl-controls {-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
.grabbing {cursor:url(grabbing.png) 8 8, move;}
.owl-carousel .owl-wrapper,.owl-carousel .owl-item{-webkit-backface-visibility: hidden;-moz-backface-visibility: hidden;-ms-backface-visibility:hidden; -webkit-transform: translate3d(0,0,0); -moz-transform: translate3d(0,0,0);-ms-transform: translate3d(0,0,0);}
.owl-theme .owl-controls{margin-top: 10px;text-align: center;}
.owl-theme .owl-controls .owl-buttons div{color: #FFF;display: inline-block;zoom: 1;*display: inline;margin: 5px;padding: 3px 10px;font-size: 12px;-webkit-border-radius: 30px;-moz-border-radius: 30px;border-radius: 30px;background: #869791; filter: Alpha(Opacity=50);opacity: 0.5;}
.owl-theme .owl-controls.clickable .owl-buttons div:hover{filter: Alpha(Opacity=100);opacity: 1;text-decoration: none;}
.owl-theme .owl-controls .owl-page{display: inline-block;zoom: 1;*display: inline;}
.owl-theme .owl-controls .owl-page span{display: block;width: 12px;height: 12px;margin: 5px 7px;filter: Alpha(Opacity=50);opacity: 0.5;-webkit-border-radius: 20px;-moz-border-radius: 20px;border-radius: 20px;background: #869791;}
.owl-theme .owl-controls .owl-page.active span,.owl-theme .owl-controls.clickable .owl-page:hover span{filter: Alpha(Opacity=100);opacity: 1;}
.owl-theme .owl-controls .owl-page span.owl-numbers{height: auto;width: auto;color: #FFF;padding: 2px 10px;font-size: 12px;-webkit-border-radius: 30px;-moz-border-radius: 30px;border-radius: 30px;}
.customNavigation{text-align: right;}
.customNavigation a{-webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
.customNavigation {display:none}
.owl-cont {background: #f6f6f6 !important; margin:5px; padding:5px; text-align; left;}
.owl-cont img {width:100%}
#related {width:100%}
.table_entries {width:100%; border-collapse: collapse; border-spacing: 0px; border: 0px}
.table_entries td {padding:5px; border: 0;}
.table_entries td img, .table_entries td.entries_td img {width:100px; padding: 0px 10px 10px 0px; float: left}
.table_entries td.entries_td {width: 50% !important; padding:5px; border: 0;}
owl-wrapper
– контейнер с "каруселью";
owl-carousel
– блок со всеми элементами "карусели";
owl-cont
– блок с одним слайдом;
owl-controls
– блок с пагинацией (под слайдером);
owl-page
– стиль для диска пагинации;
prev, next
– ссылки "вперед" и "назад";
table_entries
– стили для таблицы с похожими материалами (если выбран способ отображения в виде таблицы);
<div class="customNavigation">
<h4 style="text-align:left">Похожие материалы</h4>
<a href="" class="btn prev">Назад</a>
<a href="" class="btn next">Вперед</a>
</div>
<table width="100%" border="0" style="word-wrap:break-word; table-layout: fixed;"><tbody><tr><td>
<div id="related"><div style="display:none"><?$RELATED_ENTRIES$(20)?></div><p style="padding:10px; text-align:center"><img src="/.s/img/wd/6/ajax.gif" style="width:31px; height:31px;" alt="Loading" /></p></div>
</td></tr></tbody></table>
<script>
$(document).ready(function(){
<?if($RELATED_ENTRIES$(20))?>
var tags = [],
r = new RegExp("\x27+","g"),
r1 = new RegExp("\x22+","g"),
r2 = new RegExp("\x2C+","g"),
str;
for (var i = 0; i <= $('#related .uRelatedEntry').length; i++) {
str = $('#related .uRelatedEntry :eq('+i+')').text();
str = str.replace(r, "");
str = str.replace(r1, "");
str = str.replace(r2, "");
tags.push(str);
}
tags.pop();
<?else?>
var title = '<?if($MODULE_ID$=='news')?>$ENTRY_NAME$<?else?>$ENTRY_TITLE$<?endif?>';
<?endif?>
$.ajax({
type: "POST",
url: "/php/materials/index.php", // не изменять
data: "module=$MODULE_ID$&material_id=$ID$&<?if($RELATED_ENTRIES$(20))?>tags="+tags<?else?>title="+title<?endif?>, // не изменять
cache: false,
success: function(html){
$("#related").html(html);
}
});
});
function startOwl(count) {
$.getScript("/js/owl.carousel.min.js", function(){
var owl = $(".owl-carousel");
owl.owlCarousel ({
items : count
});
$(".next").on('click', function(event){
event.preventDefault();
owl.trigger('owl.next');
});
$(".prev").on('click', function(eevent){
event.preventDefault();
owl.trigger('owl.prev');
});
$('.customNavigation').show();
});
};
</script>
$cache_time = 3600;
время жизни кеша, через которое можно выполнить повторный запрос на API (в секундах);
$post_count = 10;
количество схожих материалов, выводимых скриптом;
$message_count = 30;
количество символов для краткого описания;
$no_image = '0';
0 - картинка будет выводится, при условии, что она будет найдена в материале; 1 - картинки не будут выводится совсем; или пропишите свою ссылку на картинку-заглушку. Аналогична варианту 0, но только будет выводится ваша картинка, в случае, если других в материале не нашлось.
$look = 0;
0 - материалы выводится в виде JQuery карусели; 1 - материалы выводятся в виде таблицы в 1 колонку; 2 - материалы выводятся в виде таблицы в 2 колонки;
$count_slides = 5;
количество колонок в карусели;
$per_page = 200;
количество получаемых материалов по API за раз;
$per_cent = 0;
схожесть материалов в процентах от 0 до 100 ( имеет смысл указывать только в случае отсутствия тегов у материалов. Чем выше значение, тем большая схожесть и тем меньшее кол-во материалов будет отображено. И соответственно, наоборот. );
$img_href = 0;
1 - картинка кликабельная, 0 не кликабельная