как подключить

S2
На сайте с 12.06.2011
Offline
118
479

Как подгрузить блок популярные новости при помощи Ajax через скрипт. я хотел вынести код со странице в другое место,

чтобы подгрузка происходила из другого места.

CMS: DLE 10.3

В папке с шаблоном создал файл "topnews.html" со следующим содержимым:

{include file="topnews.tpl"}

Затем в main.tpl в теге <body></body> вставил:

<div id="topnews"></div>

И здесь же в main.tpl, сразу после <head>:

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>

<script type="text/javascript">

$(document).ready(function() {

$('#topnews').load('http://sait.ru/templates/Default/topnews.html');

});

</script>

В файле topnews.html, если прописать текст, то он будет подгружаться и выводиться, а вот этот код

{include file="topnews.tpl"}

выводит только это {include file="topnews.tpl"}

Подскажите как подгрузить, через скрипт.

D
На сайте с 27.09.2008
Offline
63
#1

Ну а как вы хотите, вы же в html файле который никакого отношения к движку не имеет встраиваете: {include file="topnews.tpl"}. Если вы таким образом хотите увеличить скорость загрузки то у вас ничего не получится. Вы так наоборот еще больше загрузите сервер, поскольку увеличите число запросов к серверу.

В дле не особо разбираюсь, но по моему чтобы такое сделать нужно сделать копию файла index.php и там заместо шаблона index.tpl подключить по умолчанию topnews.tpl. И подгружать с помощью ajax уже новый index.php.

А еще вариант закэшировать блок новостей и с помощью аджакс открывать кэш.

__________________

гугл поисковая система по картинкам

- Продам скрипт перелинковки сайта - https://nulled.cc/threads/311169/
totamon
На сайте с 12.05.2007
Offline
437
#2
sotex2:
В папке с шаблоном создал файл "topnews.html" со следующим содержимым:

я думаю в этом ошибка) система же не знает про страницу с чего она будет обрабатывать ее содержимое? создайте страницу через админку и шаблон ей назначьте topnews.tpl или другой в котором уже укажете {include file="topnews.tpl"}

сам DLE не использую, потому могу и ошибаться)

Домены и хостинг https://8fn.ru/regru | Дедик от 3000р https://8fn.ru/73 | VPS в Москве https://8fn.ru/72 | Лучшие ВПС, ТП огонь, все страны! https://8fn.ru/inferno | ХОСТИНГ №1 РОССИИ https://8fn.ru/beget
D
На сайте с 27.09.2008
Offline
63
#3
я думаю в этом ошибка) система же не знает про страницу с чего она будет обрабатывать ее содержимое? создайте страницу через админку и шаблон ей назначьте topnews.tpl

Да причем здесь через админку или нет. Разницы тут никакой нету. Вы не понимаете как движок обрабатывает шаблон. Через шаблонизатор на php. А он через ajax подгружает, не знаю то ли в надежде что {include file="topnews.tpl"} встроится в шаблон и потом все это дело обработается на php как надо. Но так не получится ajax выполняется в браузере. Нужно чтобы этот файл topnews.html при запуске выводил блок новостей, его нужно с помощью php создавать. Но как мне кажется лучше всего тут сделать как я написал ниже, закэшировать блок topnews и если есть кэш то открывать с помощью ajax. Так будет действительно экономия ресурсов. Особенно если статику ngnix обрабатывать.

__________________

гугл поисковая система по картинкам

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий