Простейшая CMS на основе SMF своими руками

Разработка своих веб-приложений и страничек

Простейшая CMS на основе SMF своими руками

Сообщение InSide » 06 авг 2009, 14:53

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

Сразу оговорюсь, что полезен текст будем только лишь тем человекам, кто не привык по скотски воровать коммерческие скрипты, а пользуется бесплатными аналогами. А если еще конкретней – речь пойдет о форумном движке SMF. Движок этот замечателен тем (кроме того что он бесплатен), что уже в комплекте он содержит комплект SSI функций, на основе которых можно легко и просто реализовать простейшую ленту новостей и вместе с ней подобие простейшего сайта.

Как ставить этот самый SMF, останавливаться не будем, тем более что в помощь есть подробная инструкция (viewtopic.php?t=445). Повествование будет вестись исходя из той предпосылки, что сайт будет находиться по адресу test1.ru, а форум установлен в директорию test1.ru/forum/. Также предполагаются минимальные знания в установке и настройки локальных веб-серверов, элементарные знания в HTML и CSS (самый минимум, хотя и он не необходим).

Итак, сайт наш, вернее его лицо – главная страница – будет состоять из одного файла с нехитрым названием index.php. Выглядеть он будет так :

Код: Выделить всёРазвернуть
<html>
<head>
   <title>Лента новостей</title>
</head>
<body>
Привет мир!
</body>
</html>


Создаем такой файл и кладем его в директорию test1.ru. Если все сделано правильно – то набрав в браузере test1.ru мы увидим нашу страничку с текстом «Привет мир!»

Чтобы подключить к нашему файлу (а теперь уже полноценному практически сайту) необходмио в самое начало файла – до всех строк! – добавить такую конструкцию
Код: Выделить всёРазвернуть
<?
include($_SERVER['DOCUMENT_ROOT']."/forum/SSI.php");
?>

Прошу обратить внимание что SSI.php должно быть написано именно так – всеми большими буквами. На виндовом денвере, конечно, все сработает и так – а вот при заливке на хостинг (если такое когда то случится) может выйти казус – Unix’у важен регистр букв.
Так вот – теперь наша страничка будет выглядеть так :

Код: Выделить всёРазвернуть
<?
include($_SERVER['DOCUMENT_ROOT']."/forum/SSI.php");
?>
<html>
<head>
   <title>Лента новостей</title>
</head>
<body>
Привет мир!
</body>

</html>

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

Код: Выделить всёРазвернуть
<?
include($_SERVER['DOCUMENT_ROOT']."/forum/SSI.php");
?>

<html>
<head>
   <title>Лента новостей</title>
</head>
<body>


<div style="float:left; width:69%; margin-right:10px; ">
<h1>Основная лента новостей</h1>

</div>


<div style="float:left; width:29%;">
<h1>Боковая панель</h1>

</div>

</body>

</html>



А дальше напихиваем в файл вызовов SSI-функций, чтобы облагородить наш сайт и придать ему вид собственно сайта. Выглядеть это будет так :


Код: Выделить всёРазвернуть
<?
include($_SERVER['DOCUMENT_ROOT']."/forum/SSI.php");
?>

<html>
<head>
   <title>Лента новостей</title>
</head>
<body>


<div style="float:left; width:69%; margin-right:10px; ">
<h1>Основная лента новостей</h1>
<?php ssi_boardNews(); ?>
</div>


<div style="float:left; width:29%;">
<h1>Боковая панель</h1>

<h3>Авторизация</h3>
<?php ssi_welcome(); ?>

<h3>Последние посты в форуме</h3>
<?php ssi_recentTopics(); ?>

<h3>Кто онлайн</h3>
<?php ssi_logOnline(); ?>

<h3>Поиск на сайте</h3>
<?php ssi_quickSearch(); ?>

<h3>Статистика</h3>
<?php ssi_boardStats(); ?>


<h3>Новичок</h3>
<?php ssi_latestMember(); ?>

</div>

</body>

</html>


Всё! Сайт готов. Выглядит он примерно так

Стоит упомянуть пару уточнительных моментов. Так как мы не указывали параметры функций – то все значения брались по умолчанию. Соответственно новости – это темы, созданные в первом разделе форума (адрес http://test1.ru/forum/index.php?board=1.0) и новость выводится вся – то есть весь первый пост темы без сокращений. Также стоит сказать, что функций этих в комплекте с форумом идет гораздо больше, чем мы использовали тут – и все остальные функции с примерами работы можно посмотреть в файле ssi_examples.php, который находится в корневой директории форума. Запустите этот файл через браузер (http://test1.ru/forum/ssi_examples.php) и при желании добавьте своему сайту функционала, используя найденные там функции.

Минусы такого подхода обязательно найдут критики, мы же отметим отдельные плюсы.
1. Главная страница вашего сайта может иметь любой дизайн и его можно сделать обладая минимальными навыками HTML и CSS
2. Любая тема в форуме может стать новостью – достаточно эту тему переместить в новостной раздел форума – и она попадет на главную; также любое сообщение может стать новостью, если тему разделить на месте интересного сообщения – и вновь образовавшуюся тему переместить в новостной раздел (естественно нужно не забыть дать право создания тем в новостном разделе только админам и/или модерам)

Вопросы приветствуются. Ответы не обещаются – но по мере возможностей будут.
InSide
Начинающий участник
 
Сообщения: 6
Зарегистрирован: 22 ноя 2007, 21:58

Re: Простейшая CMS на основе SMF своими руками

Сообщение On-line » 18 авг 2009, 21:38

что-то все молчат.. не кому не интересно?

отличная статья, молодец!
Аватара пользователя
On-line
Активный участник
 
Сообщения: 1083
Зарегистрирован: 31 окт 2008, 23:54
Домен: http://vbalashove.ru

Re: Простейшая CMS на основе SMF своими руками

Сообщение ds-jan » 18 авг 2009, 21:52

Я пробовал делать по этой статье.Я не ас в этом но мне не понравилось
ИзображениеИзображение
Изображение
Изображение
Аватара пользователя
ds-jan
Активный участник
 
Сообщения: 1206
Зарегистрирован: 27 апр 2009, 06:57
Откуда: Балаково. Пром.зона
Домен: http://empower-servers.ru

Re: Простейшая CMS на основе SMF своими руками

Сообщение On-line » 18 авг 2009, 23:40

ds-jan писал(а):Я пробовал делать по этой статье.Я не ас в этом но мне не понравилось

я тоже пробовал.. я тоже не айс.. и мне тоже не понравилось..
:D
Аватара пользователя
On-line
Активный участник
 
Сообщения: 1083
Зарегистрирован: 31 окт 2008, 23:54
Домен: http://vbalashove.ru

Re: Простейшая CMS на основе SMF своими руками

Сообщение Crazy-Raven » 23 окт 2010, 08:41

а в phpbb есть такое?
Изображение
Аватара пользователя
Crazy-Raven
Начинающий участник
 
Сообщения: 6
Зарегистрирован: 22 фев 2009, 13:53
Откуда: Saratov

Re: Простейшая CMS на основе SMF своими руками

Сообщение Leem » 23 окт 2010, 17:46

include($_SERVER['DOCUMENT_ROOT']."/forum/SSI.php");

Угу , слава LFI ?
Аватара пользователя
Leem
Участник
 
Сообщения: 23
Зарегистрирован: 22 июн 2010, 07:00


Вернуться в PHP, HTML, CSS...

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22

cron