Привет друзья. Сегодня хочется затронуть такую больную тему как СMS ( движок ). Кто сравнительно давно читет мой блог знает, что мой любимый движок это DLE - мой верный помощник, выбираю его за малую ресурсоемкость и удобный интерфейс.
О чем статья?
На сегодняшний момент в сети существует масса как бесплатных - кривых, так и платных - рабочих граберов контента с сайтов размещающихся на DLE. Обидно когда с "родного" сайта для людей с самописным контентом тупо воруют контент и размещают его на, обычно, говно сайтах. Это первая проблема.
Людям тесно работающим с данным движком известно, что он обладает хорошими SEO задатками, но не везде все гладко. Это вторая проблема.
Какие задачи?
:: свести к минимуму "шаблонность" вывода информации из движка ( не путать с обычными html шаблонами которые мы используем для внешнего оформления ) :: провести дополнительную SEO оптимизацию ссылок
Полезной информация будет лишь владельцам сайтов которые переживают за свои проекты. Замечу, что я никогда не пользовался парсерами, но владение php дает возможность представить уязвимые места для осуществления массового воровства контента. Далее будет идти исходный код движка, описание того что нужно заменить + мои комментарии. Для редактирования кода советую использовать текстовый редактор Notepad++.
Подопытный кролик: DataLife Engine v7.3. В более новых версиях редактируемые части кода должны сохраниться. Все равно сделайте резервную копию, на всякий случай ( если правите версию отличную от 7.3 ). Хочу предупредить, что от бесшаблонного парсера это не спасен, но большинство ( если и не весь ) бесплатного софта - шаблонное.
1. Бой парсерам
Открываем в корне сайта файл index.php и начинаем править:
:: парсинг системных сообщений DLE Критичность: слабая
Заменяем:
$tpl->set('{info}', "<span id='dle-info'>".$tpl->result['info']."</span>"); на
$tpl->set('{info}', $tpl->result['info']);
:: парсинг всех кратких новостей на странице. Критичность: высокая
Заменяем:
$tpl->set('{content}', "<div id='dle-content'>".$tpl->result['content']."</div>"); на:
$tpl->set('{content}', $tpl->result['content']);
Переходим в папку engine\modules, редактируем файл show.short.php:
:: парсинг короткой новости под определенным ID Критичность: высокая
Заменяем:
$tpl->set('{short-story}', stripslashes("<div id="'news-id-.$row['id'].">".$row['short_story']."</div>")); на:
$tpl->set('{short-story}', stripslashes($row['short_story']));
В том же каталоге, редактируем файл show.full.php:
:: парсинг полной новости с определенным ID Критичность: высокая
Заменяем:
$tpl->set('{full-story}', stripslashes("<div id='news-id-".$row['id']."'>".$row['full_story']."</div>")); на:
$tpl->set('{full-story}', stripslashes($row['full_story']));
2. SEO оптимизация
Открываем каталог engine\modules, редактируем файл show.short.php:
Результат: добавляем к тегу full-link ( ссылка на полную статью ) атрибут title="". Автоматически будет подставляться название новости.
Заменяем:
$tpl->set('[full-link]',"<a {$go_page}href=\"".$full_link."\">"); на:
$tpl->set('[full-link]',"<a {$go_page}href=\"".$full_link."\" title=\"{title}\">");
Код рабочий и проверенный на собственных площадках. В том числе отредактирую исходник этого блога. По ходу работы с движком буду дополнять эту статью, обновляя дату ее публикации. Подписывайтесь на обновления - будьте в курсе событий.
Да простят меня разработчики DLE, с уважением Владимир. |