SilverStripe – CMS et Framework PHP, un CMS à suivre et à comparer à Worpdress, Drupal, Joomla
On continue dans l’exploration des nouveautés dans le monde du CMS open-source c’est à dire bâti autour de PHP-MySQL. Des CMS naissants qui pourraient faire la nique dans quelques années, mois, semaines, jours au triptyque de CMS gagnants que sont : Worpdress, Drupal, Joomla. On avait commencé par Concrete5
, on continue avec SilverStripe
.
- Concrete5 – Quelques nouveautés dans le monde du CMS
http://social.hecube.net/blog/2010/10/07/concrete5-quelques-nouveautes-dans-la-monde-du-cms-en-comparaison-de-worpdress-drupal-joomla/
Les critères de sélection
Pour mémoire, la sélection s’est faite sur des critères vraiment basiques, trop peut-être pour des développeurs aguerris mais que vaut la beauté du code au regard du résultat graphique produit par un site, de l’expérience utilisateur et de la courbe d’apprentissage ultra rapide dans la gestion d’un site. Les voici.
- Scriptiquement parlant, faire un site, basé sur le tandem PHP-MySQL
- Possiblement hébergement sur un serveur mutualisé
- Avec un temps d’apprentissage limité pour publier un page ou une galerie de photos par exemple
- Et pour finir quelques possibilités de personnalisation graphique afin d’éviter que le site ressemble à celui du voisin
Il ne restera désormais sur la liste que Frog CMS
, qui est toujours en attente d’un comparatif.
Une définition de SilverStripe
Notre choix s’est porté sur SilverStripe car c’est à la fois un CMS et un framework PHP. Ce qui soit dit en passant à tous les avantages et/ou les inconvénients de l’un et de l’autre ! C’est un peu comme si on réunissez : WordPress et Kohana ou Drupal et CodeIgniter…
Pour en savoir un peu plus sur nos deux frameworks favoris chez Hecube.net : Kohana et CodeIgniter. Reportez aux articles précédents de ce blog.
- Kohana, CodeIgniter, Framework PHP – Un comparatif entre Kohana et CodeIgniter
http://social.hecube.net/blog/2009/10/11/kohana-codeigniter-framework-php-un-comparatif-entre-kohana-et-codeigniter/ - Framework PHP – Quel framework choisir entre CodeIgniter, CakePHP, Symphony, Zend…
http://social.hecube.net/blog/2009/05/23/framework-php-quel-framework-choisir-entre-codeigniter-cakephp-symphony-zend/
SilverStripe is a PHP CMS built with Sapphire framework, and it uses MVC design pattern. you can view example sites that built with SilverStripe from the official webpage.
Source: http://silverstripe.org/home/
On va faire les test sur SilverStripe-v2.4.4
en local sur MAMP.
Installation de SilverStripe
On va faire les test sur SilverStripe-v2.4.4 en local sur MAMP.
/Applications/MAMP/Library/bin/mysql -u root -p |
# Création simultanée de la base sist_install # et de l'utilisateur sist_install CREATE USER 'sist_install'@'localhost' IDENTIFIED BY 'sist_install'; GRANT USAGE ON *.* TO 'sist_install'@'localhost' IDENTIFIED BY 'sist_install'WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0; CREATE DATABASE IF NOT EXISTS sist_install;GRANT ALL PRIVILEGES ON sist_install.* TO 'sist_install'@'localhost'; |
Installation de SilverStripe
Il vous donc au préalable créer la BDD sinon pas mal d’erreurs vont s’afficher sur la page d’installation. Un point intéressant, c’est lors de l’installation vous allez pourvoir configurer l’ensemble du site : Database, CMS Admin Account, Theme…etc. sur une page uniquement.
L’installation
Comme souvent dans un CMS, pour Joomla, il faut faire de même, on doit supprimer les fichiers ou le répertoire d’installation. Il faut tout supprimer manuellement install.php
plutôt que de passer par le lien qui vous est proposé.
Surtout, n’oubliez pas de mettre un adresse email valide pour vous connecter au backend en temps qu’admin.
For security reasons you should now delete the install files, unless you are planning to reinstall later (requires admin login, see above). The web server also now only needs write access to the “assets” folder, you can remove write access from all other folders. Click here to delete the install files.
Exploration de l’administration de SilverStripe (backend)
Commençons par l’administration d’une page. On va modifier les pages qui sont livrées avec l’installation de SilverStripe.
En cas d’erreur, il existe une procédure de rollback
comme sous WordPress qui permet de restaurer une version antérieure de votre page.
Pour voir les modifications, ne pas oublier de bien cliquer sur Save and Publish
Il existe des possibilité des batch action sur les pages, ce qui est pas mal lorsque vous devez effectuer une maintenance transversale sur tout votre contenu, par exemple changement du copyright en bas de page !
Gestion des médias et insertion d’une image dans une page
Il faut envoyer l’image, une fois dans votre gestionnaire de médias, vous pourrez l’insérer.
Insertion de l’image dans une page
Changer de thème pour votre site sous SilverStripe
Il est assez simple de cloner le thème par défaut pour ensuite l’accommoder à votre “sauce” webdesign. Dans notre cas, nous allons rapidement créer une thème du nom de hecube
sur le base du thème qui est proposé par défaut blackcandy
.
Les conseils données par SilverStripe pour créer facilement un thème
- Unpack the contents of the zip file into the themes directory in your SilverStripe installation.
- Change the site to the theme. You can do this either by:
- putting the following line in your ./mysite/_config.php: `SSViewer::set_theme("themename");` - changing the theme in the Site Configuration panel in the CMS
Pour se faire, il faut copier le répertoire blackcandy
, le renommer en hecube
puis modifier la paramètres suivants :
On change les éléments dans les feuilles de style .css
* SIST Hecube Theme * http://www.hecube.net |
html { /* background: #626467 url(../images/bg.gif) repeat; */ background-color: #dddddd; } |
On modifie le thème chargé par défaut. Vous pouvez aussi le faire depuis l’admin.
le fichier est dans /SilverStripe/mysite/_config.php
// This line set's the current theme. More themes can be // downloaded from http://www.silverstripe.org/themes/ /* SSViewer::set_theme('blackcandy'); */ SSViewer::set_theme('hecube'); |
Pour information les fichiers SilverStripe par exemple Page.ss
sont truffés de pseudo-tags. Ce qui facilite l’intégration si tant qu’on maitrise leurs variables comme sous Drupal par exemple.
<!DOCTYPE html> <html lang="$ContentLocale"> <head> <% base_tag %> <title><% if MetaTitle %>$MetaTitle<% else %>$Title<% end_if %> » $SiteConfig.Title</title> $MetaTags(false) <link rel="shortcut icon" href="/favicon.ico" /> <% require themedCSS(layout) %> <% require themedCSS(typography) %> <% require themedCSS(form) %> <!--[if IE 6]> <style type="text/css"> @import url(themes/blackcandy/css/ie6.css); </style> <![endif]--> </head> <body> <div id="BgContainer"> <div id="Container"> <div id="Header"> $SearchForm <h1>$SiteConfig.Title</h1> <p>$SiteConfig.Tagline</p> </div> |
C’est un essai “quick and dirty”. Pour développer votre propre thème, reportez-vous à la documentation qui n’existe malheureusement qu’en anglais.
Source: http://doc.silverstripe.org/sapphire/en/topics/themes
Pour accéder à l’admin, il vous suffit d’ajouter /admin/
à la en racine de l’adresse de votre site dans un navigateur http://127.0.0.1/SilverStripe/admin/
En savoir plus
- Le développement de thème pour SilverStripe
http://doc.silverstripe.org/sapphire/en/topics/theme-development - Le site de démo sous SilverStripe
http://demo.silverstripe.com/ - Télécharger la dernier version de SilverStripehttp://silverstripe.org/stable-download