1
Bonjour @Romain

Je commence par une petite explication sur la ligne que tu cites.
Le front office est caché derrière un seul controller (dont l'url est nos/front/index', trouvable ici novius-os/framework/classes/controller/front.ctrl.php
Ce controller est appelé quand une URL finissant par .html est demandée.
Il retrouve la page correspondant à cette URL puis exécute le contenu de la page, c'est à dire le template qui lui est associé, le ou les wysiwyg de la page et les enhancer contenus dans les wysiwygs

Voilà en ultra condensé le mécanisme du front-office.

Maintenant, qu'est ce que tu entends par "creer un lien vers une action depuis le front office" ?
Pour m'aider dans la compréhension, de quelle page de la doc parles-tu quand tu dis qu'elle "explique comment faire cette manoeuvre depuis le back office" ?
Par Gilles FELIX , 11 octobre 2013 ·
Quelle réactivité chez Novius !

Alors je parlais de la page sur les differences avec fuelphp. Un exemple sur le routage en back office est donné mais rien est dis pour le front office. Pour appeler l'action "action" du controller "controller" en back office j'ai une url de type "admin/controller/action". Mais qu'en est-il si je veux appeler cette action depuis le front office ?
Par Romain , 11 octobre 2013 ·
Gilles est reparti sur son vélo, je réponds donc à sa place.
Par Julian Espérat , 11 octobre 2013 ·


Le front-office est géré par l'application "Pages" du CMS. C'est elle qui en fonction de l'URL va chercher la page associée, puis exécute son contenu.

Il n'y a pas d'URL en front-office qui route directement sur une action de contrôleur.
Il est néanmoins possibles de créer des contrôleurs qui affichent du contenu en front-office en créant des enhancers.
Un enhancer s'ajoute dans une page et définit une route à appeler. Ainsi, le contenu retourné par l'enhancer sera inséré à l'endroit où il est présent dans la page.

Un enhancer peut également gérer lui-même des URL, comme par exemple le blog.

Si le bloc est ajouté à une page 'blog.html' alors il sera appelé lors de l'appel à 'blog.html' (logique), mais aussi lors de l'appel à 'blog/url-a-moi.html' et pourra décider de faire un traitement particulier que lorsque l'URL vaut 'url-a-moi'.

Pour l'instant, c'est à lui de faire le routage "à la main" en fonction de l'URL reçue, mais dans Novius OS Chiba 3 il sera possible d'utiliser les routes pour faire cela (ce qui rendra la chose bien plus simple et plus logique).

Comment créer un enhancer ? Suivre la doc :

J'espère que j'ai répondu à ta question, n'hésite pas à revenir :)

OK merci pour vos réponse.
Je pense que là j'ai de quoi bosser pour le weekend.
Par Romain , 11 octobre 2013 ·
À
    ou Annuler
Appeler une action de controller dans le front office
Par Romain , 11 octobre 2013
À

Bonjour à tous,

Novius OS est le premier CMS que j'utilise et je suis en train de découvrir toute la puissance du truc !

Mon probleme aujourd'hui est que je n'arrive pas à creer un lien verrs une action depuis le front office. La doc explique comment faire cette manoeuvre depuis le back office mais mais cette methode ne peut pas etre transposée dans le front. Probablement à cause de cette mystérieuse ligne dans le fichier de point d'entrée que je peine à comprendre : 

$response = Request::forge('nos/front/index', false)->execute()->response();

Pouvez-vous m'éclairer ?

D'avance merci.

1 utilisateur a la même question.