вопрос
Добрый день!
Есть модуль, который выводит в полной новости (fullstory.tpl) доп. информацию, модуль подключается стандартным тегом DLE include file, шаблон оформления к модулю лежит в подпапке шаблона DLE (Default/modul/modul.tpl).
Проблема в том, что стандартные теги полной новости DLE в шаблоне модуля (modul.tpl) не работают, а требуется вывести в нем значения доп. полей новости. Можно ли как нибудь обойти это ограничение?
Есть модуль, который выводит в полной новости (fullstory.tpl) доп. информацию, модуль подключается стандартным тегом DLE include file, шаблон оформления к модулю лежит в подпапке шаблона DLE (Default/modul/modul.tpl).
Проблема в том, что стандартные теги полной новости DLE в шаблоне модуля (modul.tpl) не работают, а требуется вывести в нем значения доп. полей новости. Можно ли как нибудь обойти это ограничение?
Сделал строку подключения:
и в modul.php добавил:
Теперь в modul.tpl доп. поля выводятся по тегам:
{include file="engine/modules/modul/modul.php?field1=[xfvalue_pole1]&field2=[xfvalue_pole2]"}
и в modul.php добавил:
$tmp = str_replace('{field1}', $field1, $tmp );
$tmp = str_replace('{field2}', $field2, $tmp );
if (!empty($field1)) {
$tmp = preg_replace('/\[xfgiven_field1\](.*?)\[\/xfgiven_field1\]/is', '$1', $tmp);
} else {
$tmp = preg_replace('/\[xfgiven_field1\](.*?)\[\/xfgiven_field1\]/is', '', $tmp);
}
if (!empty($field2)) {
$tmp = preg_replace('/\[xfgiven_field2\](.*?)\[\/xfgiven_field2\]/is', '$1', $tmp);
} else {
$tmp = preg_replace('/\[xfgiven_field2\](.*?)\[\/xfgiven_field2\]/is', '', $tmp);
}
if (empty($field1)) {
$tmp = preg_replace('/\[xfnotgiven_field1\](.*?)\[\/xfnotgiven_field1\]/is', '$1', $tmp);
} else {
$tmp = preg_replace('/\[xfnotgiven_field1\](.*?)\[\/xfnotgiven_field1\]/is', '', $tmp);
}
if (empty($field2)) {
$tmp = preg_replace('/\[xfnotgiven_field2\](.*?)\[\/xfnotgiven_field2\]/is', '$1', $tmp);
} else {
$tmp = preg_replace('/\[xfnotgiven_field2\](.*?)\[\/xfnotgiven_field2\]/is', '', $tmp);
}
Теперь в modul.tpl доп. поля выводятся по тегам:
[xfgiven_field1]Поле 1 установлено: {field1}[/xfgiven_field1]
[xfgiven_field2]Поле 2 установлено: {field2}[/xfgiven_field2]
[xfnotgiven_field1]Поле 1 не установлено[/xfnotgiven_field1]
[xfnotgiven_field2]Поле 2 не установлено[/xfnotgiven_field2]