Идеальный выбор начинающих и небольших сайтов

Нестандартное использование дополнительных полей в DLE

Многие пользователи, не прочитав ни слова из документации DLE совершают такие элементарные ошибки.
Да даже если вы прочтёте эту документацию, я уверен что для большинства пользователей это грань, для них всё заканчивается, как там написано значит так это и работает. Нет! это далеко не предел. Сейчас речь идёт о так называемой функции "Дополнительное поле"

Что такое вообще это дополнительное поле?
Дополнительные поля, позволяют облегчать добавление информации на сайт, по умолчанию имеются только два поля, это краткое и полное описание новости. Однако вы можете создать и другие поля для ввода информации, например ссылку на источник или на программу, и настроив вывод поля всего один раз в шаблонах, отпадает необходимость постоянного форматирования часто повторяющегося ввода информации.
Так пишется в документации по DataLife Engine.
Но в этой статье я покажу вам несколько нестандартных способов использования этих самых полей.
Один из примеров я уже показывал - Делаем красивое выделение определенной статейки на сайте.
Но! Давайте сейчас разберемся с функционалом полей.

[xfvalue_поле]
Выводит дополнительное поле "поле" 
[xfgiven_поле] поле [/xfgiven_поле]
Выводит дополнительное поле "поле" если оно заполнено
[xfnotgiven_поле] текст [/xfnotgiven_поле]
Выводит содержимое если доп.поле не содержит информации
[xfvalue_поле limit="X2"]
Выводит только текст дополнительного поля без HTML форматирования, при этом сам текст сокращается до указанного X2 количества символов. При этом сокращение текста происходит до последнего логического слова. Например [xfvalue_test limit="50"] выведет только первые 50 символов значения дополнительного поля c именем test

[ifxfvalue tagname="tagvalue"] Текст [/ifxfvalue]
Выводят текст заключенный в них, если значение дополнительного поля совпадает с указанным. Где tagname это имя дополнительного поля, а tagvalue это его значение. (Вывод содержимого по значению поля)
[ifxfvalue tagname!="tagvalue"] Текст [/ifxfvalue]
Выводят текст заключенный в них, если значение поля не совпадает с указанным. Где tagname это имя дополнительного поля, аtagvalue это его значение.
[xfvalue_thumb_url_поле]
Данный тег может использоваться только если дополнительное поле имеет тип "Изображение". Тег выводит только URL для уменьшенной копии загруженного изображения, где "поле" это имя дополнительного поля
[xfvalue_image_url_поле]
Данный тег может использоваться только если дополнительное поле имеет тип "Изображение". Тег выводит только URL для полноразмерной картинки загруженного изображения, где "поле" это имя дополнительного поля
[xfvalue_поле image="Nr"]
Выводит загруженные для дополнительного поля с типом "Галерея" изображения, по отдельности. Где "поле" это имя дополнительного поля, а "Nr" это номер изображения из галереи. Например, при использовании [xfvalue_test image="2"] будет выведено изображение номер два, загруженное в дополнительное поле с именем "test".

[xfinput_поле]
Выводит ваше выбранное дополнительное поле в форме добавления новости в нужном вам месте, где "поле" это имя дополнительного поля для новостей Используется в шаблоне addnews.tpl
{xfields}
Вывод дополнительных полей при добавлении новости

И так. Надеюсь функционал вам понятен. Если вы новичок в этом, то советую вам создать несколько дополнительных полей и понять как они работают.

Теперь перейдем непосредственно к примерам.
Самый простой из них это ссылка в виде кнопки. У нас есть поле "link" - это простое поле с одной строкой.
[xfgiven_link] <a href="[xfvalue_link]" class="btn"> Кнопка </a> [/xfgiven_link]
[xfnotgiven_link] Ошибка! Поле не заполнено. [/xfnotgiven_link]
В данном случае у нас выводится кнопка с классом "btn" если дополнительное поле заполнено и содержит информацию(в данном случае ссылку)
Если поле не заполнено, то выводится содержимое тегов "xfnotgiven" т.е текст "Ошибка! Поле не заполнено."
Это простой пример использования доп. полей.

Доп поля можно вписывать в любую строку tpl файла. Не важно будь то это ссылка, будь это CSS класс или любой другой тег.
<div class="[xfvalue_panel]">
Содержимое shortstory.tpl
</div>


CSS код. (вписываем в любой css файл)
.black {background-color: #000;}
.red {background-color: #E9573F;}
.blue {background-color: #4A89DC;}
Поле должно иметь следующие параметры:

Таким образом, при публикации статьи нам будет доступен список оформления фона краткой новости. При выборе цвета, будет меняться фон.

Так же доп. поля можно использовать с хаком - Как использовать PHP скрипты в шаблоне?
<?php
echo "<h2>Заголовок</h2>";
echo "[xfvalue_php]";
?>
Вставляем в шаблон полной/краткой новости и вуоля! Поле и там будет работать.

Как скрыть определенное доп.поле от остальных пользователей и отображать определенной группе?
<script type="text/javascript">
$(document).ready(function() {
    if( dle_group != 1 ) {
        $('#xfield_holder_panel').hide(); 
    }
});
</script>
dle_group != 1- id группы которой доступно поле
$('#xfield_holder_panel').hide();- Название поля

Это вставляем в самое начало файла addnews.tpl и поле "panel" будет доступно только администрации

Надеюсь статья была полезна. Буду искать новые способы, и обязательно поделюсь с вами! wink
скачать dle 11.1смотреть фильмы бесплатно
Активируем кнопку после заполнения поля ввода на JS
Активируем кнопку после заполнения поля ввода на JS
16-01-2019, 23:23, Блог
Как убрать поле полного либо краткого описания при публикации новости?
Как убрать поле полного либо краткого описания при публикации новости?
1-07-2017, 13:55, Дополнения DLE
  1. Ислам

    Ислам @Ислам Каляков 5 декабря 2018 22:53

    Ты лучший, спасибо!

  2. Игорь

    Игорь Гость 14 октября 2019 19:43

    Позновательно. Не фанат dle но смотрю в последнее время как то активизировались апгрейты и все больше коллег переходит на дапоксетин cmc. Вот и сам уже подумываю. Может и решусь с вердпресса соскочить наконец то. И друпал также надоел. Хотя там все ровно но хочется чего то нового. Дле как раз такая тема.

{login}

Твой комментарий..

Имя:*
E-Mail:
Loading...

Актуальная версия 13.3


Loading...

Настоятельно рекомендуем ознакомиться с информацией по ссылке ниже.

Сайт мошенников
Полезно знать

Ваша реклама за 300 р.м

В любом месте сайта

Обратная связь
Loading...

Нашли ошибку?
Вы можете сообщить об этом администрации.
Выделив текст нажмите CTRL+Enter