Инструкция по интеграции Ajax Comentit в nano-CMS

Сегодня поговорим о том, как внедрить в nano-CMS возможность комментирования, RSS-ленту и некоторые другие радости. Если лень читать много буковок и лазить в код CMS-ки, милости просим на страничку покупки готовой сборки Ajax 3.8 Comentit и nano-CMS - Nano-comment в магазине Инструменты сайто-строителя. Демонстрация лота находится здесь.

Как вы несомненно знаете, nano-CMS - это очень простая и лёгкая система управления контентом, при этом она довольно любима поисковиками. Однако в базовой комплектации мы получаем всего лишь статичный сайт, неспособный к самостоятельному наполнению материалом. Это следовало бы сразу же исправить, чем мы сейчас и займёмся.

Расширять возможности nanoCMS мы будем с помощью чудесного скрипта Ajax Commentit. Мы сможем добавить сервисы комментирования и новостей, оборудовать нану блоками последних комментариев и RSS-лентой. Всё это несомненно улучшит перелинковку, ускорит индексацию и позволит заполучить дополнительный контент для вашего сайта.

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

Правка файла index.php

Открываем index.php в корне наны (не в папке data/content) и ищем такие строки:

header("Content-Type: text/html; charset=$charset", false);
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", FALSE);
header("Pragma: no-cache");

Удаляем эти строки, затем ищем строку: die ($content); и также удаляем её. Сохраняем файл. Больше его трогать мы не будем.

Правка файла _design.php

Теперь необходимо поправить вывод шаблона. Здесь нужно изменить принцип вывода шаблона на экран. Теперь мы будем выводить содержание с помощью комманды echo. Коротко об изменении шаблона:

  • Во-первых, мы выводим переменную вместо $content=<<<ЕОF контент ЕОF; по новому echo ' контент ';
  • Во-вторых, все переменные, используемые в шаблоне, мы теперь окружаем точкой и дефисом. Вот так: '.$add.'
  • В-третьих, мы ставим точку с запятой между строками в php коде. Например, мы вставляем форму комментирования:
    '.$content;
    include ($_SERVER['DOCUMENT_ROOT'].'/com/comment.php');
    echo '

Мы не будем здесь вдаваться в подробности. Далее вы можете просто посмотреть на пример. Дефолтный шаблон выглядит таким образом:

<?php /* Выше этой строки в файле ничего не должно быть */

$title_default=$_s["title"];

$content=<<<EОF
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>$title</title>
<meta name="title" content="$title">
<link rel="icon" href="$turl/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="$turl/favicon.ico" type="image/x-icon">
<link rel="stylesheet" type="text/css" href="$turl/css/left_content_right.css">
<link rel="stylesheet" type="text/css" href="$turl/css/nano_default.css">
</head>
<body>
<div id="gordi">
<div id="main">
<div class="header"></div>
<div class="wrap">
<div id="content"><!–- google_ad_section_start -–>$content<!–- google_ad_section_end -–></div>
<div class="left">$leftmenu</div>
</div>
<div class="right">$rightmenu $add</div>
<div class="clear"></div>
</div>
<div id="footer">
<span class="small">
<a href="$turl/"><span class="small">$title_default</span></a> © 2008 Построено на <a target="_blank" href="http://nanocms.name/"><span class="small">nano-CMS</span></a>
</span>
</div>
<div id="header">
<div class="title"></div>
<h1>$title_default</h1>
<h2>$title</h2>
$topmenu
</div>
</div>
</body>
</html>
EОF;

/* Ниже этой строки в файле ничего не должно быть. */ ?>

Обновлённый шаблон выглядит таким образом:

<?php /* Выше этой строки в файле ничего не должно быть */

$title_default=$_s["title"];

echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>'.$title.'</title>
<meta name="title" content="'.$title.'">
<link rel="icon" href="'.$turl.'/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="'.$turl.'/favicon.ico" type="image/x-icon">
<link rel="stylesheet" type="text/css" href="'.$turl.'/css/left_content_right.css">
<link rel="stylesheet" type="text/css" href="'.$turl.'/css/nano_default.css">
</head>
<body>
<div id="gordi">
<div id="main">
<div class="header"></div>
<div class="wrap">
<div id="content"><!–- google_ad_section_start -–>'.$content;
If($_SERVER["REQUEST_URI"]!="/stat.htm" && $_SERVER["REQUEST_URI"]!="/connect.htm") include ($_SERVER['DOCUMENT_ROOT'].'/com/comment.php');
echo '<!–- google_ad_section_end -–></div>
<div class="left">'.$leftmenu;
require_once ($_SERVER['DOCUMENT_ROOT'].'/com/last.php');
echo '</div>
</div>
<div class="right">'.$rightmenu.' '.$add.'</div>
<div class="clear"></div>
</div>
<div id="footer">
<span class="small">
<a href="'.$turl.'/"><span class="small">'.$title_default.'</span></a> © 2008
Построено на <a target="_blank" href="http://nanocms.name/"><span class="small">nano-CMS</span></a> </span>
</div>
<div id="header">
<div class="title"></div>
<h1>'.$title_default.'</h1>
<h2>'.$title.'</h2>
'.$topmenu.'
</div>
</div>
</body>
</html>';

/* Ниже этой строки в файле ничего не должно быть. */ ?>

Вставляем комментарии

В нужном месте (обычно после переменной $content) нужно вставить строку:

include ($_SERVER['DOCUMENT_ROOT'].'/папка_со_скриптом/comment.php');

Для того, чтобы не встраивать скрипт комментирования на некоторые страницы (например, на страницах Коннекта с администратором или Статистики), нужно задать такое условие:

If($_SERVER["REQUEST_URI"]!="/stat.htm" $$ $_SERVER["REQUEST_URI"]!="/connect.htm") include ($_SERVER['DOCUMENT_ROOT'].'/com/comment.php');

А если вы хотите вывести также заголовок блока, то следует задать правило немного сложнее. Например:

If($_SERVER["REQUEST_URI"]!="/stat.htm" $$ $_SERVER["REQUEST_URI"]!="/connect.htm") {echo '<h3>Комментарии:</h3>';
include ($_SERVER['DOCUMENT_ROOT'].'/com/comment.php');}

Вставляем блоки последних комментариев

В нужном месте (например после переменных $leftmenu или $rightmenu) нужно вставить строку:

require_once ($_SERVER['DOCUMENT_ROOT'].'/папка_со_скриптом/last.php');

или

require_once ($_SERVER['DOCUMENT_ROOT'].'/папка_со_скриптом/last2.php');

Использование в качестве новостного скрипта

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

Итак, чтобы организовать новостную ленту на своём сайте, необходимо вначале убрать форму комментирования из ленты новостей. Для этого следует заменить строку

<input type="hidden" name="url" id="urls" value="<?echo$_SERVER["REQUEST_URI"];?>">

на

<input type="hidden" name="url" id="urls" value="/страница_новостей.htm">

Затем следует вставить форму в панель администрирования с помощью стандартной процедуры.

Вставляем счётчик комментариев

В начале страницы дизайна (_design.php) вставляем скрипт подсчёта комментариев, а также определяем нужные страницы и засовываем значения в переменные.

include_once ($_SERVER['DOCUMENT_ROOT']."/папка_со_скриптом/countcomment.php");
$count=countcomment('/страница1.htm');
$count1=countcomment('/страница2.htm');

Затем выводим переменные в нужном месте: '.$count.' '.$count1.'

Удаляем функцию авторизации

Иногда скрипт комментариев можно использовать в составе CMS с админкой, однако иметь раздельные панели не удобно. Поэтому вы можете удалить необходимость авторизироваться и вставить страницу админской части CommentIt в админку. Для этого следует всего лишь удалить из файла adm.php (в корне CommentIt) строки, начиная со строки session_start(); и заканчивая строкой 115.

Итак, вы можете прикреплять комментарии к любой странице, устанавливать блоки последних комментариев и последних уникальных комментариев, прикреплять RSS-ленту и организовать новости на своём сайте в помощью всего одного скрипта.

Если вы решились на покупку, выбирайте. Всё зависит от того, хотите ли вы заниматься настройкой и правкой шаблонов или вам это делать лениво. В первом случае следует купить только скрипт Ajax Commentit. Во втором же следует обратить внимание на готовую сборку Ajax 3.8 Comentit + nano-CMS - Nano-comment. Если же интересует помощь в настройке этого хозяйства, могу ответить на ваши вопросы в комментариях или в мыл. Возможна также и оплачиваемая услуга по интеграции в ваш шаблон или адаптации шаблона под nano-CMS с добавлением возможности комментирования. Все предложения несомненно будут рассмотрены.

Интересно, что будет дальше? Подпишись на RSS


Адрес заметки: http://lexnevermind.com/post_1236181130.html
Ваш комментарий к статье



cod


Примечание:
Обязательные для заполнения поля помечены карандашом
email при указании не будет опубликован.
Адреса с http:// преобразуются в ссылки автоматически
Для этого отделяйте их от текста ПРОБЕЛАМИ с обеих концов
Теги запрещены

Рейтинг популярности заметок:

март, 2009
пн вт ср чт пт сб вс
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
Обучение веб-программированию за 3 месяца

Эффективная покупка ссылок для продвижения