Ma question concerne la 'non interprétation' de la balise {cms_self_link} dans un cas d'utilisation particulier.
Etat des lieux pour comprendre ce que je cherche à faire :
J'ai une page principale 'Lexique' qui affiche un ensemble de mots et leur définition.
Ces termes sont définis dans des pages séparées 'fille' de la page principale 'lexique'.
Il est donc possible de consulter individuellement chaque terme et sa définition ou des voir l'ensemble de ceux-ci via la page 'lexique'.
Le contenu de la page 'lexique' est donc automatiquement généré en fonction des pages 'filles' qui sont placées en sous arborescence.
Pour ce faire, j'utilise un UDT maison relativement classique :
Code: Select all
global $gCms;
$manager =& $gCms->GetHierarchyManager();
$thisPage = $gCms->variables['page_name'];
$currentNode = &$manager->sureGetNodeByAlias($thisPage);
$nodes = $currentNode->getChildren();
if ($currentNode->hasChildren()) {
foreach ($nodes as $node) {
$content= $node->getContent();
echo "<h2>.$content->MenuText()."</h2>";
echo "<p>".$content->GetPropertyValue('content_en')."</p>";
}
}
Le problème :
J'utilise dans les définitions des liens du type {cms_self_link} renvoyant vers d'autres termes du lexique ou d'autres pages du site.
Lorsque je consulte un terme particulier via son url, la balise {cms_self_link} est bien interprêtée côté serveur et les liens générés sont valides.
MAIS : lorsque je consulte via la page principale 'lexique', les définitions affichent des liens contenant en toute lettre '{cms_self_link}'. La balise n'a pas été interprétée côté serveur et est considérées comme du contenu classique.
Démonstration live du problème :
La page qui affiche tous les lexiques :
http://www.uncorps7merveilles.fr/lexique-elementaire/
Le lien 'énigme' situé dans le dernier paragraphe de la première définiton du terme 'CORPS (UN)' comporte {cms_selflink href='enigme'}
Par contre si j'accède directement à la page définissant 'CORPS (UN)', le même lien est correct, la balise {cms_selflink href='enigme'} étant bien traduite.
http://www.uncorps7merveilles.fr/lexiqu ... /corps-un/
Ma question : savez-vous comment forcer l'interprétation côté serveur d'une balise du type {cms_self_link} ?
Merci pour votre aide.
Cordialement,
Benoit
Informations d'Installation du CMS :
Version du CMS : 1.9.4.1