03/09/2015, 10:56:10
bonjour Jean le Chauve,
merci pour ta réponse, j'ai testé mais.... malheureusement sans succès...
je récupère bien ma variable dans le header (<head></head>) de mon gabarit principal, le titre de ma page change comme souhaité, mais je ne peux pas récupérer cette variable dans le body (et encore moins dans le breadcrumbs.... ce que je cherche a faire en fait).
je viens d'essayer avec le module de News, en créant une nouvelle page, j'ai mis le gabarit NCleanBlue.... idem....
par contre j'ai remarqué que lorsque je mets la condition if !isset($get_title).... {title assign='get_title'}.... au début de mon gabarit, juste apres {process_pagedata}, et que j'appelle ma variable dans le header, j'ai le titre de ma news, mais dans le body j'ai le titre de la page News (pas le titre du détail donc)... et lorsque je ne mets pas cette condition, rien ne s'affiche dans le body (le header est ok)....
j'ai l'impression que c'est une histoire "d'ordre" dans lequel smarty génère la page en fonction des différentes données:
1 - il charge le gabarit par défaut, donc ne trouve pas get_title et lui assigne title...
2 - il traite le <body>, donc avec get_title = title,
3- il traite le breadcrumbs, toujours avec get_title = title,
4 - il traite le {content}, donc avec get_title = title, mais là, ma page modifie le get_title en lui assignant le {$gallerytitle},
5 - il traite le header (<head></head>) mais là, get_title est renseigné par $gallerytitle donc il ne lui assigne pas {title}.... et j'ai bien mon {$gallerytitle} qui s'affiche partout ou j'ai ma balise {$get_title} (donc dans le titre de ma page) ....
c'est peut-etre le fonctionnement par défaut de smarty, mais du coup, comment peut-on récupérer une variable assignée dans le template d'une page ? c'était bien vu le scope="global" mais ca ne fonctionne pas si ma logique concernant l'ordre de traitement est la bonne....
j'avoue qu'à force de chercher, je m'embrouille..... j'ai l'impression de passer à coté de quelque chose d'hyper simple et évident mais je seche..... parfois on cherche des choses hyper compliquées alors que la solution est simple..... d'ou l'intéret de bosser à plusieurs (ce qui n'est pas mon cas) ou d'intégrer une communauté :-D
merci en tout cas de vous pencher sur mon probleme ;-)
cordialement,
stephane
merci pour ta réponse, j'ai testé mais.... malheureusement sans succès...
je récupère bien ma variable dans le header (<head></head>) de mon gabarit principal, le titre de ma page change comme souhaité, mais je ne peux pas récupérer cette variable dans le body (et encore moins dans le breadcrumbs.... ce que je cherche a faire en fait).
je viens d'essayer avec le module de News, en créant une nouvelle page, j'ai mis le gabarit NCleanBlue.... idem....
par contre j'ai remarqué que lorsque je mets la condition if !isset($get_title).... {title assign='get_title'}.... au début de mon gabarit, juste apres {process_pagedata}, et que j'appelle ma variable dans le header, j'ai le titre de ma news, mais dans le body j'ai le titre de la page News (pas le titre du détail donc)... et lorsque je ne mets pas cette condition, rien ne s'affiche dans le body (le header est ok)....
j'ai l'impression que c'est une histoire "d'ordre" dans lequel smarty génère la page en fonction des différentes données:
1 - il charge le gabarit par défaut, donc ne trouve pas get_title et lui assigne title...
2 - il traite le <body>, donc avec get_title = title,
3- il traite le breadcrumbs, toujours avec get_title = title,
4 - il traite le {content}, donc avec get_title = title, mais là, ma page modifie le get_title en lui assignant le {$gallerytitle},
5 - il traite le header (<head></head>) mais là, get_title est renseigné par $gallerytitle donc il ne lui assigne pas {title}.... et j'ai bien mon {$gallerytitle} qui s'affiche partout ou j'ai ma balise {$get_title} (donc dans le titre de ma page) ....
c'est peut-etre le fonctionnement par défaut de smarty, mais du coup, comment peut-on récupérer une variable assignée dans le template d'une page ? c'était bien vu le scope="global" mais ca ne fonctionne pas si ma logique concernant l'ordre de traitement est la bonne....
j'avoue qu'à force de chercher, je m'embrouille..... j'ai l'impression de passer à coté de quelque chose d'hyper simple et évident mais je seche..... parfois on cherche des choses hyper compliquées alors que la solution est simple..... d'ou l'intéret de bosser à plusieurs (ce qui n'est pas mon cas) ou d'intégrer une communauté :-D
merci en tout cas de vous pencher sur mon probleme ;-)
cordialement,
stephane