• Автор:

    Flesha
  • Добавлено:

    фев 11, 2013
  • Комментариев:

    0
  • Просмотров:

    3 146

Хак Добавляем шаблоны addnews

Хак Добавляем шаблоны addnews

Недавно мой хороший знакомый столкнулся с проблемой шаблонности добавления новостей.
Много категорий кардинально отличающихся друг от друга по содержанию и доп полям и чтобы не путать журналистов и просто обыденных пользователей, захотевших запостить новость был создан этот хак.

Установка:

1.Открыть файл engine/modules/addnews.php
Найти:
$tpl->load_template( 'addnews.tpl' );


Заменить на:
	$load_tpl = $_REQUEST['t'];
if ($load_tpl == "") $load_tpl = "addnews";

$tpl->load_template( 'addnews/'.$load_tpl.'.tpl' );



2. Создать папку в templates/[вашшаблон]/ с названием addnews и переместить туда файл addnews.tpl

3. Создать копию addnews.tpl и назвать ее addcoffee.tpl (или как хотите, главное соблюдать дальше аналог)
где addcoffee - название категории. (главное латиницей).

4. Открыть templates/[вашшаблон]/addnews/addcoffee.tpl
Найти и удалить:
<tr>
<td class="label">
Категория:<span class="impot">*</span>
</td>
<td>{category}</td>
</tr>


Или что то подобное, где у вас находиться тег {category}

5. Найти что то подобное (кнопка отправки):
<button name="add" class="fbutton" type="submit"><span>Отправить</span></button>


И вставить выше:
<input type="hidden" name="catlist[]" value="12"/>


где 12 - id вашей категории.

6. Открыть .htaccess.
Найти
RewriteEngine On


Ниже вставить
RewriteRule ^addcoffee.html$ index.php?do=addnews&t=addcoffee [L]


Где addcoffee (2 раза) - имя вашей категории.

Для добавления еще шаблонов - проделать все с шага #3.


Для добавления в разные места шаблонов доп. поля, выполняем следующее:

1. Открыть файл engine/inc/xfields.php
Найти:
      $output = preg_replace("'\\[if-edit\\](.*?)\\[/if-edit\\]'s", (!$xfieldsadd) ? "\\1" : "", $output);
}


Заменить на
      $output = preg_replace("'\\[if-edit\\](.*?)\\[/if-edit\\]'s", (!$xfieldsadd) ? "\\1" : "", $output);
$outputList["{xfieldvalue_{$fieldname}}"] = $output;
$output='';
}
$output = implode(' ',$outputList);


2. Открыть файл engine/modules/addnews.php
Найти
$tpl->set( '{xfields}', $output );


Вставить ниже
$tpl->set( '', $outputList );


В ваш новый шаблон теперь можно выводить доп поля тегом {xfieldvalue_названиеполя}

Назначение: Вывод для определенных категорий - своего шаблона добавления новостей.
Версия: тест на 9.7, 9.8, думаю пойдет на всей 9 линейки.
Время установки: 2 минуты
Автор, поддержка: dark5ider.ru dle
Вернуться
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.