Главная » FAQ DataLife Engine

FAQ DataLife Engine

Вопрос: Скажите какие минимальные требования к установленному ПО на сервере.
Ответ: Для работы скрипта, необходимо наличие минимум PHP 4.3.2+ или PHP 5.0+ ,а также MySQL 4.0+ или MySQL 5.0+.

Вопрос: Скажите я установил бесплатную демо версию и хочу настроить сначала свой сайт на ней, смогу ли я в дальнейшем обновить скрипт на платную версии, без потери своих статей и шаблона.
Ответ: Безусловно сможете, такая возможность присутствует. Если вы обновляетесь в пределах одной версии, то вам достаточно только заменить все файлы в папке /engine/, на файлы из платного дистрибутива, если версии отличаются то вы следуете стандартным инструкциям по обновлению с одной версии на другую.

Вопрос: Скажите я приобрел годовую лицензию за скрипт, могу ли я дальнейшем доплатить до пожизненной лицензии, или я должен оплачивать полную стоимость.
Ответ: После приобретения готовой лицензии, в течении трех месяцев, вы можете доплатить разницу в цене между годовой лицензией и пожизненной лицензией. По истечении трех месяцев после покупки, вы должны уже оплачивать полную стоимость за пожизненную лицензию.

Вопрос: Где можно прочитать документацию по установке и обновлению скрипта.
Ответ: Описание установки и обновления скрипта находится в вашем дистрибутиве в файле Documentation/index.html. Полная справочная информация по скрипту, а также по тегам используемым в шаблонах ноходится в файле Documentation/readme.chm.

Вопрос: Я скачал скрипт, но при попытке запустить install.php, вижу только "Internal Server Error".
Ответ: Данная проблема происходит по причине того, что на вашем сервере отсутствует поддержка модуля mod_rewrite. Удалите файл .htaccess из папки, где установлен ваш скрипт и запустите файл установки скрипта install.php, в дальнейшем при установки скрипта отключите поддержку ЧПУ.

Вопрос: Установил скрипт, без каких либо ошибок, но при переходе например на полную новость, получаю ошибку, что такой страницы не существует.
Ответ: Это аналогичная проблема, описанная выше и происходит по причине того, что на вашем сервере отсутствует поддержка модуля mod_rewrite. Для ее решения вам необходимо зайти в настройки скрипта и отключить в настройках поддержку ЧПУ.

Вопрос: Я обновил свой скрипт на новую актуальную версию, и после этого сделал восстановление резервной копии базы данных от более старой версии, в результате, появились ошибки MySQL на сайте.
Ответ: Вы совершили грубейшее нарушение рекомендаций по обновлению, нельзя восстанавливать базу данных от старых версий, на новой версии скрипта, т.к. при обновлении дополняется и изменяется структура базы данных, для поддержки работы именно новой версии. Для решения этой проблемы, вам необходимо поставить в файле engine/data/config.php версию скрипта, к которой принадлежит ваша восстановленная база данных и запустить скрипт обновления upgrade/index.php.

Вопрос: У меня возникли проблемы на сайте, причина которых мне непонятна, есть ли какие-то действия, которые я должен выполнить в первую очередь.
Ответ: Да такие действия есть, как показывает практика, многие при установке или переносе сайта, забывают о таких вещах как права на запись в папки. После установки или переноса скрипта, вы должны убедиться что папки внутреннего кеша скрипта engine/cache/ и engine/cache/system доступны для записи (установлен CHMOD 777). Также эти папки должны быть пустыми, за исключением файла .htaccess в них, все необходимое в них скрипт создаст автоматически самостоятельно. Также вы должны убедится что доступна для записи папка engine/data/ и все файлы внутри нее.

Вопрос: После обновления скрипта, мой шаблон перестал корректно работать, какие изменения я должен внести.
Ответ: Ссылка на описание внесенных в дистрибутив изменений публикуется вместе со ссылкой на скачивание дистрибутива. Обратите внимание, что публикуются изменения только с момента последнего релиза, и если вы обновляетесь с более старых версий, то вам нужно смотреть все изменения отдельно, в каждом релизе.

Источник: http://dle-news.ru/



...забыл пароль...(касается администратора, в других группах проблема решается редактированием пользователей в Админке)
выполняем sql запрос через phpMyAdmin:
update dle_users set password=md5(md5('новый пароль')) where name = 'логин пользователя'


...сам себя забанил...
выполняем sql запрос через phpMyAdmin:
UPDATE `dle_users` SET `banned` = 'no' WHERE `user_id` =1;


...сам себя перевёл из группы администраторов...
выполняем sql запрос через phpMyAdmin:
UPDATE `dle_users` SET `user_group`='1' WHERE `user_id` =1;


Вывод новостей на страницах
Основной макет вашей страницы находится в файле шаблона main.tpl именно этот файл движок подгружает в первую очередь и к нему подключаются все другие компоненты движка. Остановимся на основных из них. {АJАХ}, {infо}, {соntеnt}, {сustоm} именно эти теги отвечают за правильный вывод новостей.

Тег {АJАХ} выводит служебные скрипты javascript необходимые для нормальной работы движка в целом и технологии AJAX в частности. Рекомендуется размещать в самом начале шаблона после тега
<body>


Тег {info} выводит служебную информацию и ошибках о произведенных действиях (например "Вход не выполнен, неверный пароль" или "Необходимо заполнить все поля") рекомендуется устанавливать перед тегом {cоntеnt}

Тег {content}, отвечает за непосредственный вывод статей и прочих встроенных модулей в движок

Тег {tags}, отвечает за вывод облака тегов (специальных ключевых слов добавленнных в новость)

Теги [sort]{sort}[/sort], отвечают за вывод выбора пользователем порядка сортировки новостей, если это разрешено в настройках скрипта

Тег {custom}, отвечает за вывод статей в пользовательском формате, имеет следующие параметры:
{custom category="2,7" template="custom" aviable="global" from="0" limit="10" cache="yes"}


Где:
category это список ID категорий, из которых производить выборку новостей, разделяются запятой без пробелов.

template файл шаблона который будет использоваться при выводе новостей в данном случае это будет custom.tpl если вы используете на сайте несколько шаблонов то данный файл должен присутствовать в каждом шаблоне. В данном шаблоне используются теги аналогичные для короткой новости.

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

global - во всех разделах
main - на главной странице
date - при просмотре новостей за определенные даты
cat - при просмотре категории
showfull - при просмотре полной новости
search - при просмотре результатов поиска
userinfo - при просмотре профиля
register - при регистрации
stats - при просмотре статистики
pm - при просмотре персональных сообщений
feedback - при просмотре обратной связи
favorites - при просмотре закладок
newposts - при просмотре новых сообщений
addnews - при добавлении новости
lastcomments - при просмотре последних комментариев
static - при просмотре статических страниц
catalog - при просмотре каталога страниц

Вы можете комбинировать разделы при помощи "|", например aviable="userinfo|register|main" будет выводить ваши новости на главной, при регистрации и при просмотре профиля пользователя.

from номер новости с которой начнется вывод

limit сколько новостей будет выведено

cache принимает значения yes или no - устанавливает кешировать вывод или нет, рекомендуется кешировать для снижения нагрузки.

Внимание необходимо указывать все параметры обязательны а также необходимо соблюдать их порядок.

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

Тег [aviable=раздел]текст[/aviable], выводит текст заключенный в теги если просматривается указанный раздел сайта:

Тег принимает параметры аналогичные параметру aviable тега custom.

Для примера:

[aviable=userinfo|register|main] текст [/aviable]

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

Внимание вы можете задать также тег [not-aviable=userinfo|register|main] текст [/not-aviable] который полностью противоположен тегу aviable и выводить текст везде кроме перечисленных разделов.

Тег [category=X]текст[/category], выводит текст заключенный в теги если просматривается указанная категория:

Тег принимает в качестве параметра ID категории, и допускает перечисление нескольких категорий

[category=1,2,3] текст [/category]

будет выводить текст заключенный в теги, если посетитель просматривает категории у которых ID равен 1 или 2 или 3.

Внимание вы можете задать также тег [not-category=1,2,3] текст [/not-category] который полностью противоположен тегу category и выводить текст везде кроме перечисленных категорий.

Тег [group=X]текст[/group], выводит текст заключенный в теги если пользователь принадлежит указанной группе пользователей:

Тег принимаем в качестве параметра ID группы, и допускает перечисление нескольких групп

[group=1,2,3] текст [/group]

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

Внимание вы можете задать также тег [not-group=1,2,3] текст [/not-group] который полностью противоположен тегу group и выводить текст для всех, кроме перечисленных групп.

{banner_имя} этот тег предназначен для вывода рекламной информации на сайте. Само имя для баннера задается в специальном модуле в админпанели.

{inform_имя} этот тег предназначен для вывода RSS информеров и новостей с других сайтов. Имя и все настройки для данного тега устанавливаются в админпанели скрипта.

Также вы можете подключать один шаблон в другой, используя тег
{include file="my_block.tpl"}
данный тег подключает указанный файл my_block.tpl в шаблон. Тег призван облегчить структуру шаблона, если используется сложная верстка со множеством тегов.

Делаем ротацию баннеров стандартными средствами DLE
Для этого необходимо создать в разделе Управление рекламными материалами два банера с одинаковыми именами, но естественно разными кодами. В итоге получаем ротацию банеров.

Изменяем количество выводимых меток (тегов) в блоке DLE
Открываем файл engine/modules/tagscloud.php и ищем:
$db->query("SELECT SQL_CALC_FOUND_ROWS tag, COUNT(*) AS count FROM " . PREFIX . "_tags GROUP BY tag ORDER BY count DESC LIMIT 0,40");

и заменяем на:
$db->query("SELECT SQL_CALC_FOUND_ROWS tag, COUNT(*) AS count FROM " . PREFIX . "_tags GROUP BY tag ORDER BY count DESC LIMIT 0,60");

где LIMIT 0,60 — количество тегов извлекаемые из базы данных.
Ищем в том же файле:
if ($row['count'] >= 40) {

и заменяем на:
if ($row['count'] >= 60) {

где 60— количество тегов выводимые в блоке.