|
Du Speedberg dans votre PHP...Résumé des épisodes précédents Speedberg(http://www.myepfl.ch /speedberg) est un ensemble de scripts en PHP (Personal Home Page) permettant de composer une page HTML respectant la charte graphique EPFL, de manière structurée. L'installation de Speedberg ne sera pas détaillée dans cet article. Les instructions d'installation sont disponibles sur le site http://www.myepfl.ch/speedberg. Développer avec Speedberg nécessite de connaître PHP, et en particulier de savoir programmer en objet avec PHP. En effet, l'architecture de Speedberg se base sur les concepts objets. Tous les éléments d'une page sont des objets que l'on crée. Parmi les objets disponibles, on trouve:
Sur la base de l'objet ToolBox de base, on dispose de boîtes prédéfinies très utiles:
On dispose les objets selon ses propres besoins sur une trame: l'objet Page. Un objet Page est constitué de zones éditables dans lesquelles on place nos objets. Il existe plusieurs objets Page prédéfinis:
Pour faire fonctionner un site en Speedberg, certains éléments de configuration sont nécessaires. Ceux-ci sont éditables dans un fichier de configuration situé dans config/config.inc.php. Il est aussi nécessaire de renseigner un fichier XML de description du site (sitemap.xml) pour générer le sommaire, ainsi que la barre de navigation. Trêve d'explications techniques, Créons notre première page avec Speedberg. D'abord, on charge les paramètres de configuration depuis le fichier de configuration:
<?
include("config/config.inc.php");
Puis on charge les définitions des objets qu'on souhaite utiliser:
require_once("include/standardPage.tpl.php");
require_once("include/generalToolBox.tlb.php");
Ici, on va utiliser l'objet standardPage pour faire une page de contenu, et les toolboxes définies. Maintenant que tout est chargé, on peut donc commencer à construire notre page: $page = new standardPage(index); On crée ici l'objet de page qui va nous servir de trame. L'argument index est l'identifiant de la page dans le sitemap du site. On crée ensuite un sommaire et une boîte de recherche qu'on place respectivement dans les zones Menu et Annex
$sommaire = new SummaryBox();
$page->addTozone("Menu",$sommaire);
$recherche = new SearchBox();
$page->addTozone("Menu",$recherche);
On crée un objet article avec comme titre actualités, on met bonjour comme contenu, et on le place dans la zone Main:
$monArticle = new Article("actualités");
$monArticle->setBody("Bonjour !!!");
$page->addToZone("Main",$monArticle);
On crée une boîte intitulée contact qu'on place dans la zone Annex, avec comme contenu un lien vers l'e-mail du webmaster.
$contact = new ToolBox('Contact');
$contact->setBody( 'Contactez moi !<br><a href="mailto:webmaster[AT]epfl.ch">webmaster</a><br> ');
$page->addToZone("Annex",$contact);
On crée un pied de page qu'on ajoute en base de la zone Main:
$page->addToZone("Main",new FootNote("(c)2001 EPFL, <a href=\"mailto:tuan.lam[AT]epfl.ch\" class=\"path\">t
uan.lam[AT]epfl.ch</a> mise à jour: 5/12/2001<br><b>Powered by PHP SpeedBerg</b>"));
Une fois que tout est prêt, on affiche la page.
$page->display();
?>
Votre page est finie; voilà le résultat en figure 1.
maPageStandard.php
<?
include("config/config.inc.php");
require_once("include/standardPage.tpl.php");
require_once("include/generalToolBox.tlb.php");
$page = new standardPage('index');
$monArticle = new Article("actualités");
$monArticle->setBody("Bonjour !!!");
$page->addToZone("Main",$monArticle);
$contact = new ToolBox('Contact');
$contact->setBody( 'Contactez moi !<br>
<a href="mailto:webmaster[AT]epfl.ch">
webmaster</a><br> ');
$page->addToZone("Annex",$contact);
$sommaire = new SummaryBox();
$page->addTozone("Menu",$sommaire);
$recherche = new SearchBox();
$page->addTozone("Menu",$recherche);
|
|
© Flash informatique no 3/2002, 1015 Lausanne, tél. 021 69 322 11, fi@epfl.ch http://ditwww.epfl.ch/SIC/SA/publications/FI02/fi-3-2/3-2-page1.html mise à jour: hrb/21.03.02 |