phpEvolution.net

 

Raccouris

Documentation

Pour NE 3.0. Dernière modification : 27 Juillet 2005.

Sommaire

Pré-requis

News Evolution 3 nécessite quelques connaissances sans lesquelles il sera difficile de l'installer, de l'utiliser et/ou de le mettre en oeuvre. Ainsi, des connaissances minimum du langage PHP sont requises, de même que des connaissances en matière de (X)HTML et éventuellement en CSS.

News Evolution 3 requièrt l'utilisation d'un serveur Web sur lequel PHP 4.2.0 (ou supérieur) devra être installé. Les données sont hébergées par un système de gestion de base de données MySQL 3.23.x (ou supérieur).

Pré-installation

Récupération de l'archive

L'archive de NE est disponible sous différents formats de compression (tar.gz, tar.bz2). Télécharger celle qui conviendra à votre logiciel de décompression et extrayez-en le contenu en conservant l'arborescence.

Upload sur le FTP distant

Uploadez le répertoire "ne3", précedement extrait de l'archive, sur votre FTP.

Modifications des droits d'accès des fichiers

Avant l'installation, il est nécessaire d'accorder à PHP les droits de lecture, d'écriture et d'éxecution aux fichiers et aux répertoires (chmod) de l'arborescence de NE suivants (à l'aide de votre logiciel FTP) :

Installation

Lancer l'assistant d'installation sur votre serveur (http://www.domain.tld/ne3/install.php) et suivez les instructions.

Paramétrage

Les paramètres de connexion à la base de données sont fourni par votre hébergeur pour la plupart :

Les paramètres de connexion à la zone d'administration sont à fournir à votre convenance :

Procédure d'installation

Lorsque tous les paramètres sont remplis, l'installation s'exécute sur simple pression du bouton installer. Si l'installeur a l'impossibilité de mener à terme l'installation de NE, il le signalera par un message d'erreur qui permettra de corriger les erreurs. Alors que l'installation s'est effectuée convenablement, un message indique le bon déroulement des opérations, de supprimer l'installeur (/install.php) et d'aller à l'accueil de l'interface d'administration de NE 3.

Migration de NE 2 vers NE 3

Un script de migration permet d'importer les données de NE 2 vers NE 3. Ce script se nomme migrateNE2toNE3.php et se trouve à la racine du répertoire de NE 3. Afin que ce dernier fonctionne, NE 2 et NE 3 doivent être préalablement installés; les tables des deux applications doivent être présentent dans la même base de données.

L'utilisation de ce script est très simple : après édition de celui-ci, afin de paramétrer l'accès à la base de données (le script est largement commenté), son exécution, par l'intermédiaire de votre navigateur préféré, réalise le transfert des données (nouvelles, rubriques, commentaires, et utilisateurs) et informe de l'état du transfert. Seuls les templates ne seront pas transférés : il vous faudra les retravailler afin de les adapter à NE 3.

Mise à jour

L'arborescence de NE comportent trois types de fichiers :

Une mise à jour consiste à remplacer uniquement les fichiers communs à tout NE et à reconstruire les fichiers générés (cache et autres…).

Il est donc necessaire d'effectuer les instructions suivantes dans l'ordre :

  1. Télécharger l'archive de la dernière version de NE.
  2. Extraire le contenu de l'archive sur votre poste personnel.
  3. Supprimer de l'arborescence précédement extraite les fichiers et les répertoires suivants :
    • /cache/,
    • /config/,
    • /media/,
    • /templates/,
    • /install.php,
    • /migrateNE2toNE3.php.
  4. Copier et envoyer sur votre serveur tout le contenu l'arborescence précédement nettoyer sur votre NE.
  5. S'identifier afin de vérifier le bon fonctionnement de l'interface d'administration et revalider la Configuration générale afin de reconstruire les fichiers générés et finaliser la mise à jour.

Il est judicieux de faire une sauvegarde de votre base de données periodiquement.

Configuration

La première étape, post-installation, consiste à configuer NE. Pour cela, deux sections distinctes nommées Configuration Générale et Configuration courriel permettent de fournir un certain nombre d'informations indispensable au bon fonctionnement de l'application.

Configuration générale

Dans le menu de gauche de la zone d'administration de News Evolution, choisissez Configuration générale.

Descriptions des informations nécessaires relatives à votre site :

Cliquez sur Enregistrer pour prendre en compte les changements.

Configuration courriel

Dans le menu de gauche de la zone d'administration de NE, choisissez Configuration courriel.

News Evolution peut utiliser soit la fonction mail() de PHP, soit un serveur SMTP distant. Si votre hébergeur supporte la fonction mail(), il est recommandé de l'utiliser. Si ce n'est pas le cas, il faudra alors utiliser un serveur SMTP à condition de connaitre l'adresse et éventuellement les codes d'accès.

Remplissez alors les différents champs :

Les rubriques

Les rubriques visent à organiser les articles. La création d'une rubrique sera une étape indispensable avant de rédiger un article.

Principes de fonctionnement

L'utilisation des rubriques, vis à vis des articles, pourraient être comparés à une arborescence de répertoires et de fichiers dans laquelle une rubrique serait un répertoire et un article serait un fichier.

A partir de ce principe, il est relativement simple de comprendre qu'une rubrique joue un rôle d'organisateur et peut compter des rubriques et/ou des articles en son sein.

Comme toute arborescence, celle de NE est présidé par une racine définie en interne. Cette racine a pour nom celui de votre site, tel qu'il est définit dans la Configuration générale, et a pour identifiant numérique 0. Toute rubrique sera un enfant direct ou indirect de la racine.

Dans vos pages, l'affichage des articles enfants d'une rubrique, s'effectue par l'intermédiaire de l'identifiant numérique de cette rubrique, identifiant nommé Id. Cet Id devra être défini dans quelques uns des différents formats d'affichage, sujet qui sera abordé prochainement.

Création d'une rubrique

Dans le menu de gauche, sélectionnez Edition / Ajout d'une rubrique.

Détail des champs qui permettent la création d'une rubrique :

Gestion des rubriques

En cliquant sur le lien Edition / Gestion des rubriques, il est possible de modifier les rubriques précédemment créées. Les rubriques apparaissent alors avec les détails suivants :

Les articles

Cette section montre le fonctionnement des articles dans News Evolution.

Présentation - Fonctionnement dans News Evolution.

Dans News Evolution, un article est composé de trois parties : le sommaire (optionnel); le texte principal et la source (optionnelle).

Création d'un nouvel article.

Après avoir créé une rubrique, News Evolution est prêt pour la publication d'articles. Cliquez sur Ajout d'un article dans le menu de gauche.

Détail des champs qui permettent la composition d'un article :

Intégration de News Evolution.

Cette section montre comment intégrer News Evolution au sein d'un site web.

Intégration Rapide

Avant tout chose, il est utile de savoir comment News Evolution gère l'affichage des news. Des formats sont utilisés. Il existe plusieurs type de formats : Archive, Calendar, Comment, Commentform, Complete, Text et Title. Avant de détailler chacun de ces formats, voici un exemple rapide de la mise en oeuvre de News Evolution au sein d'un site web :

Après avoir créé une rubrique et publié un article, choisir une page où apparaîtra les news puis insérer le code suivant à l'endroit voulu (Attention, la page doit porter l'extension .php) :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/text/index.class.php' );
// arguments : Text( NomDuTemplate, IdRubriqueAffichée, UrlDeSuite, UrlDeCommentaire [, NombreDeNews ] );
$MyNEText = new Text( 'xhtml', 3, 'suite.php', 'commentaire.php', 10 );
$MyNEText->NEWrite();
unset( $MyNEText );
?>

Dans la page où sera inséré ce code, les news s'afficheront selon l'id de la rubrique définie; par exemple : 3. News Evolution affichera le nombre de news défini; par exemple : 10. Si cet argument est vide, tous les articles de la rubrique ayant pour id 3 s'afficheront. Le fonctionnement des template est expliqué plus loin.

La page suite.php : dans cette page, le format Complete sera utilisé. Le sommaire (si le champ a été rempli lors de la publication d'un article), le texte et la source s'afficheront alors. Insérez ce code, par exemple, pour obtenir l'affichage complet de l'article donc l'id est 3 :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/complete/index.class.php' );
// arguments : Complete( NomDuTemplate, IdNewsAffichée, UrlDeCommentaire );
$MyNEComplete = new Complete( 'xhtml', 3, 'commentaire.php' );
$MyNEComplete->NEWrite();
unset( $MyNEComplete );
?>

La publication d'articles est alors pleinement fonctionnelle !

L'intégration du PHP est composé de 3 étapes :

  1. L'inclusion du format avec la fonction include() :

    Il est nécessaire d'inclure dans votre page le format à utiliser. Chaque format possède son propre répertoire dans le répertoire /formats/ qui se trouve à la racine du répertoire de NE. Le fichier index.class.php est le fichier à inclure dans votre page; cette opération peut être effectuée avec la fonction include() de PHP.

    Par exemple :

    include( '/chemin/absolu/vers/mon/ne3/formats/text/index.class.php' );

    Il est à noter que dans l'exemple, un chemin absolu a été utilisé pour inclure le fichier ne3/formats/text/index.class.php. L'utilisation d'un chemin relatif est tout autant envisageable.

    La variable PHP $_SERVER['DOCUMENT_ROOT'], qui renvoit généralement le chemin absolu de la racine Web, peut être d'une grande utilité si vous souhaitez inclure un fichier à l'aide d'un chemin absolu.

  2. L'instanciation de la classe du format inclus :

    Le constructeur de la classe du format porte le même nom que le format : par exemple, si le format text est inclus, l'instance de la classe se fera comme suivi. Le constructeur prend en arguments les paramètres du format : le premier argument sera toujours le nom du template, les arguments suivants diffèrent en fonction des formats.

    Par exemple :

    $MyNEText = new Text( 'xhtml', 0, 'suite.php', 'commentaire.php', 10 );

    Note : Dans certains formats, des arguments sont facultatifs.

  3. L'affichage et la destruction :

    Toutes les classes des formats possèdent une méthode NEWrite() qui permet d'afficher le résultat final en fonction des paramètres donnés dans le constructeur.

    Après affichage, il est judicieux de détruire l'instance de la classe précédemment créer, et qui est devenue inutile une fois résultat obtenu. Cela permet de libérer des ressources. Pour ce faire, il faut utiliser la fonction PHP unset().

    Par exemple :

    $MyNEText->NEWrite();
    unset( $MyNEText );

Les formats d'affichage de News Evolution.

Dans cette section, les formats d'affichage sont détaillés.

Format Archive

Le format Archive permet l'affichage d'articles d'une période (jour ou mois) définie. Les archives peuvent être limitées à une rubrique particulière.

Ce format est généralement utiliser en association avec le format Calendar, détaillé plus loin, pour accroître la facilité de navigation.

L'instanciation de la classe Archive s'effectue ainsi :

new Archive( NomDuTemplate, DateArchive, UrlDeSuite, UrlDeCommentaire [, IdRubriqueAffichée ] );

Détails des paramètres utilisés dans le constructeur de la classe Archive :

  1. NomDuTemplate : nom du template à associer à l'affichage des archives.
  2. DateArchive : période à laquelle doit être limitée l'affichage des archives. Cette période peut être un mois ou un jour. Ce paramètre prend la forme année-mois (par exemple: '2005-01' pour afficher les archives de Janvier 2005) ou la forme année-mois-jour (par exemple: '2005-01-01' pour afficher les archives de 1er Janvier 2005).

    Généralement, ce paramètre prendra pour période la valeur de la variable $_GET['archivedate']. Cette variable est issue de l'utilisation de format calendar.

  3. UrlDeSuite : url de la page à laquelle se trouve le format Complete. Cette page permettra de lire l'article plus aisément.
  4. UrlDeCommentaire : url de la page à laquelle se trouve le format comment. Cette page permettra de lire les commentaires liés à l'article plus aisément.
  5. IdRubriqueAffichée : Id de la rubrique à laquelle l'affichage doit être limité. Ce paramètre est facultatif; s'il n'est pas précisé, toutes les rubriques seront affichées dans les archives.

Exemple d'utilisation du format Archive :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/archive/index.class.php' );
// arguments : Archive( NomDuTemplate, DateArchive, UrlDeSuite, UrlDeCommentaire [, IdRubriqueAffichée ] )
$MyNEArchive = new Archive( 'xhtml', $_GET['archivedate'], 'suite.php', 'commentaire.php' , 3 );
$MyNEArchive->NEWrite();
unset( $MyNEArchive );
?>

Cet exemple affichera les archives des articles publiés le 1er Janvier 2005 et appartenant à la rubrique qui à pour identifiant 3. Le template utilisé sera xhtml. Le lien de lecture de l'article complet sera la page suite.php et le lien de lecture des commentaires de l'article sera la page commentaire.php.

Format Calendar

Le format Calendar est, en quelque sorte, l'interface avancée de navigation dans les archives.

L'instanciation de la classe Calendar s'effectue ainsi :

new Calendar( NomDuTemplate, DateCalendar, UrlDesArchives );

Détails des paramètres utilisés dans le constructeur de la classe Calendar :

  1. NomDuTemplate : nom du template à associé à l'affichage du calendrier.
  2. DateCalendar : période que doit afficher le calendrier. Cette période peut être un mois ou un jour. Ce paramètre prend la forme année-mois (par exemple: '2005-01' pour afficher le calendrier de Janvier 2005) ou la forme année-mois-jour (par exemple: '2005-01-01' pour afficher le calendrier de Janvier 2005 et mettre en valeur la date du 1er Janvier 2005).
  3. UrlDesArchives : url de la page à laquelle se trouve le format archive. Cette page permettra d'afficher les archives de la période choisie.

Exemple d'utilisation du format Calendar :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/calendar/index.class.php' );
// arguments : Calendar( NomDuTemplate, DateCalendar, UrlDesArchives );
$MyNECalendar = new Calendar( 'xhtml', '2005-01-18', 'archive.php' );
$MyNECalendar->NEWrite();
unset( $MyNECalendar );
?>

Cet exemple affichera le calendrier de Janvier 2005. Le template utilisé sera xhtml. Le lien de renvoi aux archives sera la page archive.php.

Format Comment

Le format Comment permet d'afficher les commentaires, d'un article, rédigé par vos lecteurs.

L'instanciation de la classe Comment s'effectue ainsi :

new Comment( NomDuTemplate, IdNews );

Détails des paramètres utilisés dans le constructeur de la classe Comment :

Exemple d'utilisation du format Comment :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/comment/index.class.php' );
// arguments : Comment( NomDuTemplate, IdNews );
$MyNEComment = new Comment( 'xhtml', 7 );
$MyNEComment->NEWrite();
unset( $MyNEComment );
?>

Cet exemple affichera les commentaires de l'article qui a pour identifiant numérique 7. Le template utilisé sera xhtml.

Format CommentForm

Le format CommentForm permet d'afficher le formulaire de commentaire dédié à un article précis.

L'instanciation de la classe CommentForm s'effectue ainsi :

new CommentForm( NomDuTemplate, IdNews, ValidComment [, BalisesAutorisées ] );

Détails des paramètres utilisés dans le constructeur de la classe CommentForm :

  1. NomDuTemplate : nom du template à associé à l'affichage du formulaire de commentaires.
  2. IdNews : Id de l'article auquel le commentaire correspond.

    Généralement, ce paramètre prendra pour valeur celle de la variable $_GET['newsid']. Cette variable est issue de l'utilisation des formats Archives, Complete et Text.

  3. ValidComment : Permet de spécifier si le commentaire doit être validé immédiatement ou non.

    Pour valider le commentaire, indiqué la valeur true et pour ne pas validé automatiquement le commentaire, indiqué false. Les commentaires non validés pourront être validés ultérieurement par un administrateur via l'interface d'administration.

  4. BalisesAutorisées : Cet argument est optionnel et permet de lister les balises HTML autorisées lors de la rédation d'un commentaire.

    Cet argument doit être un tableau PHP (exemple : array( 'a', 'b', 'p', 'u', 'br' )). Par défaut, les balises autorisées sont les suivantes : <a>, <i>, <b>, <u>, <em>, <strong>, <ul>, <ol>, <li>, <p> et <br>

Exemple d'utilisation du format CommentForm :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/commentform/index.class.php' );
// arguments : CommentForm( NomDuTemplate, IdNews, ValidComment [, BalisesAutorisées ] );
$MyNECommentForm = new CommentForm( 'xhtml', 7, true );
$MyNECommentForm->NEWrite();
unset( $MyNECommentForm );
?>

Cet exemple affichera le formulaire de commentaire de l'article qui a pour identifiant numérique 7. Le template utilisé sera xhtml. Les commentaires rédigés par l'intermédiaire de ce formulaire seront automatiquement validés.

Format Complete

Le format Complete permet d'afficher un article précis.

L'instanciation de la classe Complete s'effectue ainsi :

new Complete( NomDuTemplate, IdNewsAffichée, UrlDeCommentaire );

Détails des paramètres utilisés dans le constructeur de la classe Complete :

  1. NomDuTemplate : nom du template à associé à l'affichage de l'article.
  2. IdNewsAffichée : Id de l'article à afficher.

    Généralement, ce paramètre prendra pour valeur celle de la variable $_GET['newsid']. Cette variable est issue de l'utilisation des formats Archives, Text et Title.

  3. UrlDeCommentaire : url de la page à laquelle se trouve le format Comment. Cette page permettra de lire les commentaires lié à l'article.

Exemple d'utilisation du format Complete :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/complete/index.class.php' );
// arguments : Complete( NomDuTemplate, IdNewsAffichée, UrlDeCommentaire );
$MyNEComplete = new Complete( 'xhtml', 3, 'commentaire.php' );
$MyNEComplete->NEWrite();
unset( $MyNEComplete );
?>

Cet exemple affichera l'article qui a pour identifiant numérique 3. Le template utilisé sera xhtml. Le lien de lecture des commentaires de l'article sera la page commentaire.php.

Format Editor

Le format Editor permet d'afficher le formulaire public de soumission d'article. Un article, publié par l'intermédiaire de ce format, sera soumis à des vérifications puis pourra être validé par un administrateur via l'interface d'administration de NE.

L'instanciation de la classe Editor s'effectue ainsi :

new Editor( NomDuTemplate [, BalisesAutorisées ] );

Détails des paramètres utilisés dans le constructeur de la classe Editor :

  1. NomDuTemplate : nom du template à associé à l'affichage du formulaire public de soumission d'article.
  2. BalisesAutorisées : Cet argument est optionnel et permet de lister les balises HTML autorisées lors de la rédation d'un article.

    Cet argument doit être un tableau PHP (exemple : array( 'a', 'b', 'p', 'u', 'br' )). Par défaut, les balises autorisées sont les suivantes : <a>, <b>, <p>, <u> et <br>

Exemple d'utilisation du format Editor :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/editor/index.class.php' );
// arguments : Editor( NomDuTemplate [, BalisesAutorisées ] );
$MyNEEditor = new Editor( 'xhtml' );
$MyNEEditor->NEWrite();
unset( $MyNEEditor );
?>

Cet exemple affichera le formulaire public de soumission d'articles. Le template utilisé sera xhtml.

Le format Search permet d'afficher le formulaire de recherche des articles ainsi que les résultats de la recherche.

L'instanciation de la classe Search s'effectue ainsi :

new Search( NomDuTemplate );

Détails des paramètres utilisés dans le constructeur de la classe Search :

  1. NomDuTemplate : nom du template à associé à l'affichage du formulaire de recherche des articles.

Exemple d'utilisation du format Search :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/search/index.class.php' );
// arguments : Search( NomDuTemplate );
$MyNESearch = new Search( 'xhtml' );
$MyNESearch->NEWrite();
unset( $MyNESearch );
?>

Cet exemple affichera le formulaire de recherche des articles ainsi que les résultats de la recherche. Le template utilisé sera xhtml.

Format Text

Le format Text permet d'afficher les articles d'une rubrique. Si la rubrique spécifiée comporte des sous-rubriques, les articles de ces dernières seront aussi affichés.

L'instanciation de la classe Text s'effectue ainsi :

new Text( NomDuTemplate, IdRubriqueAffichée, UrlDeSuite, UrlDeCommentaire [, NombreDeNews ] );

Détails des arguments passés dans le constructeur de la classe Text :

  1. NomDuTemplate : nom du template à associer à l'affichage des titres.
  2. IdRubriqueAffichée : Id de la rubrique auquel l'affichage doit être limité. Tous les titres du rubriques fils de celui-ci seront affichés.
  3. UrlDeSuite : url de la page à laquelle se trouve le format Complete. Cette page permettra de lire l'article plus aisément.
  4. UrlDeCommentaire : url de la page à laquelle se trouve le format comment. Cette page permettra de lire les commentaires lié à l'article plus aisément.
  5. NombreDeNews : le nombre d'articles à afficher. Si cet argument optionnel est omis, alors tous les articles de la rubrique spécifiée seront affichés.

Exemple d'utilisation du format Text :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/text/index.class.php' );
// arguments : Text( NomDuTemplate, IdRubriqueAffichée, UrlDeSuite, UrlDeCommentaire [, NombreDeNews ] );
$MyNEText = new Text( 'xhtml', 3, 'suite.php', 'commentaire.php', 10 );
$MyNEText->NEWrite();
unset( $MyNEText );
?>

Cet exemple affichera les 10 derniers articles appartenant à la rubrique qui a pour identifiant 3. L'affichage sera formaté avec le template xhtml. Le lien de lecture de l'article complet sera la page suite.php et le lien de lecture des commentaires de l'article sera la page commentaire.php.

Format Title

Le format Title permet d'afficher les titres des articles d'une rubrique. Si la rubrique spécifiée comporte des sous-rubriques, les titres de ces dernières seront aussi affichés.

Les titres sont affichés par ordre chronologique descendante.

L'instanciation de la classe Title s'effectue ainsi :

new Title( NomDuTemplate, IdRubriqueAffichée, UrlDeSuite [, NombreDeNews ] );

Détails des arguments passés dans le constructeur de la classe Title :

  1. NomDuTemplate : nom du template à associer à l'affichage des titres.
  2. IdRubriqueAffichée : Id de la rubrique auquel l'affichage doit être limité. Tous les titres du rubriques fils de celui-ci seront affichés.
  3. UrlDeSuite : url de la page qui permettra de lire l'article intégral selon le format Complete.
  4. NombreDeNews : le nombre des titres à afficher. Si cet argument optionnel est omis, alors tous les titres des articles de la rubrique spécifiée seront affichés.

Exemple d'intégration du format Title :

<?php
include( '/chemin/absolu/vers/mon/ne3/formats/title/index.class.php' );
// arguments : Title( NomDuTemplate, IdRubriqueAffichée, UrlDeSuite [, NombreDeNews ] );
$MyNETitle = new Title( 'xhtml', 1, 'suite.php', 10 );
$MyNETitle->NEWrite();
unset( $MyNETitle );
?>

Cet exemple affichera les 10 derniers titres des articles appartenant à la rubrique qui a pour identifiant 1. L'affichage sera formatté avec le template xhtml. Et le lien permettant de lire l'article intégral pointera vers la page suite.php.

Calendrier

«   Juillet 2008   »
Lun Mar Mer Jeu Ven Sam Dim
  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      

Copyright © 2002 - 2008, Pierrick Boulière, phpEvolution.net.

phpEvolution.net (CNIL : 822792).