Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

Afficher toute les pages active{content} les une en dessous des autres
#4

Si vraiment tu n'avais d'autres choix que de procéder comme cela, tu peux toujours utiliser l'API et le HierarchyManager qui te donneras accès aux pages. J'avais fait cela pour un pavé présentant les pages d'un sous-menu.

Par contre, passe par un bloc de contenu global, qui est statique, afin de ne pas produire un monstre.

Comment faire ? Crée une UDT que tu appelles via le gestionnaire d'évènements. (Evènement "ContentEditPost")

Je te laisse analyser ce code et l'adapter à tes besoins.

Code :
[== Indéfini ==]
$gCms = cmsms();

$gcbops = $gCms->GetGlobalContentOperations();

$the_blob = $gcbops->LoadHtmlBlobById(5);


$contentops = $gCms->GetContentOperations();

$hm = $gCms->GetHierarchyManager();
$parent = $hm->sureGetNodeByAlias(57);
$config=cmsms()->GetConfig();
$path_images=$config['root_url'].'/uploads/images/nos-activites/';
$result='';
if( $parent )
{
    // get the children.
    $children = $parent->GetChildren(1);
    if( is_array($children) && count($children) )
    {
        foreach( $children as $onechild )
        {
            $obj = $onechild->GetContent();
            if( is_object($obj) && $obj->Active())
            {
                // loads page content
                $cntnt=strip_tags($obj->GetPropertyValue('content_en'));
                $result.='<div class="home-block">
                                <h2>'.$obj->MenuText().'</h2>
                                <p>'.substr($cntnt, 0, 150).'...<br/>
                                    <a href="'.$obj->GetURL().'">Lire plus</a>
                                </p>
                                <img src="'.$path_images.$obj->Alias().'.png" width="88" height="88"/>
                            </div>';
            }
        }
    }
}
$the_blob->content = $result;

$the_blob->save();

www.web-ep.be - Développeur Web Freelance - Développeur/Intégrateur CMS Made Simple (création de sites, développement de modules/plugins/templates sur mesure), spécialisé dans les sites pour l'immobilier.
Répondre


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 2 visiteur(s)