Systemy - Autor: Mariusz  Data: Poniedziałek 26 Marca 2007 9:58 - Komentarze: 5

Wykorzystaj niewielki, łatwy w instalacji, SEO-przyjazny CMS

Słowa kluczowe: , , ,

sNews, to niewielki (jeden plik i 1819 lini kodu), bardzo elastyczny i łatwy w instalacji system zarządzania treścią napisany w popularnym języku PHP. Charakterystyczną cechą sNews jest jego niewielka objętość - cały system zawiera jeden plik konfiguracyjny(!) oraz plik arkuszy kaskadowych (css) oraz główny plik serwisu (index.php).

Do prawidłowego działania sytemu wymagany jest dostęp do:

  • serwera Apache z uruchomionym modułem ‘mod_rewrite”;
  • PHP w wersji przynajmniej 4.x lub nowszej;
  • popularnej bazy danych MySQL

Instalacja sNews sprowadza się do rozpakowania archiwum ZIP z najnowszą wersją systemu, które to archiwum można ściągnąć ze stron producenta CMS‘a, następnie z uzupełnienia pliku konfiguracyjnego w informacje umożliwiające połączenie z bazą danych, stworzenie bazy danych i zgranie plików na serwer. Poniżej szczegółowo opisuję tą procedurę

Konfiguracja i instalacja sNews

Na wstępie zaznaczam, że do prawidłowej instalacji sNews niezbędny jest dostęp do serwera Apache z zainstalowanym PHP i bazą danych MySQL. Co prawda sNews posiada tak zwaną “wbudowaną” wersję systemu umożliwiającą uruchomienie CMSa na komputerze lokalnym i bez instalacji całego środowiska (apache, PHP, MySQL), jednak my skoncentrujemy się na stworzeniu środowiska w pełni produkcyjnego, które umożliwi nam uruchomienie własnego serwisu WWW.

Wracając do tematu serwera, myślę, że dla osób chociażby minimalnie obeznanych z tworzeniem dynamicznych stron WWW, znalezienie odpowiedniego dostawcy usług hostingowych nie będzie problemem. Na wszelki wypadek odsyłam do świetnej listy Top100 polskich dostawców usług hostingowych - na prawdę można wybrać interesującą nas propozycję.

Po ściągnięciu systemu ze stron producenta przechodzimy do rozpakowania archiwum - otrzymujemy 6 plików:

  • changelog.txt
  • readme.html
  • style.css
  • .htaccess
  • index.php
  • snews.php

Nas zainteresują przede wszystkim 2 ostatnie z wyżej wymienionych plików - index.php (strona główna naszego serwisu), snews.php (jedyny plik konfiguracyjny systemu). Plik .htaccess jest między innymi plikiem konfiguracyjnym modułów Apache, za jego pomocą możemy także określić postać ścieżek dostępu do dynamicznie generowanych stron serwisu - szczegółowe instrukcje dotyczące konfiguracji tego pliku można znaleźć na forum dyskusyjnym sNews. Pozostałe pliki nie wymagają opisu - ich nazwy i treść mówią same za siebie :)

Zakładanie bazy danych

Tak, jak już wyżej wspominałem, zakładam, że użytkownik posiada dostęp do serwera WWW, PHP i bazy danych MySQL - jeżeli tak, to najprawdopodobniej ma także dostęp do narzędzia zwanego phpmyadmin umożliwiającego zarządzanie bazą danych poprzez interfejs WWW. Logujemy się więc do swojej bazy poprzez phpmyadmin, wchodzimy do swojej bazy danych, np. o nazwie ’snews-db’ i korzystając z opcji SQL wklejamy poniższe zapytanie do wykonania:

CREATE TABLE articles (
id int(11) primary key auto_increment,
title varchar(100) default NULL,
seftitle varchar(100) default NULL,
`text` longtext,
`date` datetime default NULL,
category int(8) NOT NULL default '0',
position int(6) default NULL,
displaytitle char(3) NOT NULL default 'YES',
displayinfo char(3) NOT NULL default 'YES',
commentable varchar(5) NOT NULL default '',
published int(3) NOT NULL default '1',
description_meta varchar(255) default NULL,
keywords_meta varchar(255) default NULL
);

CREATE TABLE categories (
id int(8) primary key auto_increment,
name varchar(100) NOT NULL,
seftitle varchar(100) NOT NULL,
description varchar(255) NOT NULL,
published varchar(4) NOT NULL default 'YES',
catorder smallint(6) NOT NULL default '0'
);

CREATE TABLE comments (
id int(11) primary key auto_increment,
articleid int(11) default '0',
name varchar(50),
url varchar(100) NOT NULL,
comment text,
time datetime NOT NULL default '0000-00-00 00:00:00',
approved varchar(5) NOT NULL default 'True'
);

CREATE TABLE settings (
id int(8) primary key auto_increment,
name varchar(20) NOT NULL,
`value` varchar(60) NOT NULL
);

INSERT INTO settings VALUES (1, 'website_title', 'sNews 1.5');
INSERT INTO settings VALUES (2, 'home_sef', 'home');
INSERT INTO settings VALUES (3, 'website_description', 'CMS');
INSERT INTO settings VALUES (4, 'website_keywords', 'snews');
INSERT INTO settings VALUES (5, 'website_email', 'info@domain.com');
INSERT INTO settings VALUES (6, 'contact_subject', 'Contact Form');
INSERT INTO settings VALUES (7, 'language', 'EN');
INSERT INTO settings VALUES (8, 'charset', 'UTF-8');
INSERT INTO settings VALUES (9, 'date_format', 'd.m.Y. H:i');
INSERT INTO settings VALUES (10, 'article_limit', '3');
INSERT INTO settings VALUES (11, 'rss_limit', '5');
INSERT INTO settings VALUES (12, 'display_page', '');
INSERT INTO settings VALUES (13, 'display_new_on_home', '');
INSERT INTO settings VALUES (14, 'display_pagination', '');
INSERT INTO settings VALUES (15, 'num_categories', 'on');
INSERT INTO settings VALUES (16, 'approve_comments', '');
INSERT INTO settings VALUES (17, 'comments_order', 'ASC');
INSERT INTO settings VALUES (18, 'comment_limit', '30');
INSERT INTO settings VALUES (19, 'word_filter_enable', '');
INSERT INTO settings VALUES (20, 'word_filter_file', '');
INSERT INTO settings VALUES (21, 'word_filter_change', '');
INSERT INTO settings VALUES (22, 'username', 'test');
INSERT INTO settings VALUES (23, 'password', '05645645627b4f6');

Kliknięcie w przycisk ‘wykonaj’ spowoduje utworzenie w bazie danych 4 tabel z których korzysta sNews (’articles’, ‘categories’, ‘comments’ i ’settings’). Wykonanie powyższego zapytania utworzy także domyślnego administratora systemu ‘test’ z hasłem ‘test’. Nie trzeba chyba wskazywać na konieczność zmiany powyższych niezłocznie po pierwszym zalogowaniu do systemu :)

Konfiguracja systemu

Mamy już stworzoną bazę danych, zajmijmy się więc edycją pliku snews.php Plik konfiguracyjny systemu składa się z kilku, dokładnie opisanych sekcji z których nas interesuje przede wszystkim sekcja konfiguracji dostępu do bazy danych (DATABASE VARIABLES). Możemy także, wedle naszego uznania, zmodyfikować sekcję językową systemu (LANGUAGE VARIABLES), dzięki czemu nasza witryna WWW uzyska polski interfejs.

Jako, że zależy nam przede wszystkim na uruchomieniu systemu, to zajmiemy się tylko sekcją pierwszą (dostępu do bazy danych). Jestem przekonany, że jeżeli komuś uda się prawidłowo zmodyfikować tą część pliku konfiguracyjnego, to spolszczenie systemu nie nastręczy mu już poważniejszych problemów :)

Poniżej prezentuję fragment kodu do modyfikacji wraz z opisem czynności do wykonania

(...ciach)

// DATABASE VARIABLES
function db($variable) {
$db = array();
$db['website'] = 'http://localhost/sNews/';
// sciezka dostepu do instalacji sNews np. www.mojadomena.pl

$db['dbhost'] = 'localhost';
// MySQL Host - w wiekszosci przypadkow nie zmieniamy
// tego parametru, ewentualnie, i w zaleznosci od
// ustawien naszego providera, podajemy np.: sql.mojprovider.pl

$db['dbname'] = 'snews';
// Database Name - nazwa naszej bazy danych,
// ktora stworzylismy poprzez phpmyadmin

$db['dbuname'] = 'username';
// Database Username - login dostepu do naszej bazy danych

$db['dbpass'] = 'password';
// Database password - haslo dostepu do naszej bazy danych

$db['prefix'] = '';
// Database prefix - jezeli uzywamy, to podajemy. W wiekszosci
// przypadkow pozostawiamy to pole puste

$db['dberror'] = 'There was an error while
connecting to the database. Check your database settings.’;
// Database error message - to jest komunikat bledu dostepu
// do bazy danych. Mozemy go sobie np. spolszczyc.

return $db[$variable];
}

(ciach…)

Po zapisaniu zmian kopiujemy pliki (snews.php, index.php, style.php) na nasz serwer. Następnie poprzez przeglądarkę WWW otwieramy stronę główną serwisu i korzystając z linku logowania (umiejscowionego w stopce domyślnego szablonu graficznego systemu) logujemy się do panelu administracyjnego. Panel administracyjny systemu jest prosty i przejrzysty - wprowadzenie odpowiednich informacji konfiguracyjnych nie powinno sprawić nikomu żadnego problemu.

Kolejną ważną czynnością, jest stworzenie w strukturze katalogów naszego systemu, katalogu przeznaczonego na pliki graficzne wykorzystywane w serwisie. Katalog ten, np. /img, powinien mieć odpowiednie prawa do odczytu i zapisu. Odpowiednie prawa możemy przydzielić wykorzystując komendę użytą z w linii komend powłoki: chmod 777 img

Modyfikacja layoutu, modyfikacja systemu

Domyślny temat graficzny systemu jest niezmiernie prosty, co raczej przydaje mu korzyści, niż wad - struktura jest czytelna, wygląd przyjemny. Oczywiście na stronach WWW producenta systemu, a także na stronach deweloperów i miłośników sNews, udostępnionych jest kilkanaście naprawdę wysokiej jakości szablonów graficznych, które w bardzo prosty sposób można wykorzystać do naszych celów. W przypadku standardowo wykonanych szablonów wystarczy po prostu zgrać na nasz serwer pliki: style.css oraz index.php. W ten sposób uzyskamy nowy wygląd serwisu. Na końcu niniejszego artykułu podaję linki do źródeł nowych tematów graficznych, czy informacji dotyczących modyfikacji silnika sNews.

Istnieją szablony (i całe systemy oparte o sNews) niestandardowe, wykorzystujące rozwiązania dedykowane do konkretnych zastosowań. Takim przykładem jest np. Językowy Świat bądź Specjalista Urolog Gdańsk. Serwis ten wykorzystuje własne, dodatkowe funkcje i rozszerzenia, umożliwiające np. generowanie “zajawek” artykułów do automatycznego wyświetlania na stronie głównej, mamy także możliwość tworzenia dodatkowych użytkowników z określonymi prawami dostępu. Warto więc pamiętać, że w wypadku wykorzystywania rozwiązań niestandardowych, należy każdorazowo dokładnie zapoznawać się z dokumentacją.

Podsumowanie

sNews jest moim zdaniem doskonałym systemem redakcyjnym, idealnym wręcz do zastosowania w niewielkich serwisach WWW bądź, po wprowadzeniu kilku modyfikacji do silnika cms’a, do wykorzystania w systemach średniej wielkości na których może pracować kilku, kilkunastu redaktorów.

Warto wspomnieć o innym, idealnym polem do zastosowania sNews. Jest to prototypowanie rozwiązań przeznaczonych do dużych systemów redakcyjnych. Niewielka i przejrzysta ilość kodu, który został użyty do stworzenia systemu, możliwość szybkiego dopisania nowych funkcji oraz rozszerzeń, łatwość tworzenia tematów graficznych, to zalety, które powodują, że systemem mogą zainteresować się także profesjonaliści tworzący zaawansowane, dedykowane rozwiązania CMS.

Linki

  • Na początek polskie, bardzo interesujące źródło wiedzy o sNews
  • Szablony do sNews;
  • Centrum dowodzenia sNews;
  • Forum użytkowników sNews - doskonałe źródło wiedzy “postawione” na innym znakomitym produkcie wartym późniejszego opisania :);
  • Darmowe tematy graficzne do sNews;
  • Kolejne, ciekawe szablony do sNews;
  • Tutaj użytkownicy sNews prezentują swoje witryny.


Komentarze: 5

Obserwuj komentarze do tego wpisu poprzez RSS 2.0. Możesz także skomentować bądź użyć trackbacka.

tworzenie stron
13, 2007 17:15

Naprawdę świetny cms ! Dzięki za wszystkie pomocne informacje! Oby więcej takich artykułów

Patric Ahlqvist
13, 2007 18:57

Hi, and thank you very much for linking to my site. Just posting to tell you that the link points to non existing material, if you want please change link to:

http://p-ahlqvist.com/designs/

Kind regards - Patric.

Mariusz
27, 2007 20:02

Hi Patric!
Now it’s ok. Thanks for info :)

Filtry
21, 2007 10:40

Do kosza z mambo jumlą i innymi kobyłami. Snews jest super!!! Dzięki za świetny artykuł :)

rowery
22, 2007 17:15

“Wykorzystaj niewielki, łatwy w instalacji, SEO-przyjazny CMS” - ciekawy artykuł, ciekawy cms.

Skomentuj

Komentarz

Szybki dostęp

Strony - 26, 2007 9:59 - Komentarze: 0

SkypeOut - wielkie rozczarowanie!

Więcej w kategorii: Strony


Systemy - 31, 2007 21:43 - Komentarze: 0

Optymalizacja bloga, a indeksacja feedów

Więcej w kategoii: Systemy


Wyszukiwarki - 2, 2008 14:10 - Komentarze: 0

Google chroni przed złośliwym oprogramowaniem

Więcej w kategorii: Wyszukiwarki