Store intitle datalife engine панель управления. Настройка движка DataLife Engine
Привет, друзья. Я почти все свое время уделяю . Так как большинство моих сайтов построены на CMS DLE, то и приходится много работать с этим движком. Я и раньше говорил, что с SEO разработчики не дружат, и вообще такого слова не слышали никогда, но оказалось все еще хуже, чем могло бы быть. Я даже подготовил целую серию постов, посвященных «осеошиванию» народного движка (см. в категории ).
Но сегодня я бы хотел поговорить про такую важную вещь как html карта сайта для DLE. Сколько я не искал в интернете нормальный модуль карты, так и не нашел. Есть, конечно, несколько решений, но все они дают совсем не тот результат, который нужен, а порой даже наносят вред. Пришлось писать модуль самому, а точнее поручить профессионалам реализацию моих «хотелок». Выражаю огромную благодарность Фомину Александру за энтузиазм и невероятную скорость работы.
Модуль карты сайта для ДЛЕ, который я собираюсь вам представить, отвечает всем требованиям seo и предельно прост в установке.
SiteMap – модуль генерации HTML карты сайта для DLE
Оригинальное название:
SiteMap
Совместимость с CMS:
DLE 8.2-10.6
Распространение:
Бесплатно, As Is, при распространении ссылка на источник обязательна
Актуальная версия:
2.2 (от 08.05.2014)
Назначение:
Вывод ненумерованного списка со ссылками на все публикации, категории и статические страницы.
Особенности:
Визуальный генератор кода для вставки. Детальная настройка принципа вывода всех элементов сайта — новости, категории, статические страницы — количество выводимых элементов, принцип сортировки и порядок сортировки, отображение элементов в виде ссылки или простым текстом, возможность включить/исключить конкретные элементы.
Описание и настройка модуля HTML карты сайта для DLE
Друзья, 3 июня 2012 — это большой день, в свет вышла совершенно новая карта сайта версии 2.0. Мы поднимаем планку удобства использования нашего модуля на новый уровень. Реализованная в система визуальной генерации кода нам (надеюсь, и вам тоже) очень понравилась и мы решили внедрить ее и в модуль карты сайта. Теперь вам не надо читать руководства и описания всех функций и их значений — достаточно зайти в админку, указать несколько значений и все — модуль готов к работе!
Помимо сказанного выше, хочется перечислить еще несколько важных особенностей :
- модуль полностью кешируется;
- модуль использует API DLE;
- в карте не выводятся публикации, не прошедшие модерацию, а так же запланированные на будущее;
- учитывается наличие/отсутствие ЧПУ, а так же тип ЧПУ;
- предусмотрена такая тонкость – если кто давно работает с движком ДЛЕ, то помнит, что в ранних версиях вообще не было ЧПУ, а потом оно появилось, но только одного типа (такого же, как сейчас формируется тип 3). Так вот это тоже предусмотрено в данном модуле — новые публикации выводятся с url’ом, тип ЧПУ которого выбран в админке, а старые, соответственно, с url’ом ЧПУ старого типа.
Не смотря на появление визуального генератора, предлагаю ознакомиться с механикой модуля.
Модуль вставляется в шаблон main.tpl с помощью тега:
{include file="engine/modules/sitemap.php?param1=value1¶m2=value2"}
param1= — параметр модуля, value1 — значение параметра. Настройки модуля следуют после знака? и разделены знаком &.
Пример вставки (выводит карту сайта со списком статических страниц и новостями из категорий с id=2,3,4):
{content}
{include file="engine/modules/sitemap.php?show_static=1&need_cats=2,3,4"}
Для того, чтобы карта сайта отображалась на отдельной странице, тег {include ...} необходимо заключить в , а тег {content} заключить в . После этого модуль будет доступен по адресу http://site.ru/sitemap/
После любых изменений параметров и их значений необходимо очищать кеш в админпанели.
Параметры модуля, передаваемые через tpl при вставке:
- need_cats — список id категорий через запятую для вывода в карте
- exc_cats — список id категорий через запятую, исключаемых из карты
- need_news — список id статей через запятую для вывода в карте
- exc_news — список id статей через запятую, исключаемых из карты
- данные параметры бессмысленно указывать одновременно
- need_static — список id статических страниц через запятую для вывода в карте
- exc_static — список id статических страниц через запятую, исключаемых из карты
- данные параметры бессмысленно указывать одновременно
- cats_as_links — показывать названия категорий как ссылки (1 или 0)
- show_static — отображать в карте статические страницы (1 или 0)
- cats_sort — поле сортировки списка категорий (поле из таблицы dle_category)
- cats_msort — направление сортировки списка категорий (ASC или DESC)
- news_sort — поле сортировки списка статей (поле из таблицы dle_post)
- news_msort — направление сортировки списка статей (ASC или DESC)
- static_sort — поле сортировки списка статических страниц (поле из таблицы dle_static)
- static_msort — направление сортировки списка статических страниц (ASC или DESC)
- возможны 2 варианта направления сортировки:
- ASC — по возрастанию (по алфавиту)
- DESC — по убыванию (в обратном порядке)
- если поле и порядок сортировки не указаны — используются заданные настройки категорий или стандартные параметры DLE
- cats_limit — максимальное количество выводимых подкатегорий
- news_limit — максимальное количество выводимых статей из категории
- static_limit — максимальное количество выводимых статических страниц
Заметьте, ни одна из приведенных выше настроек не является обязательной , можно вообще ничего не указывать — достаточно просто вставить тег {include file="engine/modules/sitemap.php"} — тогда будут использованы настройки по умолчанию.
Внешний вид и классы стилей карты сайта
Опционально предусмотрено изменение внешнего вида карты сайта, для этого открываем файл стилей (style.css) своего шаблона и прописываем нижеописанные классы.
Перечень CSS классов карты сайта:
Sitemap_categories - элемент
- списка категорий
- списка категорий
.sitemap_items - элемент- списка статей
- списка статей
.sitemap_static_pages - элемент- списка статических страниц
- списка статических страниц
Root - класс для вышеперечисленных элементов, находящихся в корне списка
Sitemap_categories a - элемент c названием категории
.sitemap_categories span - элемент c названием категории
.sitemap_items a - элемент c названием статьи
.sitemap_static_pages a - элемент c названием статической страницыУстановка, удаление и обновление модуля карты сайта на DLE
Установка модуля
- Распакуйте архив с модулем;
- Скопируйте содержимое папки uploads (кроме /templates/) на сервер;
- Содержимое папки uploads/templates/Default/ поместите в папку своего шаблона;
- Запустите файл http://site.ru/sitemap_installer.php и следуйте инструкциям;
- Удалите файл sitemap_installer.php с сервера;
- Зайдите в админпанель, выберите модуль SiteMap и сгенерируйте код;
- Откройте файл main.tpl своего шаблона и найдите:
RewriteEngine On
Ниже добавьте:
$metatags = <<
Выше добавьте:
if ($do == "sitemap" ) { $nam_e = "Карта сайта" ; $metatags [ "title" ] = "Карта сайта {$config["home_title"]} " ; $metatags [ "description" ] = "Карта сайта {$config["description"]} " ; $canonical = "" ; } if ($do == "sitemap") { $nam_e = "Карта сайта"; $metatags["title"] = "Карта сайта {$config["home_title"]}"; $metatags["description"] = "Карта сайта {$config["description"]}"; $canonical = ""; }
- Процесс установки завершен — карта сайта доступна по адресу http://site.ru/sitemap/
Удаление модуля
- Загрузите файл sitemap_uninstaller.php на сервер (в папку где установлен DLE);
- Запустите файл http://site.ru/sitemap_uninstaller.php и следуйте инструкциям;
- Удалите все файлы модуля, загруженные при установке;
- Отмените все правки файлов движка (main.tpl и.htaccess), внесенные при установке;
- Не забудьте удалить файл sitemap_uninstaller.php.
Обновление модуля
- Скачайте новую версию модуля со страницы https://сайт/blog/post/1974
- Распакуйте архив с модулем.
- Скопируйте содержимое папки upload (кроме файла sitemap_installer.php и папки /templates/) на ваш сервер, отвечая «Да» на вопросы вашего FTP-клиента о замене существующих файлов.
Внимание! Для обновления с версии v.1.x до версии v.2.x:
Необходимо полностью скопировать новые файлы из версии 2.x на сервер, при совпадении имен подтвердить замену. После этого необходимо запустить http://site.ru/sitemap_installer.php и следовать инструкциям. На этом обновление завершено.Скачать модуль HTML SiteMap для DLE
История версий (History Log)
- v.2.2 — 08.05.2014
- Полностью переработано оформление модуля для всех версий DLE.
- Исправлены мелкие ошибки и произведены улучшения. Обязательно при обновлении проделайте пункт с правкой файла engine.php в инструкции по обновлению.
- v.2.1.1 — 17.04.2014
- Обновлен код модуля для совместимости с новым форматом файла настроек DLE версии 10.2 и выше.
- v.2.1 — 08.10.2012
- Исправлен баг в генераторе кода.
- Исправлены опечатки в админке.
- v.2.0 — 03.06.2012
- Добавлен установщик.
- Появилась админка с генератором кода для вставки в шаблон.
- v.1.2 — 02.06.2012
- Введен контроль за версией DLE.
- Модуль теперь совместим с линейкой DLE 8.2-9.6.
- v.1.1 — 02.11.2011
- Устранены баги с некоторыми функциями модуля.
- v.1.0 — 16.03.2011
- Официальный релиз.
FAQ — ответы на часто задаваемые вопросы
Q: Зачем мне две карты сайта xml и html? В чем их отличие? Можно ли их использовать одновременно?
A: Это совершенно две разные сущности: xml-карта сайта предназначена только для поисковиков. html-карта сайта предназначена для пользователей для навигации по сайту. Их можно и нужно использовать одновременно.Q: Какую карту сайта надо добавить в панель вебмастера Яндекс и Google?
A: Поисковикам необходимо «скормить» именно xml-карту сайта, а не ту карту, что создает данный модуль.Q: Ссылку на какую карту сайта можно поставить на сайта (например, в футере)?
A: Ссылаться нужно только на html-карту сайта, т.е. ту, которая создается данным модулем и доступна по адресу http://site.ru/sitemap/Q: У меня возникла следующая ошибка, что делать?
Fatal error: Cannot redeclare class Sitemap in /.../engine/modules/sitemap.php on line 55
A: Воспользуйтесь альтернативной установкой карты сайта через статические страницы — метод описан тутQ: Работает ли данный модуль на DLE 10?
A: Да, все работает нормально. Но если у вас возникли какие-то трудности, то есть еще один альтернативный вариант. Спасибо пользователю под ником Ryan — метод описан тутQ: У меня очень много публикаций на сайте, и все эти ссылки выводятся на одной странице. Это же лажа, Яндекс ругается!
A: Да, Яндекс ругается. Чтобы сократить количество ссылок на странице, воспользуйтесь параметром ограничения вывода количества новостей news_limit (см. подробности в списке параметров).Q: Сколько ссылок на странице карты можно/нужно выводить?
A: Из официального ответа службы поддержки Яндекса: рекомендуемое количество ссылок в html карте сайта не должно превышать 3000 ссылок.Q: А как же разделение карты сайта на страницы? Сделайте пожалуйста.
A: Постраничная разбивка карты сайта не подразумевается структурой БД и логикой модуля. В ближайшее время возможность разбивки на страницы не предвидится.Вот я вам все и рассказал, прошу скачивать, тестировать и писать отзывы. Если найдете какие-то ошибки — пишите, все максимально оперативно будем править. Так же если есть какие-то пожелания по поводу функционала, доработок, тоже пишите, все обсудим и сделаем!
DISCLAIMER В последнее время замечено распространение данного модуля на различных сайтах, посвященных DLE, под другими названиями, с измененным кодом, удаленным/измененным копирайтом и т.д. Но, тем не менее, признаки того, что это именно данный модуль и разработан Александром Фоминым, остаются. Так вот — я не несу ни какой ответственности за дистрибутивы, скачанные с других сайтов.
Здравствуйте. Данный топик хочу посветить созданию простейшего модуля для популярной CMS Datalife Engine . В России, как впрочем и в странах СНГ она пользуется достаточно большой популярностью, однако на хабре статей об этой cms почему-то до сих пор нету. Я попытаюсь исправить это недоразумение. В этой статье вы узнаете о том, как сделать простейший модуль для этой CMS, а также познакомитесь со структурой движка.
Введение
Хотелось бы отметить, что система пользуется спросом у сайтов развлекательной тематики. Оно и понятно, система проста в использовании, имеет достаточное количество модулей и шаблонов. Да и почти все нужное есть «из коробки». Однако бывает, что чего-нибудь не хватает. Эту проблему мы постараемся решить.Почему DLE?
Вы наверняка заинтересуетесь, почему я выбрал именно эту CMS. Ответ простой: достаточно логичная структура самого движка, отделение шаблонов от кода, довольно простой шаблонизатор, опять же довольно логичное размещение всего внутри - легко разобраться что к чему. Плюс к этому система остается относительно легкой и удобной. Она не так функциональна как, например, Друпал, но все же мне она нравится.Структура
Для начала нам нужно знать кое-что о структуре движка. Нельзя творить на сервере бардак, поэтому мы будем хранить все в своих папках.Модули для работы движка принято помещать в папку /engine/modules/ .
В папке /engine/inc/ находятся файлы панели администратора.
Начиная с версии 8.х появилось подключать модули прямо в шаблоне. Шаблон находится в папке /templates/имя_шаблона/. В этой папке есть файл main.tpl Это корневой файл шаблона, обычно в нем расположена основная структура шаблона. Обычно модуль можно подключить так:
{include file=«engine/modules/mod_category.php»}
Где mod_category.php – файл, находящийся в категории /engine/modules/. Думаю с этим все понятно, поехали дальше.
Давайте сделаем модуль для вывода последних комментариев с кэшированием. Для этого создадим файл в папке /engine/modules/ и назовем его mod_lastcomm.php Далее я привожу листинг кода этого файла с подробными комментариями.
Код
DATALIFEENGINE". Эта константа определяется в index.php и ее значение TRUE символизирует о том, что файл подключен с помощью include/require, а не просто запущен. */ if(!defined("DATALIFEENGINE")) { die("Hacking attempt!"); } /* Подключаем класс api, для того чтобы нам можно было использовать функции для работы с кэшем. */ include ("engine/api/api.class.php"); /* Пытаемся прочетать информацию, сохраненную в кэше с именем lastcomm. Рекомендую давать осмысленные имена всему тому, что мы сохраняем в кэше. По сути lastcomm – это файл в папке /engine/cache/, а 60 – это время жизни кэша в секундах. В данном случае, если с создания файла прошло больше времени, чем 60 секунд, то нам снова придется лезть в бд. */ $lastcomm=$dle_api->load_from_cache("lastcomm", 60); /* Проверяем – есть у нас кэш или нету. Если нету, то лезем в бд. */ if (!$lastcomm) { /* Собственно запрос в бд. Он выполняется с помощью функции класса $db. Константа PREFIX содержит префикс, указанный при установки cms. Названия столбцов названы вполне нормально, я думаю не нужно объяснять что они делают. Индефикатор запроса заносим в переменную $sql. */ $sql = $db->query("SELECT comments.post_id, comments.text, comments.autor, post.id, post.flag, post.category, post.date as newsdate, post.title, post.alt_name FROM " . PREFIX . "_comments as comments, " . PREFIX . "_post as post WHERE post.id=comments.post_id ORDER BY comments.date DESC LIMIT 0,20"); /* С помощью функции get_row() класса $db считываем последовательно каждую строку из результатов выборки. Информация заносится в массив $row с индексами равными именам полей таблиц */ while ($row = $db->get_row($sql)) { /* Если нужно обрезаем заголовок новости */ if (strlen($row["title"]) > 50) { $title = substr($row["title"], 0, 50)."..."; } else { $title = $row["title"]; } /* Формируем ссылку на профиль пользователя. Аналогично */ $aname=urlencode($row["autor"]); $name= "". $row["autor"] .""; /* Формируем текст комментария и если надо обрезаем его */ $text = htmlspecialchars($row["text"]); if (strlen($text) > 1024) $text= substr($text, 0, 1024)."..."; /* Формируем ссылку на новость. Массив $config содержит все настройки системы. В частности $config["http_home_url"] - это урл домена. */ $newslink = $config["http_home_url"].$row["post_id"]."-".$row["alt_name"].".html"; $hint = "onMouseover=\"showhint("$text", this, event, "");\""; $title = "".stripslashes($title).""; /* Итоговая запись для одного комментария */ $lastcomm.="От $name в новости:
$title
"; } $db->free(); /* Кэшируем полученные данные. Чтобы получше разобраться с функциями кэширования, откройте файл "engine/api/api.class.php" там отлично все закомментировано */ $dle_api->save_to_cache ("lastcomm", $lastcomm); } /* Выводим полученный результат */ echo $lastcomm; ?>Заключение
Данный код полностью рабочий. И в нем конечно же есть недостатки. Например не проверяется для ссылок - включено ли ЧПУ. Или при переходе по ссылке на профиль пользователя мы попадаем сразу в его профиль, а не на окошечко jQuery с краткой информацией. Вообщем есть что доработать. Но все эти вещи не были включены сюда только по одной причине - не дать запутаться новичку. Также советую проанализировать другие файлы, например topnews.php. Если у вас возникнут вопросы по написанию модулей или вообще по системе - я с радостью отвечу на них.На этом у меня все, если эта тема кому-нибудь покажется интересной, то я сделаю цикл статей про cms Datalide Engine (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) добавлена поддержка новых тегов текст , которые является противоположностью уже существующих тегов текст , и выводят текст заключенный в данные теги при показе любых по счету комментариев, кроме указанных
Новость на DLE без загрузки и без обновления страницы!
Особенности модуля:
Не требует каких-либо правок движка. Учёт прав доступа к новости. Если пользователю по каким то причинам запрещено просматривать полную новость в настройках - он не сможет её посмотреть. Подсчёт количества просмотров. Модуль учитывает настройки DLE и если требуется - засчитывает просмотр новости. Корректная очистка кеша модуля. Кеш модуля очищается в соответствии с правилами автоочистки кеша DLE, поэтому в быстром просмотре новость будет всегда актуального содержания. Поддержка всех тегов. Модуль поддерживает все теги шаблона fullstory.tpl. Если тег не нужен в быстром просмотре - вместо него будет пустота. (форма добавления комментариев, сами комментарии). Кеширование на стороне клиента. Модуль отдаёт правильные заголовки. Если включено кеширование на сайте и пользователь повторно вызовет быстрый просмотр новости - браузер получит в ответ 304 статус и отдаст пользователю закешированную (в браузере) страницу. Установка:
Распаковать содержимое папки upload в корень сайта.
В нужном месте любого шаблона вставить минимальный код: Быстрый просмотрГде {news-id} - ID новости (обязательный параметр).
"); $modalBlock .appendTo("body") // Добавляем блок на страницу.find("#" + modalId) // Ищем интересующий нас селектор.html($html) // Вставляем в него полученный код.dialog({ // Показываем модальное окно width: 800 }); }) .fail(function () { console.log("full-story error"); }); }); 4. В CSS-файл шаблона вставить код для стилизации выводимых ошибок:
Так же можно использовать дополнительные атрибуты:
Быстрый просмотр
data-afs-template="mytemplate" - путь к шаблону модуля относительно текущей папки с шаблоном сайта.
По умолчанию: **{THEME}/ajax/fullstory**. (Необязательный параметр).
data-afs-preset="mypreset" - путь к файлу с настройками модуля. По умолчанию не используется.
3. В js файл шаблона вставить:
$(document).on("click", "", function () { var $this = $(this), $data = $this.data(); $.ajax({ url: dle_root + "engine/ajax/full-story.php", type: "GET", dataType: "html", data: { newsId: $data.afsId, // Обязательная переменная preset: ($data.afsPreset) ? $data.afsPreset: "", // Название файла с настройками (необязательно) template: ($data.afsTemplate) ? $data.afsTemplate: "", // Название файла с шаблоном (необязательно) }, }) .done(function (data) { var $html = $(data); // Данные получены, можно заняться разбором и показать их в диалоге // Ниже простейший пример вывода контента в стандартном модальном окне DLE var modalId = "afs-" + $data.afsId + "-" + $data.afsPreset + "-" + $data.afsTemplate; modalId = modalId.replace(///g, "-"); var $modalBlock = $("
.afs-error { /*Общий стиль для всех ошибок*/ padding: 20px; background: #fff; color: #424242; } .afs-news-error { /*Стиль ошибки, если новость не найдена*/ background: #eceff1; } .afs-tpl-error { /*Стиль ошибки, если не найден шаблон*/ color: #b71c1c; } .afs-perm-error { /*Стиль ошибки, если не достаточно прав для просмотра полной новости*/ background: #e65100; color: #F5F5F5; }
Готово! Не забудьте подправить JS и CSS код под оформление своего сайта.
Параметры, принимаемые модулем:
Модуль принимает через GET-запросы следующие параметры:
newsId - обязательный параметр. ID новости для показа.
template - путь к шаблону модуля относительно текущей папки с шаблоном сайта.
Если на сайте разрешена смена скина, то путь будет построен относительно активного в данный момент шаблона сайта.
По умолчанию: {THEME}/ajax/fullstory
preset - путь к файлу с настройками модуля. По умолчанию не используется.
Настройки модуля:
Настройки модуля хранятся в отдельном файле, это сделано для безопасной передачи настроек и уменьшения нагрузки на хостинг.
Для хранения настроек был выбран формат шаблона т.к. его можно отредактировать через админпанель.
При формировании настроек необходимо соблюдать следующий синтаксис:
- Параметры необходимо писать по одному в строке.
- Имя параметра и его значение необходимо разделять знаком равенства.
На данный момент возможно использование следующих параметров:
fields - поля, отбираемые из БД.
Доступны следующие поля для запроса: short_story, full_story, xfields, comm_num, fixed, tags.
Так же можно использовать поле all, тогда будут отобраны все возможные поля новости из БД. Аналогичный результат будет, если не передавать в модуль переменную preset или передать её пустой.
cachePrefix - префикс кеша, создаваемого модулем. По умолчанию full. Если вы хотите, чтобы кеш модуля автоматически не чистился - можно изменить этот парамер.Рекомендуем также
.sitemap_static_pages li - элемент - списка статических страниц
.sitemap_items li - элемент - списка статей
.sitemap_categories li - элемент