Установка DLE. Создание простого модуля для CMS Datalife Engine (DLE)

Поговорим о меню на сайте dle. Точнее о том, как добавить свои пункты в меню, или же заменить существующие на новые. Довольно часто, у новичков только установивших данную CMS возникает вопрос: «Как заменить стандартные пункты меню, в стандартном шаблоне, на свои?» Если, в wordpress, это можно осуществлять без редактирования кода, то в dle ситуация иная, в код все же придется залезть и немного там разобраться. Однако сложного в добавлении новых пунктов ничего нет, и я надеюсь, сегодня вы сможете в этом убедиться.

Итак, перейдем к делу. Для начала нам понадобится создать пункты, которые в последствии необходимо внедрить в меню dle, будь-то страницы или категории. Для этого заходим в админ панель и жмем на пункт «список всех разделов.»

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

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

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

После заполнения необходимых полей, как минимум первых двух, нажимаем на кнопку добавить. Это действие создаст новую категорию на сайте, ссылку на которую мы добавим в меню dle. И особое внимание обратите на второе поле, где необходимо было прописать альтернативное имя категории, которое будет составлять адрес, по которому будет находиться категория. В моем примере, он будет выглядеть так: http://сайт.ru/primer_category/

Теперь, перейдем к непосредственному добавлению нового пункта в меню dle.

Для этого, в админ панели нужно перейти в раздел «Шаблоны сайта».

А дальше необходимо выбрать один из двух файлов, если используется стандартный шаблон, в которых прописаны меню на сайте. В стандартном шаблоне имеется два вида меню: это, и горизонтальное и вертикальное. За горизонтальное меню отвечает файл topmenu.tpl, а за вертикальное меню в левой колонке сайта, отвечает файл sidebar.tpl. Оба этих файла можно найти в левой колонке раздела «Шаблоны сайта». А при клике на один из них, в правой колонке появится сам код данного файла.

После открытия файла, нам необходимо исправить любой существующий пункт на наш. То есть, изменить название, в данном случае на название категории. И подставить ссылку на саму категорию (альтернативное имя), вместо #. То есть если я заменю пункт «О сайте», то код меню станет выглядеть так:

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

Если вы в чем-то не уверены, например, что удалите что-то лишнее, то просто сделайте , чтобы в случае непредвиденных ситуаций его можно было восстановить.

А у меня на этом все.

В интернете огромное количество сайтов, и все они работают на разных движках. Различия, в основном, заключаются в функциональных возможностях движков и в удобстве работы для посторонних пользователей сайтов. Самыми популярными движками являются Joomla , WordPress, Drupal, DLE. На последнем остановимся более подробно, так как, являясь одним из самых удобных и простых движков, он все чаще выбирается веб-мастерами и становится основой большинства веб-ресурсов.

Движок DLE — это DataLifeEngine – основа, которую предварительно рассчитывали использовать для ресурсов с новостными лентами и обзорами. Сегодня на этом движке работают самые разнообразные сайты, посвященные каким угодно тематикам.

Свою популярность движок DLE заслужил благодаря огромному функционалу, о котором всё подробно написано на сайте dle-news.ru. Создатели этого движка предлагают две версии своего продукта: платную и бесплатную. Вполне логично предположить,что бесплатная версия будет с более ограниченными возможностями. Но несмотря на это, бесплатная версия продукта DLE – это отличный движок и для начинающих веб-мастеров, и для более продвинутых. На нем прекрасно работают сайты не только с новостями, но и посвященные кулинарии, медицинской тематике и т.д.

На какой хостинг можно установить DLE

Перед тем, как начать установку движка DLE, неплохо было бы ознакомиться с теми требованиями, которые он предъявляет к серверу. Во-первых, это несколько установленных библиотек: PHP Zlib, PHP XML, PHP GD2, PHP iconv. Кроме того, программное обеспечение должно включать Apache версии 2.0 и выше, PHP 4.3.2+ или PHP 5.0+ и MySQL версии не старее 4.0. оперативная память должна быть размером не менее 8 мегабайт, но это минимум. Никто не запрещает пользоваться оперативкой с 16 мегабайтами, на которой продукт будет работать еще лучше.

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

Проверка хостинга на соответствие

Описание процесса установки, которое вы прочтете далее, произведено на основе выводов, сделанных после установки движка на тестовый веб-ресурс. Для более наглядного примера представлены скриншоты каждого этапа процесса установки.

Начинаем установку с проверки полного списка настроек. Для этого в корень сайта добавляем текстовый документ, присваиваем ему имя phpinfo.php, а в него записываем код:

Затем производим запуск скрипта, который у нас получилось создать. В браузере набираем следующее: https://мой_сайт.ру/phpinfo.php. После этого мы можем видеть на странице следующую картину:

Те места, которые обведены красным, являются главными параметрами, определяющими дальнейшую работу создаваемого веб-ресурса. К примеру, для того, чтобы можно было работать с графическими объектами, нужна нормальная работа Библиотеки PHP GD2. Если ее установка будет произведена некорректно, на сайте не будет отображаться капча.

Также для того, чтобы создаваемый веб-ресурс нормально работал, необходимо установить базу MySQL. Система будет запрашивать логин и пароль. Чтобы не забыть эти данные, лучше где-нибудь себе их записать. Для настройки базы пользуемся панелью управления, которая есть на хостинге.

Подробная инструкция по установке DLE

После того, как пакет с движком скачан на компьютер, его нужно распаковать и установить. Но устанавливать мы будем не все подряд, а только папку upload и папку Documentation. В том случае, если на хостинге есть функция распознавания архивов zip, то процесс установки пойдет быстрее. Если же такая функция не поддерживается, то закачку файлов из архива придется производить по отдельности.

Очень удобно при установке движка DLE работать с TotalCommander. Когда вы будете копировать файлы или папки на сервер, отметку с надписи «Перевести имена файлов в нижний регистр» нужно убрать.

Если сервер позволяет распознать и распаковать архив, помещаем в него сразу все те файлы, которые находятся в папке upload.

Теперь завершаем работу TotalCommander и продолжаем установку при помощи ftp-клиента. Для корректной работы сайта необходимо очень внимательно ввести данные файлов и папок сервера.

Чтобы подкорректировать Атрибуты, надо выделить нужную папку. После того, как вы изменяете права доступа папки, замены их на содержимое папок не происходит. Выделять файлы и папки, которые будем изменять, удобнее всего через TotalCommander или сочетанием клавиш на клавиатуре Alt+A.

В отрывшееся окошко вписываем то, что нам нужно и жмем OK.

— Установите для папки templates и всех вложенных в нее папок права на запись (CHMOD 777)

— Установите для всех файлов в папке templates права на запись (CHMOD 666)

— Установите права для записи (CHMOD 777) для папок backup, uploads, а также для всех папок, находящихся внутри них.

— Установитеправадлязаписи (CHMOD 777) дляпапок /engine/data/, /engine/cache/, /engine/cache/system/.

Когда все корректировки будут внесены, в браузере вводим следующую запись: https://proba.regciti.ru/install.php. Она означает, что мы собираемся запустить файл с названием install.php. После того, как файл будет запущен, в каждом открывающемся окошке будут появляться подсказки. Ориентируясь на эти подписи, продолжаем процесс установки. В принципе, он начнется автоматически, а система сама выполнит проверку всех тех файлов, которые должны быть установлены, и сообщит вам о завершении установки.

Теперь можно увидеть предварительный результат того, над чем вы все это время так старательно трудились. Вводим в строку браузера https://имя вашего сайта/index.php. Перед вами откроется демонстрационная страничка. Чтобы войти в админ-панель и начать работу, нужно ввести в адресную строку следующую запись: https://имя вашего сайта/admin.php. На экране в случае правильной установки должна появиться следующая картинка:

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

После этого автоматически начнется процесс проверки всех тех компонентов и файлов, которые были установлены. Скрипт автоматически укажет на те ошибки, которые были допущены и которые нужно исправить, чтобы продолжить работу. НА этой картинке есть перечень нескольких пунктов. Они должны быть без красной обводки, — это будет означать, что ошибок скрипт не обнаружил и можно продолжать работу дальше. Если же какой-либо пункт будет в красной обводке, исправляем ошибку. В принципе, скрипт может потребовать исправить ошибки,а вы можете отказаться, но тогда ожидайте, что система будет в некоторых моментах давать сбой. И это будет только ваша вина, а не провайдеров и не пользователей. Если же ошибки исправить не удается, можно попросить консультации или помощи у провайдера, который предоставляет вам место на сервере.

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

Продолжаем и получаем новое открывшееся окошко. Здесь можно будет узнать о том, какие ошибки были допущены в тот момент, когда вы производили изменения Атрибутов для папок и файлов. Скрипт сам вам укажет, где вы допустили ошибки или пропустили что-то.

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

Сервер MySQL:

Кодировка для MySQL:

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

Имя базы будет таким, каким мы его присвоили в самом начале. В нашем случае это proba_regciti.

В пункте «Имя пользователя» вводим то т логин пользователя, от имени которого создавалась база. На том этапе логин и пароль мы еще на всякий случай записали.

Указываем адрес электронной почты в строке E-mail. Жмем «Продолжить». В случае отсутствия ошибок ввода на предыдущей страничке перед вами появится надпись: «Поздравляем! Установка успешно завершена».

В следующем открывшемся окошке уделяем внимание нескольким моментам.

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

Надеюсь теперь Вы поняли, как устанавливать DLE на хостинг. Если всё ещё остались вопросы – задавайте их в комментариях к данной статье.

Опубликовал author

Приветствую всех, кто посвящает этим строкам свое драгоценное время.

В этой статье я хочу рассказать о способах оптимально настроить сервер и систему управления контентом DataLife Engine. За 4 года работы с интернет сайтами и серверами я усвоил, что безопасность превыше удобства и что ей нужно уделять внимание. Оговорка : я не претендую на авторство чьей-либо интеллектуальной собственности! Весь материал собран на просторах интернета.

Ниже будут описаны действия, которые помогут распределить нагрузку сервера, обезопасить его от DOS атак, ограничить доступ к FTP протоколу и правильно сконфигурировать систему DataLife Engine.

Защита и конфигурация вашего сервера.

1. Настройка конфигурации сервера с использованием связки front-end Nginx к Apache.

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

В случае схемы с применением front-end сервера получим значительную экономию ресурсов за счет того, что после поступления запроса, nginx передает запрос Apache и быстро получает ответ. В итоге, Apache, после того как отдал ответ nginx, освобождает память. Далее с клиентом взаимодействует веб-сервер nginx, который как раз и написан для раздачи статического контента большому количеству клиентов при незначительном потреблении системных ресурсов.

Для корректной работы нашей связки понадобиться модуль для Apache. Возникает такая необходимость по следующей причине: запросы к Apache приходят с IP-адреса, на котором работает nginx, соответственно, в журнальных файлах Apache будет фигурировать только IP-адрес nginx сервера. Также без использования данного модуля начнутся проблемы со скриптами, в которых используется IP-адрес посетителя и перестанет правильно работать механизм ограничения доступа по IP-адресам с помощью.htaccess.

Установка NGINX на популярные ОС.

Red Hat Enterprise Linux 4 / CentOS 4
Для установки nginx в этих операционных системах вам необходимо подключить дополнительный репозиторий пакетов.

Red Hat Enterprise Linux 5 / CentOS 5
Для установки nginx в этих операционных системах вам необходимо подключить дополнительный репозиторий пакетов EPEL.

ASPLinux Server 5 / Fedora
nginx присутствует в стандартной поставке дистрибутива.

Если репозитории подключены или просто не требуются, выполняем: yum install nginx

Установка Apache.

Чтобы установить Apache веб-сервер достаточно выполнить: yum install httpd

Установка mod_rpaf.

1. Устанавливаем пакет httpd-devel:

yum -y install httpd-devel


2. Скачиваем и устанавливаем mod_rpaf:
Входим в директорию /usr/local/src

cd /usr/local/src


Загружаем в /usr/local/src файл mod_rpaf-0.6.tar.gz

wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz


Распаковываем mod_rpaf-0.6.tar.gz

tar xzf mod_rpaf-0.6.tar.gz


Переходим в каталог в который распаковали

Ставим модуль в систему

apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c


3. Далее нужно создать файл конфигурации mod_rpaf - /etc/httpd/conf.d/rpaf.conf и добавить в него следующие строки:


RPAFenable On
RPAFproxy_ips 127.0.0.1 xx.xx.xx.xx yy.yy.yy.yy


где xx.xx.xx.xx и yy.yy.yy.yy - IP адреса вашего сервера. Если на сервере более двух IP, добавьте их по той же аналогии.

service httpd restart


4. В nginx внутри блока http {} должны быть указаны строки:

proxy_set_header Host $host;


Если данные строки указаны, дописывать не нужно.

Если модифицируется nginx.conf, следует перезапустить nginx:

/etc/init.d/nginx stop
/etc/init.d/nginx start


5. Как проверить, работает ли установленный модуль?
На любом из доменов, которые расположены на Вашем сервере, разместите файл test.php с содержимым:

" echo $_SERVER["REMOTE_ADDR"]; ?>"


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

Настройка NGINX.

Ниже приведен конфигурационный файл nginx для работы в качестве front-end сервера. Подразумевается, что nginx будет работать на всех интерфейсах на 80 порту, а Apache будет работать на интерфейсе 127.0.0.1 и порту 8080. Сохраните данный конфигурационный файл в каталоге /etc/nginx/ с именем nginx.conf.

user nginx;
worker_processes 10;
error_log /var/log/nginx/error.log debug;
pid /var/run/nginx.pid;

events {
worker_connections 20000;
}

http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main "$remote_addr - $remote_user [$time_local] $status "
""$request" $body_bytes_sent "$http_referer" "
""$http_user_agent" "http_x_forwarded_for"";
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 30;
send_timeout 900;
server_tokens off;
server {
listen 80;
server_name _;
server_name_in_redirect off;
access_log /var/log/nginx/host.access.log main;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 10m;
}
}


Настройка Apache.

В файле конфигурации Apache /etc/httpd/conf/httpd.conf найдите строку:

и замените ее строкой:

Listen 127.0.0.1:8080


Настройка mod_rpaf.

Добавьте модуль mod_rpaf в файл конфигурации Apache. Для этого в файл /etc/httpd/conf/httpd.conf добавьте следующую строку:

LoadModule rpaf_module modules/mod_rpaf-2.0.so


Затем в этот же файл добавьте строки:

RPAFenable On
RPAFsethostname Off
RPAFproxy_ips 127.0.0.1 192.168.0.1
RPAFheader X-Real-IP


Вместо 192.168.0.1 необходимо поставить IP-адрес сервера.

2. Конфигурация сервера для защиты от dos-атак.

Включаем в nginx кеширование главной страницы для тех у кого нет cookie.

Добавляем ограничения в nginx.conf:

limit_req_zone $binary_remote_addr zone=two:20m rate=2r/s;
server{
location / {
limit_req zone=two burst=5;
}
}
}


Пользуемся tail и awk:

tail -f /var/log/nginx/access.log | grep GET / HTTP/1.1" 503


Подключаем лог:

tail -f /var/log/nginx/access.log | grep GET / HTTP/1.1" 503 | awk "{ print $1 }"


Получаем IP машин:

iptables -A INPUT -p tcp -j DROP -s $IP


Заносим IP в Firewall:

tail -f /var/log/nginx/access.log | grep GET / HTTP/1.1" 503 | awk "{ print $1 }" | xargs -t -l iptables -A INPUT -p tcp -j DROP –s


Теперь установим connlimit для iptables чтобы ограничить подключения ботов. В правилах ставим разрешение на 5 подключений с одного IP, и 25 из подсети класса С.

DDOS атака с 16000 ботов - Load average: 1.4 1.9 2.0

Ограничение доступа по FTP

Для этого нам понадобитсья файл.ftpaccess. Он поможет запретить или разрешить доступ по FTP с указанных IP адресов. Кто-то может задать вопрос: «У меня динамический IP, как мне правильно использовать.ftpaccess?» Ответ я подразумеваю только такой: «Если вам нужна данная надстройка безопасности - приобретите у вашего провайдера статический IP. Много денег у вас за него не попросят.»

Чтобы создать.ftpacces файл нам понадобиться SSH доступ. Можно воспользоваться программой winscp. Настроек в.ftpaccess может быть большое множество, однако нас интересует только один параметр. Прописав эти строки в файле вы закроете полностью доступ от всех:

Deny from all


После написанного выше, никто не сможет зайти на ФТП. Для добавления разрешения доступа определенному IP нужно указать следующие параметры:

Allow from 127.0.0.1
Deny from all


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

Важно! Лучше всего запретить доступ по FTP абсолютно всем и подклчаться только по SSH.

Защита системы управления контентом DataLife Engine.

1. Установите и настройте .

2. Переименуйте файл админпанели и сделайте фейк по старому адресу (www.sait.com/admin.php) при переходе на который пользователь будет заблокирован посредством запрета его ip в.htaccess.

Переименовали? Теперь создаем в корневом каталоге файл ip.txt для хранения ip-адресов. Даем ему и.htaccess права CHMOD – 777.

Создаем файл admin.php следующего содержания:


$ip = getenv ("REMOTE_ADDR");

$log = fopen("ip.txt", "a+");
fwrite($log, "// ".$ip."\n");
fclose($log);

$f = fopen($_SERVER["DOCUMENT_ROOT"] . "/.htaccess", "a");
fwrite($f, "\ndeny from " . $ip);
fclose($f);

Админ панель DataLife Engine

Текст, например: Твой ip в логах, я найду тебя!

Бойся, ничтожество, ха-ха!

"
3. Добавим дополнительную аутентификацию в админцентре.

Необходимо придумать еще один логин и пароль (не используйте данные вашего административного аккаунта). Второй логин и пароль должен в корне отличаться от первого. Определились? Отлично! Теперь зашифруем наш пароль в md5 (сделать это можно на сайте md5encryption.com).
Далее открываем admin.php (вспомните, ранее мы его переименовали и, по этому, если вы назвали его superadmin.php - вам необходимо открывать именно этот его) и после строки:

добавляем:

$login="вписываем придуманный логин";
$password="и сгенерированный пароль в md5";
if (!isset($_SERVER["PHP_AUTH_USER"]) || $_SERVER["PHP_AUTH_USER"]!==$login ||
md5($_SERVER["PHP_AUTH_PW"])!==$password) {
header("WWW-Authenticate: Basic realm="Admin Panel"");
header("HTTP/1.0 401 Unauthorized");
exit("Access Denied");}


4. Отключим неиспользуемые системой функции php.

Для поиска файла php.ini создаем файл phpinfo.php с текстом:

После поиска обязательно удалить phpinfo.php!

disable_functions = allow_url_fopen, eval, exec, system, passthru, scandir, popen, shell_exec, proc_open, proc_close, proc_nice, get_current_user, getmyuid, posix_getpwuid, apache_get_modules, virtual, posix_getgrgid, getmyinode, fileowner, filegroup, getmypid, apache_get_version, apache_getenv, apache_note, apache_setenv, disk_free_space, diskfreespace, dl, ini_restore, openlog, syslog, highlight_file, show_source, symlink, disk_total_space, ini_get_all, get_current_user, posix_uname, allow_url_fopen


5. Создаем фильтрацию GET и POST запросов, предотвращаем инъекции в БД и получение из нее данных.

Создаем файл.php с произвольным названием и следующим содержимым:

//поставить еденицу если хотите включить отладку запросов
$debug = 0;

$bag_req = array("select", "eval", "echo", "UPDATE", "LIMIT", "INSERT", "INTO", "union", "CONCAT", "INFORMATION_SCHEMA", "OUTFILE", "DUMPFILE", "LOAD_FILE", "BENCHMARK", "SUBSTRING", "ASCII", "CHAR", "database", "HEX", "\\.\\/", "%00", "\\.htaccess", "config\\.php", "document\\.cookie");
$request = serialize($_GET);


if($_GET)
{
foreach ($bag_req as $key => $value) {
{
В массиве найден запрос $value
$request";
}
}
}
if($_POST)
{
$request = str_replace("selected_language", "sl", serialize($_POST));
$urequest = urldecode($request);
$brequest = base64_decode($request);
foreach ($bag_req as $key => $value) {
if(preg_match("/$value/i", $request) || preg_match("/$value/i", $urequest) || preg_match("/$value/i", $brequest))
{
if($debug == "1") $do_debug = "
В массиве найден запрос $value , который блокирует правильную работу
$request";
die("BAD REQUEST $do_debug");
}
}
}
?>


Сохраняем его на сервере в любом каталоге системы DLE. Открываем файл engine/classes/mysql.php и после:

if(!defined("DATALIFEENGINE"))
{
die("Hacking attempt!");
}


подключаем созданный файл:

include_once(ENGINE_DIR."/путь_к_файлу/название.php");


6. Используя бесплатные компоненты к DLE обязательно узнайте мнение специалиста о их надежности.

При возникновении вопросов обращайтесь к поисковым системам - весь материал в свободном доступе!
Есть что добавить? Милости прошу к обсуждению!

Удачи вам и вашим проектам!

На базе движка DLE (DataLife Engine). Настройку я буду описывать очень подробно, стараясь ничего не упустить, я думаю, что настройка dle превратится в длинную серию постов. За эту серию постов мы не только подробно рассмотрим настройку, но и разберемся для чего нужна каждая функция настройки.

Для постов посвященных настройке движка DLE, я буду использовать движок DataLife Engine v.9.4., точнее демо-версию данного движка. Этого мне вполне хватит для того, чтобы рассказать вам о настройках и возможностях DataLife Engine.

Первая статья будет посвящена разделу админки: «Общие настройки скрипта» . Найти этот раздел можно следующим образом: после перехода в админку DLE (DataLife Engine) , которая находится по адресу site.ru/admin.php, вы увидите быстрый доступ к основным разделам админпанели. Сегодня нам нужен пункт «настройка системы», а в нем раздел «общие настройки скрипта» . Есть, конечно и другие способы попасть в этот раздел, но это по-моему самый простой способ.

Итак приступим к настройке движка dle, первый пункт это название (title dle) . В названии пишите, название вашего проекта, например: Все для начинающих вебмастеров. Ваш title может звучат как угодно, по умолчанию на движке DLE, сайт называется DataLife Engine, если мы впишем любое другое название, то оно будет изменено. И оно будет формировать title dle, который будет выводиться во вкладке браузера, а также на странице поисковой выдачи. Поэтому, отнеситесь к title, со всей серьезностью. Здесь, я думаю понятно.

Ну, домашняя страница, я думаю понятно. Вписываем имя вашего домена, например: site.ru и все.

Используемая кодировка , по умолчанию, стоит windows-1251, это означает, что ваш ресурс поддерживает русский язык. Если у вас демо-версия движка DataLife Engine, менять здесь ничего не надо. Если же CMS куплена, то кодировку можно изменить например на UTF-8 и тогда ваш проект станет мультиязычным, на данном этапе подробно мы не будем рассматривать кодировку, я думаю и так понятно если у вас демо не меняем, даже если купленая, но домен находится в зоне ru , если честно я не вижу смысла менять кодировку.

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

Далее, ключевые слова (Keywords) (слова вводим через запятую), также по данным словам поисковики будут обращать внимание на вашу страничку, ключевые слова должны максимально соответствовать направлению вашего сайта или блога, сначала нужно составить список ключевых слов и проверить количество запросов по данным словам. Для проверки количества запросов пользуемся вот этой страничкой в интернете http://wordstat.yandex.ru . Подробнее на данном этапе рассматривать не будем, так как это уже относится не к данной теме поста, а к оптимизации в поисковых системах. Тут уж смотрите сами, что писать в это поле, для каждого ключевые слова будут разные.

Краткое название , здесь я думаю все понятно. Данное название будет выводится в модуле speedbar. Можно, опять же, повторить название проекта. Так с названиями разобрались, продолжаем. Модуль speedbar (он же хлебные крошки) выглядит так:

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

В графе, (человекопонятный урл), желательно выбрать «Да». Нужен он для того, чтобы ваш адрес визуально воспринимался пользователями, что хорошо сказывается на юзабилити вашего ресурса. Чтобы было понятнее, приведу примеры новостей с ЧПУ и без, новость с ЧПУ dle : http://site. ru/addnews.html, без ЧПУ: http://site.ru/index.php?do=addnews, т.е с ЧПУ визуальное восприятие ссылки намного лучше, чем без него.

Затем выбираем тип ЧПУ , здесь все ваших руках, но третий тип не советую выбирает так как он повышает нагрузку на ваш сервер.

Обрабатывать неверные URL ЧПУ : Здесь я советую поставить «Да», так как эта опция полезна для SEO, но вы если хотите можете не включать данную опцию. Подробнее для чего она нужна, в настройках написано, довольно понятно.

Затем выбираем используемый язык , так как у меня демо-версия, выбор у меня не большой только один язык, это русский, но для доменной зоны ru, этого будет достаточно.

Далее, шаблон сайта по умолчанию стоит default, но можно выбрать и другой. Этой теме будет посвящена отдельная статья, как установить шаблон на DataLife Engine (DLE). Конечно, все мы хотим какой-то особенный, не стандартный шаблон, забегая вперед, скажу, шаблон установить на dle очень просто. Скачиваем понравившийся шаблон с интернета или делаем свой, папку с шаблоном копируем в директорию движка, в папку templates, и если ваш ресурс на локальном сервере, перезапускаем его. И теперь шаблон появится в графе выбора шаблонов сайта по умолчанию.

После выбора шаблона, переходим к двум настройкам «Включить WYSIWYG редактор… «, в обоих случаях рекомендую выбрать «Да», так с помощью визуального редактора намного проще редактировать новости (статьи) и комментарии, нежели, с помощью BB-кодов. Хотя, выбирать вам, поэкспериментируйте, и сделайте выбор в пользу удобства. DLE WYSIWYG редактор, это визуальный редактор.

Так выглядит панель редактирования, с помощью BB-кодов.

Так выглядит панель редактирования, с помощью DLE WYSIWYG.

Далее идет довольно полезная опция: «выключить сайт «, данная опция переводит ресурс в состояние offline, если вы считаете, что ваш проект еще не готов быть увиденным пользователями, то включаете данную опцию. Если же все готово, то выключаете опцию и выпускаете проект в сеть. Также этой функцией можно пользоваться при обновлении структуры или шаблона вашего ресурса. Замечу, что данная опция полезна, если ваш «подопытный» находится на хостинге, а не на локальном сервере , как у меня.

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

Вот и все. Вы сделали первый шаг к настройке DLE (DataLife Engine). Теперь остается сохранить общие настройки dle и ждать следующего поста о настройке движка DLE.

Примечание: посты о настройке DLE (DataLife Engine) будут подаваться в таком в виде, для лучшего восприятия полученной информации, чтобы не получилась каша в голове. Конечно, можно было описать всю настройку в одной статье, примерно такого вида: здесь выберите это, здесь поставьте это, там напишите так. Но я хочу, чтобы вы понимали, для чего нужна каждая функция. Настроек и возможностей в DLE слишком много для одного поста. Надеюсь на ваше понимание.

Были подготовлены и реализованы следующие изменения:


1. Полностью принципиально новая панель управления скриптом DLE. Дорогие друзья, в данной версии скрипта мы хотим вам предоставить полностью обновлённую панель управления скриптом. Данная панель была разработана с использованием всех последних новейших технологий, которые позволяют сделать процесс управления новостями и другими разделами скрипта, более удобными и информативно понятными. Помимо нового современного дизайна, данная панель управления является адаптивной и способной самостоятельно подстраиваться под используемые устройства, тем самым обеспечивается более удобное управление как с использованием десктопного компьютера, так и с использованием планшетов и смартфонов. Учитывая важность таких моментов как мышечная и зрительная память, а также привычка, мы постарались создать новую панель управления такой, чтобы все для вас оставалось на привычных местах, и вам не пришлось затрачивать много времени на освоение и изучение новой панели управления. Мы очень надеемся, что новая панель вам понравится, и вы оцените ее по достоинству. В связи с тем, что в новой панели управления активно используются HTML5 и CSS3 стандарты, мы были вынуждены отказаться от поддержки устаревших браузеров IE, для работы в новой панели вам понадобится IE10 и выше, а также актуальные версии браузеров Chrome, Firefox и Opera.

2. Все javascript файлы административной панели DLE теперь отделены от пользовательской части сайта и работают независимо. Например, если вы захотите самостоятельно обновить библиотеки сайта, например такие как Jquery и Jquery UI, вы можете это делать не опасаясь за совместимость с работой административной панели.

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

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

5. Внесены изменения в логику показа рекламных материалов в админпанели , теперь вместо показа добавленного рекламного кода, показывается подсвеченный его исходный код, тем самым при добавлении каких-либо фрагментов HTML тегов, не будет нарушаться верстка админпанели, и вы всегда сможете управлять и редактировать код, непосредственно панели управления.

6. Существенно улучшен и переработан модуль редактирования комментариев в админпанели скрипта. Добавлена возможность одиночного удаления комментариев при помощи технологии AJAX, а также добавлена возможность пометки комментария как "Спам" и как следствие автоматического бана спамера и удаления всех его комментариев, и уведомление облачного сервиса о спамере, если это включено в настройках скрипта.

7. Добавлена функция динамической загрузки комментариев по мере просмотра посетителем страницы с полной новостью и чтения им комментариев. Данная функциональность основана на принципе: и применяется с использованием технологии AJAX. Например, вы установили показывать 30 комментариев на каждую страницу, а у новости 100 комментариев, то при заходе на страницу с новостью, для пользователя будет показано первые 30 комментариев, по мере скроллинга страницы вниз и чтения комментариев, по окончании списка комментариев, вместо навигации по комментариям, на страницу будут автоматически подгружены следующие 30 комментариев и т.д. по мере скроллинга страницы, пока не будут показаны все комментарии к новости. Данная функциональность включается и отключается в настройках скрипта.

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

9. Для вывода новостей с использованием пользовательского тега {custom ...} добавлена возможность вывода навигации по страницам. Для этого добавлен новый параметр тега navigation="yes" . При добавлении данного параметра к пользовательскому тегу, будет выводится постраничная навигация по новостям, выводимым данным тегом. Тем самым вы можете осуществлять вывод новостей именно по вашим параметрам и при этом сохранять навигацию по страницам, если новостей по данным параметрами много. Навигация выводится только для страниц сайта, которые поддерживают навигацию для тега {content} , например, главная страница, страницы категорий и т.д. Если же страница не поддерживает навигации, например, вывод полной новости, или статической страницы, то для данного тега навигация автоматически также будет отключена.

10. Для тега пользовательского вывода новостей {custom ...} добавлен новый параметр fixed="without" , который выводит только новости, которые не были зафиксированы при публикации.

11. Обновлен HTML5 плеер до актуальной версии , добавлена поддержка полноэкранного режима в браузере IE11.

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

13. Добавлена проверка e-mail пользователя при его смене в профиле на то, находится ли данный адрес или пул адресов в списке адресов, запрещенных администратором к регистрации на сайте. Ранее данная проверка проводилась только при первоначальной регистрации посетителя на сайте.

14. Добавлено указание логина пользователя в e-mail письме , которое отправляется пользователю, в случае смены им своего e-mail адреса в профиле. Данное нововведение будет полезным также администраторам сайтов, в случае если e-mail адрес пытается сменить бот на несуществующий, в результате администраторам приходят письма о недоставке, и они могут видеть кто меняет данные, и соответственно принять меры к данному пользователю.

15. Добавлена удобная система добавления и редактирования дополнительных полей новости в админпанели, имеющих свойство "Использовать как гиперссылки". Теперь можно удалить ненужные значение в один клик.

16. Добавлена возможность разрешать в управлении рекламными материалами на сайте , вставку рекламных тегов непосредственно в текст новостей. Данная возможность устанавливается отдельного для каждого баннера. Вы можете разрешить или запретить вставку рекламного тега в текст новости. Если для тега будет разрешена вставка в текст новости, то при написании данного тега в тексте новостей, рекламный блок будет опубликован на сайте на месте данного тега. Тем самым вы можете размещать рекламу непосредственно в тексте новостей в удобном для вас месте.

17. Добавлена возможность предосмотра рекламных материалов , добавленных в админпанели при помощи отдельного всплывающего окна.

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

19. В модуле управления перекрестными ссылками в админпанели , добавлена проверка на уже существующие в базе данных ключевые слова. Тем самым избегается появление дубликатов ключевых слов.

20. Для модуля управления перекрестными ссылками добавлена возможность использование множественного склонения слов в пределах ключевой фразы, с указанием склонения для нескольких слов одновременно. Например, вы можете указать для замены фразу Иван(ов|ова|ову) Ива(н|на|ну) Иванови(ч|ча|чу) . А также добавлена возможность комбинирования фразы из нескольких слов, как содержащий склонения, так и не содержащий, например, фраза: Ремон(т|та|ту) мебели .

21. Изменен алгоритм вывода информации при помощи тега {title} в шаблоне вывода похожих новостей (relatednews.tpl ). При использовании данного тега будет выводится полный заголовок новости без его обрезания до 75 символов как ранее.

22. Для шаблона вывода похожих новостей (relatednews.tpl) добавлена поддержка нового тега {title limit="x"} , который выводит заголовок новости, сокращенный до указанного количества в теге X символов. При этом сокращение заголовка производится до завершения логического слова, а не обрывается посередине.

23. Для шаблона вывода кратких новостей (shortstory.tpl) добавлена поддержка новых тегов текст текст , и выводят текст заключенный в данные теги при показе любых по счету новостей, кроме указанных X новостей. Данный тег будет полезен, если вы хотите выводить какие-либо элементы оформления во всех новостях при показе кратких новостей, кроме вышеуказанных. Например, что-либо не показывать в первой по списку новости.

24. Для шаблона вывода комментариев (comments.tpl) добавлена поддержка новых тегов текст , которые является противоположностью уже существующих тегов текст , и выводят текст заключенный в данные теги при показе любых по счету комментариев, кроме указанных