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

В Datalife Engine (DLE), как и во многих других CMS, присутствует такая вещь как дополнительные поля новостей, которые во многих случаях могут быть полезны владельцу сайта. Допустим, Вам надоело к каждой новости приписывать

Источник: http://bla-bla-bla

Так что же мешает Вам создать поле "Источник", записать одну строчку в шаблон и впредь просто писать URL источника в отдельное поле при добавлении новости? Ну разве что незнание того, что в DLE есть такая удобная функция.

В каких же случаях особенно удобно использовать дополнительные поля? Допустим, Вы являетесь владельцем сайта, на котором можно скачать фильмы. Конечно, если Вы воруете новости с других сайтов, Вам, возможно это и не нужно - скопировал всё до единого символа с сайта конкурента и вставил в описание новости. А вот если Вы совестливый человек, который лично ищет подробную информацию о фильмах, то поверьте, можно значительно облегчить себе жизнь, создав дополнительные поля: Оригинальное название, Страна, Режиссер, Жанр, Продолжительность, Год выпуска, Перевод, В ролях, Описание, Доп. информация, Формат, Видео, Аудио, ну и конечно Ссылки для скачивания. И нужные данные по фильму вписывать в отдельное поле, а привычное "Краткое описание" использовать только для добавления обложки фильма через инструмент "Загрузка файлов на сервер". В такое случае поле "Полное описание" Вам вообще не понадобится, просто поле с ссылками для скачивания будет присутствовать только в полной новости.

Использование дополнительных полей особенно удобно в тех случаях, когда на сайте предусмотрено добавление новостей пользователями. Конечно, чтобы пользователи по собственной инициативе добавляли на Ваш сайт новости, он должен быть довольно популярным, но не об этом речь. Поверьте, без использования вышеприведённого способа Вам не удастся донести до всех Ваших пользователей правила добавления новостей на сайт. А если на странице добавления новости уже присутствуют поля с пояснениями, то Вы существенно облегчите жизнь и пользователям, и себе.

Перейдём к практике. Думаю, раздел "Дополнительные поля новостей" Вы найдёте. Теперь щёлкнем "Добавить поле" и посмотрим, какие данные нам предлагают ввести.
Название поля. Это значение мы пишем, чтобы идентифицировать поле для последующего добавления в шаблон. Пользователи этого на сайте не увидят, это поле мы заполняем только для себя. Использовать можно только латинские буквы, например для поля "Оригинальное название" можно написать "originalnoye_nazvaniye" или как-нибудь попроще, например "original".
Описание поля. Для примера, приведённого выше, пишем "Оригинальное название".
Категория: Те категории, в которых при добавлении новости Вам будет предложено ввести данные в поле.
Тип поля: Одна строка, несколько строк (т. е. textarea) или выбор из предложенного списка.
Значение по умолчанию: Без комментариев. Скажу лишь, что при типе поля "Список" здесь нужно указать варианты, предлагаемые в выпадающем меню.

Нам придётся немного помучиться и добавить каждое поле по отдельности. После этого нужно сделать так, чтобы данные, введённые в эти поля, отображались на сайте. Для этого отредактируем шаблон. Нам понадобится внести изменения в два файла: templates/Ваш_шаблон/shortstory.tpl и templates/Ваш_шаблон/fullstory.tpl. Сделать это можно прямо из админки в разделе "Шаблоны сайта", эти файлы там носят названия "Краткое содержание" и "Статья целиком". В оба файла мы записываем одно и то же, за исключением поля "Ссылки для скачивания" - оно должно присутствовать только в полной новости. Для того, чтобы данные в дополнительных полях отображались в шаблоне, используем BB-теги [xfgiven_x] (парный) и [xfvalue_x], где x - это название поля, которое мы задавали при его создании. Например:

[xfgiven_original]Оригинальное название: [xfvalue_original]
[/xfgiven_original]

Как Вы понимаете, [xfvalue_x] - это значение поля, введённое при создании новости, а парным тегом [xfgiven_original] нужно ограничить ту часть текста, где содаржится описание и значение поля - если Вы оставили то или иное поле пустым, то текст между открывающим и закрывающим тегом не будет отображаться. Итак, Вы теперь знаете всё, что Вам нужно для оформления шаблона, можете располагать элементы на странице как угодно, например таблицей - обложка фильма слева, а информация о нём справа (Как Вы помните, обложку фильма мы задаём в кратком описании, поэтому за него отвечает привычный нам {short-story}).

Дам ещё один совет. Если Ваши фильмы находятся на файлообменниках, причём нескольких, то имеет смысл сделать для каждого из них отдельное поле для ссылок и в шаблон краткой новости добавить что-нибудь вроде этого:

Залито на: [xfgiven_rapidshare]Rapidshare[/xfgiven_rapidshare][xfgiven_megaupload], Megaupload[/xfgiven_megaupload][xfgiven_depositfiles], Depositfiles[/xfgiven_depositfiles]

Кажется, это всё. Хотя нет, на самом деле осталось одна мелочь. Вы наверняка знаете, что DLE автоматически генерирует meta-теги в соответствии с {short-story} и {full-stоry}. Сами понимаете, что ничего толкового в meta-тегах не окажется если в {short-story} у нас будет только картинка. Давайте сделаем так, чтобы meta-теги генерировались на основе содержимого поля "Описание". Для этого открываем файл engine/modules/show.full.php

Находим:

    if ($row['keywords'] == '' AND $row['descr'] == '') create_keywords ($row['short_story'].$row['full_story']);

Заменяем на:

    $dscname = "opisaniye"; //Название поля с описанием, на основе которого мы будем составлять meta-теги
    preg_match("|$dscname\|(.*?)\|\||i", $row['xfields'], $dsc);
    if ( empty($dsc[1]) ) $dsc[1] = substr($row['xfields'], strpos($row['xfields'], "$dscname|")+strlen($dscname)+1);
    if ($row['keywords'] == '' AND $row['descr'] == '') create_keywords ($dsc[1]);

Написано, конечно, немного по-извращенски, но я только так умею. Главное что работает. :)

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

Сожжен автомобиль руководителя Черкасского СЛС
О копирайтинге подробно


Подписаться на RSS

2 сентября 2008 • Категории: Сайтостроение, PHP, Datalife Engine • Просмотров: 38348 • Комментариев: 18 • Распечатать
 

mihawin

Очень помогло, но хотелось бы побольше информации о Datalife Engine

2 июня 2009 15:35 • Комментариев: 1
 

onknig

 Спасибо , сделаю на своём сайт дополнительные поля .

14 июня 2009 14:50 • Комментариев: 1
 

JIexaman

Очень благодарен. Очень помогло! smile

5 июля 2009 10:46 • Комментариев: 1
 

fujikos

Ненавно решил начать делдать сайты на DLE, как раз в цвет статью. нашел Вашу. Спасибо.

10 июля 2009 03:33 • Комментариев: 1
 

Slayk

Очень помагала статейка! Я новичёк и только начал осваивать DLE, пытаюсь сделать сайтик, на котором будут игры для PSP (игровая приставка Sony PlayStatyon Portable) и дополнительные поля оказались очень классной штукой! Постоянно "ручками" в код вписывал ссылку на файлообменник, а тут всё так удобно оказалось! Буду учиться дальше! Всем Вам благ и успехов!


9 августа 2009 20:46 • Комментариев: 1
 

Володя

Мне надо чтоб инфа выводилось в полной новости[xfgiven_original]Оригинальное название: [xfvalue_original]

[/xfgiven_original]

Мне надо это вставить в fullstory?


3 ноября 2009 15:32 • Комментариев: 1
 

elena

спасибо большое за статью, подскажите пожалуйста как в данном случае реализовать вывод метатегов в версии ДЛЕ 8.2.

28 ноября 2009 14:45 • Комментариев: 1
 

akuba

спасибо, кратко и по делу

22 декабря 2009 00:09 • Комментариев: 1
 

V1ruS

А можно как то использывать дополнительные поля чтобы пользователи вписывали в них линки на скачку! А то уменя как бы получается но линки почемуто не кликабельны!

4 января 2010 23:59 • Комментариев: 1
 

vova

Жаль что блог больше не ведется

21 мая 2010 21:16 • Комментариев: 21
 

Gonzales

А можно как то использывать дополнительные поля чтобы пользователи вписывали в них линки на скачку! А то уменя как бы получается но линки почемуто не кликабельны!

Проще пареной репы.

В шаблоне в нужном месте вставляете такой код

Залито на: [xfgiven_rapidshare]Rapidshare[/xfgiven_rapidshare]

предварительно создав доп поле rapidshare. B в поле надо просто вставить полную ссылку... Если поле можно оставлять пустым и в него ничего не введут при создании новости, то на странице ничего не появится после "Залито на:"...



Ха! Сайт подхватывает html-коды и выводит результат.

Повторим. Уберите в коде символ "звёздочка" и будет вам щасте.



Залито на: [xfgiven_rapidshare]Rapidshare[/xfgiven_rapidshare]



а теперь ещё вот так попробуем.

 

Залито на: [xfgiven_rapidshare]Rapidshare[/xfgiven_rapidshare]

 

Если и сейчас не будет видно, то тут уж я бессилен... Не смогу бороться с сайтом... :)


27 октября 2010 01:08 • Комментариев: 1
 

Артем

Подскажите как картинку вставлять через дополнительное поле! а то я все перепробывал!

5 января 2011 05:17 • Комментариев: 2
 

Лаврушка

С картинкамибез мода как я понял ни как, через доп. поле с несколькими строками и то не отобразилась да и не лучший это вариант.
Больше интерисует поиск бы ещё по дополнительным полям.

11 января 2011 14:38 • Комментариев: 1
 

trolll

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

13 января 2011 11:35 • Комментариев: 12
 

Famil

Доп. поля  виде загрузка файл  сделат можна?

20 февраля 2011 17:28 • Комментариев: 1
 

qmas

У меня токая проблема не получается создать допальнительное поля новостей вот верху весит такая ошибка " method="get" name="xfieldsform"> а при нажатие на добавить поля он пишет нет такой страницы как быть ??

12 марта 2011 13:01 • Комментариев: 2
 

Категории

Сайтостроение
Раскрутка
Блоггинг
Дизайн
Интернет
Обзоры
PHP
Datalife Engine
О блоге
Акции
Мои успехи
Оффтоп

Популярное

Установка и настройка DLE
Создание и поддержка форума
Увеличение количества страниц быстрого набора в Opera
Граббер новостей с xuk.ru для DLE
Создаём варезник
Использование дополнительных полей в DLE
Этот блог больше не ведётся
Как удержать пользователя на форуме.
Создаём сайт с он-лайн фильмами
Новый телевизор и медиаплеер WD-TV

Рекомендую

Комментаторы

vova (21)
trolll (12)
Sk8er (11)
Девятое SEO (8)
Mad (6)

Архив

Май 2012 (14)
Апрель 2012 (21)
Март 2012 (15)
Февраль 2012 (3)
Январь 2012 (5)
Декабрь 2011 (8)
Ноябрь 2011 (4)
Октябрь 2011 (2)
Сентябрь 2011 (6)
Август 2011 (21)
Июль 2011 (4)
Июнь 2011 (2)
Май 2011 (2)
Март 2011 (1)
Февраль 2011 (1)
Январь 2011 (2)
Ноябрь 2010 (2)
Июль 2010 (1)
Июнь 2010 (1)
Май 2010 (1)
Март 2010 (1)
Февраль 2010 (1)
Январь 2010 (2)
Декабрь 2009 (2)
Ноябрь 2009 (3)
Октябрь 2009 (2)
Сентябрь 2009 (4)
Июль 2009 (5)
Июнь 2009 (2)
Май 2009 (2)
Апрель 2009 (2)
Март 2009 (9)
Декабрь 2008 (2)
Ноябрь 2008 (4)
Октябрь 2008 (5)
Сентябрь 2008 (7)
Август 2008 (8)

Счётчики


Рейтинг блогов

Копирование материалов с сайта возможно только с указанием ссылки на источник.
Copyright © 2002-2008 SoftNews Media Group All Rights Reserved.
Powered by DataLife Engine © 2008. Design by GORDIN.SU © 2008 - 2012.