Обновление движка DLE 9.4 и адаптация шаблона DLE 9.4 под 9.5

Обновление движка DLE 9.4 и адаптация шаблона DLE 9.4 под 9.5Добрый день. Решил Вам рассказать о том как я обновлял движок и шаблон на одном из сайтов под управлением DLE 9.4.
Сегодня уже июль, а обновление DLE 9.5 вышло в январе. Естественно надо было уже давно обновиться, но только сейчас появилось время.

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

Шаг1: обновляем движок

Здесь все просто: скачиваем дистрибутив с офф. сайта DLE. (У кого нет доступа, ссылки на скачивание демо версий внизу статьи). Заливаем все из папки Upload на свой сервер и запускаем http://website.com/upgrade/index.php. Делее следуем инструкциям.

Шаг2: обновляем шаблон

Список изменений http://dle-news.ru/extras/diffs/95/
1. Копируем файл картинки no_image.jpg из стандартного шаблона /templates/Default/dleimages/no_image.jpg в папку вашего шаблона.
2. Копируем файлы print.tpl и static_print.tpl из стандартного шаблона /templates/Default/ в папку вашего шаблона.
3. Добавляем в файл style/engine.css
[css] /*—Подсветка кода в теге [code]—*/
pre code {
display: block; padding: 0.5em;
background: #f9fafa;
border: 1px solid #dce7e7;
overflow:auto;
white-space: pre;
}

pre .comment,
pre .template_comment,
pre .diff .header,
pre .doctype,
pre .lisp .string,
pre .javadoc {
color: #93a1a1;
font-style: italic;
}

pre .keyword,
pre .css .rule .keyword,
pre .winutils,
pre .javascript .title,
pre .method,
pre .addition,
pre .css .tag,
pre .lisp .title {
color: #859900;
}

pre .number,
pre .command,
pre .string,
pre .tag .value,
pre .phpdoc,
pre .tex .formula,
pre .regexp,
pre .hexcolor {
color: #2aa198;
}

pre .title,
pre .localvars,
pre .function .title,
pre .chunk,
pre .decorator,
pre .builtin,
pre .built_in,
pre .lisp .title,
pre .identifier,
pre .title .keymethods,
pre .id {
color: #268bd2;
}

pre .tag .title,
pre .rules .property,
pre .django .tag .keyword {
font-weight: bold;
}

pre .attribute,
pre .variable,
pre .instancevar,
pre .lisp .body,
pre .smalltalk .number,
pre .constant,
pre .class .title,
pre .parent,
pre .haskell .label {
color: #b58900;
}

pre .preprocessor,
pre .pi,
pre .shebang,
pre .symbol,
pre .diff .change,
pre .special,
pre .keymethods,
pre .attr_selector,
pre .important,
pre .subst,
pre .cdata {
color: #cb4b16;
}

pre .deletion {
color: #dc322f;
}

pre .tex .formula {
background: #eee8d5;
}
[/css]

4. Создайте в папке своего шаблона файл .htaccess со следующим содержимым:

Order allow,deny
Deny from all


Order deny,allow
Allow from all

5. Создайте в папке своего шаблона файл frame.css со следующим содержимым:
[css] html,body{
height:100%;
margin:0px;
padding: 0px;
background: none;
}
hr {
color: #999;
border: 0px none;
border-top: dashed 1px #999;
height: 1px;
}

input,
select,
textarea {
outline:none;
}

form {
margin:0px;
padding: 0px;
}

table{
border:0px;
}

table td{
padding:0px;
font-size: 11px;
font-family: verdana;
}

a:active,
a:visited,
a:link {
color: #4b719e;
text-decoration:none;
}

a:hover {
color: #4b719e;
text-decoration: underline;
}

.navigation {
color: #999898;
font-size: 11px;
font-family: tahoma;
}
.edit {
border:1px solid #9E9E9E;
color: #000000;
font-size: 11px;
font-family: Verdana; BACKGROUND-COLOR: #ffffff
}
select {
color: #000000;
font-size: 11px;
font-family: Verdana;
border:1px solid #9E9E9E;
}

textarea {
border: #9E9E9E 1px solid;
color: #000000;
font-size: 11px;
font-family: Verdana;
background-color: #ffffff
}

#hintbox{ /*CSS for pop up hint box */
position:absolute;
top: 0;
background-color: lightyellow;
width: 150px; /*Default width of hint.*/
padding: 3px;
border:1px solid #787878;
font:normal 11px Verdana;
line-height:18px;
z-index:100;
border-right: 2px solid #787878;
border-bottom: 2px solid #787878;
visibility: hidden;
}

.hintanchor{
padding-left: 8px;
}

.xprofile textarea {
width: 100%; height:90px; font-family:verdana; font-size:11px; border:1px solid #9E9E9E;
}
.xprofile input {
width:250px; height:18px; font-family:verdana; font-size:11px; border:1px solid #9E9E9E;
}

.bk {
background:#fff url(images/fields.png) repeat-x;
}
[/css]

6.Откройте файл preview.css и в самый низ добавьте:
[css] /*—подсветка текста в теге [code]—*/

pre code {
display: block; padding: 0.5em;
background: #f9fafa;
border: 1px solid #dce7e7;
overflow:auto;
white-space: pre;
}

pre .comment,
pre .template_comment,
pre .diff .header,
pre .doctype,
pre .lisp .string,
pre .javadoc {
color: #93a1a1;
font-style: italic;
}

[/css] 7. Откройте файл profile_popup.tpl и найдите:
[html] <li><span class="grey">Публикаций:</span> {news_num} [ {news} ] [rss]<img src="{THEME}/images/rss.png" alt="rss" style="vertical-align: middle; margin-left: 5px;" />[/rss]</li>
<li><span class="grey">Комментариев:</span> <b>{comm_num} [ {comments} ]</b></li>
[/html] Замените на
[html] <li><span class="grey">Публикаций:</span> {news-num} [ {news} ] [rss]<img src="{THEME}/images/rss.png" alt="rss" style="vertical-align: middle; margin-left: 5px;" />[/rss]</li>
<li><span class="grey">Комментариев:</span> <b>{comm-num} [ {comments} ]</b></li>
[/html] Честно сказать я сразу не понял суть данной замены. Код выглядел 100% идентичным. Только приглядевшись я понял, что изменились теги. В место знака подчеркивания стал минус.
Было {news_num} стало {news-num}. Аналогично с тегом {comm-num}.
В моем шаблоне я только поменял теги остальное не трогал.

8. Откройте файл userinfo.tpl и найдите:
[html] <li><span class="grey">Количество публикаций:</span> <b>{news_num}</b> [{news}][rss]<img src="{THEME}/images/rss.png" alt="rss" style="vertical-align: middle; margin-left: 5px;" />[/rss]</li>
<li><span class="grey">Количество комментариев:</span> <b>{comm_num}</b> [{comments}]</li>
[/html] змените на
[html] <li><span class="grey">Количество публикаций:</span> <b>{news-num}</b> [{news}][rss]<img src="{THEME}/images/rss.png" alt="rss" style="vertical-align: middle; margin-left: 5px;" />[/rss]</li>
<li><span class="grey">Количество комментариев:</span> <b>{comm-num}</b> [{comments}]</li>
[/html] Ну вот с шаблоном закончили. Теперь перейдем к халявщикам и любителем SAPE.

Шаг3: восстанавливаем работу PHP скриптов в шаблоне для SAPE

Открываем в корне сайта index.php
Ищем
[php] echo $tpl->result[‘main’];
[/php] Меняем на
[php] eval (‘ ?’ . ‘>’ . $tpl->result[‘main’] . ‘<‘ . ‘?php ‘);
[/php] Все, теперь код сапы будет корректно работать.
Далее надо увеличить количество страниц на главной странице сайта, как правило их 10. Это мало для тех кто торгует в сапе. Сапа любит ссылки 2-го уровня вложенности.
Для увеличения страниц нам надо изменить файл show.short.php который ежит в папке engine\modules\.
Тут есть один подвох, о котором мало кто говорит. На 596 строке (для DLE9.5) есть вот такая конструкция:
[php] if( $enpages_count <= 10 ) {
[/php] Вы наверное подумали как и я. Сейчас я поменяю эту циферку на другую и будет больше страниц =). Нет страниц останется столько же.
Весь подвох находиться на 630 строке (для DLE9.5) и 686 строке (для DLE 9.6):
[php] $start = 1;
$end = 10;
$nav_prefix = "<span class=\"nav_ext\">{$lang[‘nav_trennen’]}</span> ";
[/php] Вот здесь 10 надо тоже изменить на нужное нам число, и страниц станет именно столько сколько вы укажите.

Шаг4: снимаем ограничения для Демо Версии

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

Ссылки на Демо Версии

Внимание: качаем только для ознакомления. Версия с открытым исходным кодом.
На гигапете http://gigapeta.com/dl/2567907a659c61
На Летитбит dle95.zip. Летитбит какуто блин регистрацию просит как я убедился она бесплатная, не люблю я все эти окошечки с вводом телефона.

Ну вроде все.

PS: Пользуйтесь, работайте, задавайте вопросы. Надо обновить движок обращайтесь!
С вами был Acid.

Add a Comment

Your email address will not be published. Required fields are marked *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.