Use article function pxArtSomeThingToShow in a category template (Plume 1.2.2)
Sometimes it is usefull to access an article from a category page.
You can add this function in lib.frontend.php :
- pxGetSingleArt : return a reference on the first article in the category
Utiliser les fonctions pxArtQuelqueChose sur une page Category (Plume 1.2.2)
Il est parfois utile de pouvoir obtenir le contenu d'un article dans une page de catégorie.
Voici une fonction permettant de le faire, à ajouter dans lib.frontend.php :
- pxGetSingleArt : retourne une référence sur le premier article d'une catégorie
<?php
/**
* Fonction permettant de récupérer un article sur une page de catégorie
*
* @param (boolean) défini la façon dont les données sont renvoyées (return OU echo)
* @return (string) renvoi une référence sur l'article
*/
function pxGetSingleArt($return=false)
{
// create a new Article Object
$myRes_id = $GLOBALS['_PX_render']['res']->f('resource_id');
$article = new Article();
$result = $GLOBALS['_PX_render']['art'] = &$article ;
if(!$article->load($myRes_id))
return;
// do as if Article was load from Disptacher
$GLOBALS['_PX_render']['ct_enabled'] = false;
if ((config::f('comment_support') == 1) or (config::f('comment_support') == 2 &&
$GLOBALS['_PX_render']['art']->f('comment_support') == 1)) {
$GLOBALS['_PX_render']['ct_enabled'] = true;
}
if ( $return ) return $result ;
}
?>
Dans les gabarits category_something il est alors possible d'utiliser les fonctions d'articles pxArtQuelqueChose, exemple :
Now it is possible to use pxArtSomeThingToShow function, for example :
<?php
pxGetSingleArt() ;
pxArtTitle('<h1>%s</h1>') ;
pxArtListPages("<h3>table of contents</h3>%s") ;
pxArtPageContent();
?>
Remarque :
Pour pouvoir utiliser les commentaires dans la page il faut ajouter dans le gabarit le code ci-dessous :
$ct = new Comment ;
$GLOBALS['_PX_render']['ct'] = & $ct ;
$ct->load($GLOBALS['_PX_render']['art']->comments->f('comment_id')) ;