Все для DataLife Engine / DLE модули / Бесплатные / DLE модификация ShowMore

DLE модификация ShowMore


Представляем вам хак для DLE модификация ShowMore предназначена для показа новостей на главной, в категории и в поиске в нестандартном виде. Вы нажимаете на кнопку "Показать еще" и ниже показываются еще некоторое количество новостей. Думаю в соц. сетях вы уже встречались с подобным. Хаки Модификация - это хак улучшенный версии, как хак DataLife Engine ShowMore более применим для мобильных версий сайта, но вам никто и не запрещает ставить его на основной. Всё в ваших руках. Суть состоит в том, что пользователь нажимаешь на кнопку "Показать ещё" и ему ниже показывается ещё несколько новостей..

Данное решение применимо больше для мобильных версий сайта, однако при желании можно применять и на основных версиях.
В архиве содержится папка file_repace. Вы можете заменить файлы и у Вас всё сразу заработает. Этот способ применим, если у Вас DLE 10.3 свежая.
В противном случае Вам необходимо провести установку самостоятельно по инструкции ниже.

Кодировка: windows-1251

В архиве есть папка file_repace. Вы можете заменить файлы и у вас всё сразу заработает, но этот способ применим только, если у вас DLE 10.3, свежая. Если же нет, то вам необходимо провести установку самостоятельно по инструкции, она также есть в архиве.

Установка:
========================

1. templates\Default\main.tpl

Найти

{content}


Заменить на

[aviable=cat|main]
[showmore]
<div id="ajax-content">
[/showmore]
[/aviable]
						&#123;content}
[aviable=cat|main]
[showmore]
</div>

$(document).ready(function(){

	$('#ajax-more').click(function(){
		var nextPage = $('#ajax-next-page > a').attr('href');
		ShowLoading('');
		if (nextPage !== undefined) {
			$.ajax({
				type: 'POST',
				url: nextPage,
				success: function(data){
					$('#ajax-next-page').remove();
					HideLoading('');
					$('#ajax-content').append($('#ajax-content',data).html());
					if($('#ajax-next-page span').length){
						$('#ajax-more').remove();
					}
				},
				error: function(){
					HideLoading('');
				},
				dataType: 'html'
			});
		}
		return false;
	});

});

[center][url=#" class=]Показать ещё[/url][/center]
[/showmore]
[/aviable]
[aviable=search]
</div>
[showmore]

$(document).ready(function(){

	$('#ajax-search-more').click(function(){
		var nextPage = '{config_url}index.php?do=search';
		$('#search_start').val($('#ajax-next-page > a').data('next'));
		$('#result_ajax').val('1');
		ShowLoading('');

		if (nextPage !== undefined) {
			$.ajax({
				type: 'POST',
				url: nextPage,
				d&#097;ta: $('#fullsearch').serialize(),
				contentType: 'application/x-www-form-urlencoded;charset=windows-1251',
				success: function(data){
					$('#ajax-next-page').remove();
					HideLoading('');
					$('#ajax-search').append($('#ajax-search',data).html());
					if($('#ajax-next-page span').length){
						$('#ajax-search-more').remove();
					}
				},
				error: function(){
					HideLoading('');
				},
				dataType: 'html'
			});
		}
		return false;
	});

});

[center][url=#" class=]Показать ещё[/url][/center]
[/showmore]
[/aviable]


2. templates\Default\style\styles.css

В самый низ добавить

.btn_showmore {
	-moz-box-shadow: 0px 0px 0px 2px #9fb4f2;
	-webkit-box-shadow: 0px 0px 0px 2px #9fb4f2;
	box-shadow: 0px 0px 0px 2px #9fb4f2;
	background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #1f82d3), color-stop(1, #1f82d3));
	background:-moz-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:-webkit-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:-o-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:-ms-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:linear-gradient(to bottom, #1f82d3 5%, #1f82d3 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1f82d3', endColorstr='#1f82d3',GradientType=0);
	background-color:#1f82d3;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	border:1px solid #4e6096;
	display:inline-block;
	cursor:pointer;
	color:#ffffff;
	font-family:arial;
	font-size:23px;
	padding:15px 33px;
	text-decoration:none;
	text-shadow:0px 1px 0px #283966;
}
.btn_showmore:hover {
	background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #1f82d3), color-stop(1, #1f82d3));
	background:-moz-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:-webkit-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:-o-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:-ms-linear-gradient(top, #1f82d3 5%, #1f82d3 100%);
	background:linear-gradient(to bottom, #1f82d3 5%, #1f82d3 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#1f82d3', endColorstr='#1f82d3',GradientType=0);
	background-color:#1f82d3;
}
.btn_showmore:active {
	position:relative;
	top:1px;
}



3. templates\Default\navigation.tpl

Содержимое заменить на

<div id="ajax-next-page">[next-link][/next-link]</div>


4. templates\Default\search.tpl

В самый низ добавить

<div id="ajax-search">

5. engine\modules\search.php

Найти

	$tpl->copy_template .= <<<HTML


Заменить на

	$script = <<<HTML


Найти

<input type="hidden" name="result_from" id="result_from" value="$result_from" />
HTML;


Заменить на

<input type="hidden" name="result_from" id="result_from" value="$result_from" />
<input type="hidden" name="result_ajax" id="result_ajax" value="0" />
HTML;
	$tpl->copy_template = $script . $tpl->copy_template;


Найти

			$prev_page = "<a name=\"prevlink\" id=\"prevlink\" onclick=\"javascript:list_submit($prev); return(false)\" href=\"#\">";


Заменить на

			$prev_page = "<a name=\"prevlink\" id=\"prevlink\" data-next=\"$prev\" onclick=\"javascript:list_submit($prev); return(false)\" href=\"#\">";


Найти

			$next = "<a name=\"nextlink\" id=\"nextlink\" onclick=\"javascript:list_submit($next_page); return(false)\" href=\"#\">";


Заменить на

			$next = "<a name=\"nextlink\" id=\"nextlink\" data-next=\"$next_page\" onclick=\"javascript:list_submit($next_page); return(false)\" href=\"#\">";


6. index.php

Найти

$tpl->set ( '{content}', "
" . $tpl->result['content'] . "
" );


Добавить ниже

if($tpl->result['content'] == "" OR ($do == 'search' AND $tpl->result['info'] != "")) {
	$tpl->set_block ( "'\\[showmore\\].*?\\[/showmore\\]'si", "" );
} else {
	$tpl->set_block ( "'\\[showmore\\](.*?)\\[/showmore\\]'si", "\\1" );
}


Найти

echo $tpl->result['main'];


Добавить ВЫШЕ

$tpl->result['main'] = str_replace ( '{config_url}', $config['http_home_url'], $tpl->result['main'] );


Автор: Павел Жуковский
Сайт: http://savgroup ru/
Мы делаем только качественные скрипты.

ShowMore.rar [165,9 Kb] (cкачиваний: 97)
  • 60

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

dle9.com от 3 августа 2015 15:44
Цитата: Vardan
У меня версия DLe 10.5,не могу сделать последную часть в index.php помогите пожулуйста.

советую использовать код из текстового файла, в браузере код меняется и может создать ошибку.

последняя часть кода добавляется в engine/modules/main.php

разработчики перенесли большую часть кода из файла index.php в engine/modules/main.php
Vardan от 3 августа 2015 15:22
У меня версия DLe 10.5,не могу сделать последную часть в index.php помогите пожулуйста.
Добавить комментарий

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

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent