Шаблоны для DLE или быстрое добавление.

  • Не нравится
  • +2
  • Нравится
Шаблоны для DLE или быстрое добавление. Здравствуйте. Вот хочу поделиться доработкой которая позволяет быстро опубликовать новости, посты, в моем случае - альбомы для музыкального сайта SoundTracki.info ™. Что мне нравиться в этой доработке, так это то, что последовательность заполненности в каждом альбоме будет одна. Т.е.:


[u][b]Дополнительная информация:[/b][/u]
[b]Название:[/b] Bitten Presents: Bites Sampler 2011
[b]Оригинальное название:[/b] Bitten Presents: Bites Sampler 2011
[b]Исполнитель:[/b] VA
[b]Жанр:[/b] Tech House/Techno
[b]Год выпуска:[/b] 2011
[b]Формат:[/b] mp3
[b]Качество:[/b] 320 kbps
[b]Количество композиций:[/b] 15
[b]Продолжительность:[/b] 01:47:53 мин.
[b]Размер:[/b] 247 Mb



Сначала идет строчка Дополнительная информация:, потом Название, Оригинальное название: и т.д.
Не будет такого, что сначала будет Год, потом Размер, Качество...


Установка



Зайдите в папку с вашим шаблоном и в файле addnews.tpl.

В самое начало вставляйте:

<script type="text/javascript">
function tpl ( ch ) {

if (ch == "music") {
document.getElementById('short_story').innerHTML = '[b][u]Дополнительная информация:[/u][/b]n[b]Название:[/b] n[b]Оригинальное название:[/b] nn';
document.getElementById('full_story').innerHTML = '[b][u]Дополнительная информация:[/u][/b]n[b]Название:[/b] n[b]Оригинальное название:[/b] n[b]Композитор:[/b] n[b]Исполнитель:[/b] n';
}

};
</script>



Затем, найдите такую строчку:

<tr>
<td height="25">Категория: <font color="red">*</font></td>
<td style="padding-bottom:5px;">{category}</td>
</tr>

И после нее вставте:

<tr>
<td height="25">Шаблоны: <font color="red">*</font></td>
<td align="center">
<input type="button" onclick="tpl('music'); return false;" value="Альбом" />
</td>
</tr>


ВНИМАНИЕ! Строчки html кода могут у вас быть разными. Если вы знаете хоть чуть-чуть HTML, то вы без проблем сделаете для своего сайта.


Все! При добавлении новости/альбома будет кнопка с надписью АЛЬБОМ.
При нажатии будет в оба поля (кратное и полное содержание) вставляться определенный заданный код (шаблон).

СКРИН:
Шаблоны для DLE или быстрое добавление.


Пояснение кода


Кнопка:

onclick="tpl('music'); return false;" - вот тут есть код вызова music. Может быть любое уникальное.
function tpl ( ch ) - название функции и содержимое переменных, которые будут браться с кнопок.
if (ch == "music") - вот тут тоже есть строчка music. Когда нажимаем на кнопу со значением music, то будет выполняться функция.
document.getElementById('short_story').innerHTML = 'Дополнительная информация:\nНазвание: \nОригинальное название: \n\n'; - вот это сама функция. Вот тут значения короткой новости. Тошо short_story!
document.getElementById('full_story') - содержимое полной новости. Значение: full_story

Два и больше шаблонов


Я показал пример на одну кнопку. Хотя на скрине у меня две: АЛЬБОМ и НАШ ШАБЛОН.

Что бы реализовать две и больше кнопок, надо создать рядом с
<input type="button" onclick="tpl('music'); return false;" value="Альбом" />

еще одну кнопку:
<input type="button" onclick="tpl('vtoraya'); return false;" value="Вторая кнопка" />


vtoraya - это уникальное название кнопки.

Далее в самом скрипте


<script type="text/javascript">
function tpl ( ch ) {

if (ch == "music") {
document.getElementById('short_story').innerHTML = '[b][u]Дополнительная информация:[/u][/b]n[b]Название:[/b] n[b]Оригинальное название:[/b] nn';
document.getElementById('full_story').innerHTML = '[b][u]Дополнительная информация:[/u][/b]n[b]Название:[/b] n[b]Оригинальное название:[/b] n[b]Композитор:[/b] n[b]Исполнитель:[/b] n';
}

if (ch == "vtoraya") {
document.getElementById('short_story').innerHTML = 'Это вставиться в короткое описание nn';
document.getElementById('full_story').innerHTML = 'А [b]этот[/b] текст будет в полном описании n';
}

};
</script>


if (ch == "vtoraya") - вот сюда и вставляем название нашей кнопки.

Ну вот типо так.
Позже я напишу как сделать такое с помощью jQuery. Говорю сразу, код будет меньшим :)
+ буду усовершенствовать этот "хак". Сделаю как Модуль: редактировать сам шаблон можно будет в Админпанеле smile

Дополнение: автоматическая вставка шаблона


В любое место страницы надо вставить:

<script type="text/javascript">
$(window).load(function () {
tpl('music');
});
</script>

Шаблон вставиться только после полной загрузки страницы.

tpl('music'); - это тот шаблон, который будет по умолчанию ставиться.

Удачи!

Коментарии