Хак DLE Вставка текста после нужного блока » Techno-Co — Всё для вебмастера, для создание сайтов с нуля. {title}

Хак DLE Вставка текста после нужного блока — маленькое решение, позволит гибко управлять добавлением блока с текстовой информацией на вашем сайте под управлением движка DataLife Engine. По словам автора: понадобилось такое решение, т.к. плохо разбирается в вёрстку, хотя пару приёмов в html приходилось применять в практике. Например, когда нужно вывести информацию в несколько колонок и особо, нет желания возиться с дивами, то на помощь приходит старая и удобная табличная верстка. Которую легко может овладеть в совершенстве любой, но использовать таблицы для вывода из тега {custom} не удобно, благо нужно вставить символы окончания строки и начала следующей. Отсюда и появился хак DLE вставка текста после нужного блока, довольно гибкий хак, который может помочь многим выводить нужный текст в модуле или в любом месте шаблона.

Установка:

1. Открыть файл engine/modules/functions.php

Найти:

if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}

Ниже вставить:

function check_perehod($num, $content, $i) {

    if ($i % $num == 0)
        return $content;
    else
        return false;
}

2. Открыть файл engine/modules/show.custom.php

Найти:

$row['category'] = intval( $row['category'] );

Ниже вставить:

$tpl->set_block( "#[perehod=(.+?)](.*?)[/perehod]#ies", "check_perehod('1', '2', '{$i}')" );

Вы также можете подключать тег не только в файле show.custom.php, но и в любых сторонних модулях, где есть шаблон и циклический вывод 🙂

Внимание, третий параметр функции check_perehod — Это количество итераций цикла. Необходимо быть внимательней, при подключении хака в другие модули, может произойти конфликт.

3. Добавить блок в шаблон, для этого в любой файл TPL в нужное место вставить:

[perehod=2]Код, который отобразится, когда текущее кол-во итераций цикла сможет разделиться на параметр без остатка (В нашем случае 2)[/perehod]