DLE Краткая новость, помогите вставить код...

S
На сайте с 13.11.2012
Offline
72
704

Помогите, пожалуйста вставить код

<div class="news"> в краткую новость dle, таким образом, чтобы в <div class="news">...</div>

обрамлялось каждые 2 новости.

Таким образом на моем сайте выстроятся 2 колонки без дополнительных заков.

Ранее мне уже помогали с данной проблемой, но я потерял код и контакты человека который мне помог :(

Он правил 1 файл, код файла ниже.

http://sandbox.onlinephpfunctions.com/code/bb785f405cb724f6360f1bda9fb90706c74a35f1

Спасибо

I
На сайте с 19.02.2012
Offline
93
#1

В данном случае можно легко обойтись и CSS, блок краткой новости выводится через float или inline-block с width 50%.

S
На сайте с 13.11.2012
Offline
72
#2

У меня уже все готово, верстка и т.д.

Единственное, нужно научить dle заключать каждые 2 новости в <div class="news">...</div>

S
На сайте с 13.11.2012
Offline
72
#3

Сделал так

//###################################
$news_limit = 2; // через какое кол-во новостей показывать баннер ?

//оригинальный код движка //
while ( $row = $db->get_row( $sql_result ) ) {
//оригинальный код движка //

//опять мой код
if ( $news_limit <= 2 ) $banner_counter++;
if ( $banner_counter == $news_limit)
{
$tpl->set('{banner}',$banners[mt_rand(0,count($banners)-1)]);
$banner_counter = 0;
} else $tpl->set('{banner}',"<div class=\"news\">");

$banners = array('</div>'); //закрывающий див

if ( $news_limit > 2 ) $banner_counter++;
//####################################

почти работает но не совсем корректно расставляет закрывающий div

Первый закрывающий div идет сразу после первой новости, далее через 2 (как и нужно), но из-за того, что первый div после 1 новости, все остальные div идут не в нужном порядке, хотя и через 2 новости :(

<div class=\"news\"> идет как нужно, открывает первую новость, третью, пятую и т.д.

</div> должен идти после второй, четвертой, шестой и т.д. новостей...

Помогите довести до ума код выше.

---------- Добавлено 16.05.2015 в 22:45 ----------

Сделал стандартным набором дле движка :)

[newscount=1,3,5,7,9]<div class="news">[/newscount]

.................

[newscount=2,4,6,8,10]</div>[/newscount]

может пригодится кому

дани мапов
На сайте с 06.09.2012
Offline
204
#4


//###################################
$news_limit = 2; // через какое кол-во новостей показывать баннер ?
$banner_counter = 0;

//оригинальный код движка //
while ( $row = $db->get_row( $sql_result ) ) {
//оригинальный код движка //

//опять мой код
if ($banner_counter % $news_limit == 0) {
if ($banner_counter)
$tpl->set('{banner}',"</div>");

$tpl->set('{banner}',"<div class=\"news\">");
}

$tpl->set('{banner}',$banners[mt_rand(0,count($banners)-1)]);

$banner_counter++;
//####################################
Написание и доработка скриптов (PHP, MySQL, JavaScript, jQuery) (/ru/forum/811046)

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