IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Ez Publish 3.9.4] Extension et d'URL


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 106
    Par défaut [Ez Publish 3.9.4] Extension et d'URL
    Bonjour à tous.

    J'ai un problème assez complexe mais je pense commun pour ez publish.

    Je travaille sur une installation d'ez publish qui comporte déjà un site Web mis en place, sous forme d'extension (//localhost/ez/extension/mon_site_1). Je voudrais en construire un second sous forme d'extension aussi (//localhost/ez/extension/mon_site_2).

    J'ai regardé un peu tout ce qu'il fallait (le premier site n'est pas de moi): une arborescence particulière dans mon extension (design, modules avec module.php, settings, translations) ainsi que l'installation des siteaccess qui vont bien (FrontEnd et BackEnd) avec la surcharge des fichiers site.ini et override.ini.
    De plus, j'ai créé l'arborescence dans le BackEnd avec les dossiers et les éléments qui vont bien. Le seul souci ici est que la racine du deuxième site est située dans un sous répertoire du premier

    Après analyse du mode debug proposé par ez publish, je me suis aperçu qu'il fallait surcharger les pages user_login.tpl, page_head.tpl, link.tpl et loginpagelayout.tpl pour pouvoir afficher correctement la page d'accueil (et effectivement, elle marche correctement).

    Le problème qui se pose maintenant est que toutes mes autres pages sont situées dans le dossier extension. Comment puis-je faire pour de la page principale (//localhost/ez/design/monsite/override/templates/accueil.tpl) je puisse accéder à mes autres pages (//localhost/ez/extension/mon_site_2/design/templates/*.tpl)?

    Voici mon fichier override.ini:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    [welcome_page]
    Source=user/login.tpl
    MatchFile=user/user_login.tpl
    Subdir=templates
    Je patauge vraiment. J'ai lu à peu près une dizaine de fois les tutos de http://ez.no/, de LuxPopuli (tutos en français) et de DVP à ce sujet ainsi que quelques livres qui parlent de la chose mais ça ne m'a pas avancé beaucoup.

    D'après ce que j'ai pu voir, il y a une histoire de parcours de noeuds mais je ne vois pas vraiment comment ça marche...

    Merci de votre aide.

    ++
    JCD

  2. #2
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Par défaut
    euh tu peux pas simplement les copier ?
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 106
    Par défaut
    Bonjour.

    Merci pour ta réponse.

    Copier quoi exactement?

    Si tu parles de fichiers settings comme site.ini ou override.ini, j'ai déjà essayé de reprendre les memes, sans succès.

    Si tu parles des fichiers templates, j'ai essayé de voir la construction des liens (il y'en a d'ailleurs de 2 types {"design:nom_du_template"|ezurl} et {"/monsite/nom_du_template"|ezurl()}) mais je n'y arrive pas à accéder aux autres pages de cette manière. Un lien absolu du style "/ez/extension/.../nom_du_template.tpl" affiche le code de la page sans l'interpréter

    J'ai vu qu'il y avait un parcours de noeuds de cette manière:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    {def $espaces_actus=fetch('content', 'list',
                hash( 'parent_node_id', $node.node_id,
                      'sort_by', array( array( 'priority' ) ),
                      'class_filter_type', 'include',
                      'class_filter_array', array( 'espaceactualites' ),
                      'attribute_filter', array(
                            array( 'espaceactualites/position', '=', $leftid ) ) ) ) }
     
            {foreach $espaces_actus as $espaceactu}
                {node_view_gui content_node=$espaceactu view='portlet' element_count=2}
            {/foreach}
     
            {undef $espaces_actus}
    Mais de là à comprendre comment ça marche, j'en suis loin...

    ++
    JCD

  4. #4
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Par défaut
    Je pense que tu n'as pas bien compris le principe. Tu ne dois pas pointer sur tes templates en dur... c'est pas des pages HTML.

    si tu copies toutes tes templates qui sont dans mon_site_1 dans mon_site_2 et que tu modifies que celles que tu veux sa doit fonctionner.

    Les chemins se font dans le fichier override.ini.append.php et c'est relatif au dossier de design donc pas de soucis à ce niveau là.

    Par contre tu dois aller spécifier dans le fichier site.ini.append.php de ton siteaccess quel design il doit utiliser. mon_site_1 ou mon_site_2.

    Bon courage !
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 23
    Par défaut
    j'ai pas tout compris l'histoire, mais je crois que tu pourrai créer plusieurs siteaccess. non?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 106
    Par défaut
    Bonjour.

    Ez Publish, tout l'art de rendre un truc simple en un truc très compliqué... C'est quand meme le CMS le plus difficile qui m'a été donné de voir jusqu'ici

    Citation Envoyé par Yoteco
    Je pense que tu n'as pas bien compris le principe. Tu ne dois pas pointer sur tes templates en dur... c'est pas des pages HTML.

    si tu copies toutes tes templates qui sont dans mon_site_1 dans mon_site_2 et que tu modifies que celles que tu veux sa doit fonctionner.

    Les chemins se font dans le fichier override.ini.append.php et c'est relatif au dossier de design donc pas de soucis à ce niveau là.

    Par contre tu dois aller spécifier dans le fichier site.ini.append.php de ton siteaccess quel design il doit utiliser. mon_site_1 ou mon_site_2.
    J'ai testé ce mode mais il y a beaucoup trop de trucs à modifier et la plupart je ne sais pas à quoi ça correspond exactement. Dans le site existant (mon_site_1), ce qui est affiché est de la forme {$node.view.name} ou {$node.view.content} (ou un truc approchant suivant la page). Tout est comme ça: les infos affichées dans le corps, les liens, les images...
    J'ai modifié la page principale avec mon propre design dans site.ini.append.php mais il y a beaucoup d'éléments dont j'ignore totalement l'origine (et d'ailleurs que EasyEclipse est incapable de tracer lui meme sur un CTRL+H). A mon avis c'est défini dans le BackEnd mais comment sont gérés les liens en interne je n'en ai aucune idée...

    Citation Envoyé par robin_liu79
    j'ai pas tout compris l'histoire, mais je crois que tu pourrai créer plusieurs siteaccess. non?
    C'est ce que j'ai fait. J'ai défini plusieurs siteaccess avec la partie admin et la partie publique. Mais pour faire simple, ce que je veux c'est savoir comment je remplis un <a href={???|ezurl}></a> pour qu'il m'emmène vers la page TPL que je veux (sachant que la page d'accueil est dans /design et que les autres pages sont dans /extension).

    ++
    JCD

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2007
    Messages : 23
    Par défaut
    Citation Envoyé par JCD_31 Voir le message
    C'est ce que j'ai fait. J'ai défini plusieurs siteaccess avec la partie admin et la partie publique. Mais pour faire simple, ce que je veux c'est savoir comment je remplis un <a href={???|ezurl}></a> pour qu'il m'emmène vers la page TPL que je veux (sachant que la page d'accueil est dans /design et que les autres pages sont dans /extension).
    JCD
    <a href={???|ezurl}></a> ?

    on utilise {include uri='design: xxx.tpl'}
    avant ez4, l'ordre de xxx.tpl est :
    extension/mon_ext/design/siteaccess/override/templates/xxx.tpl
    extension/mon_ext/design/siteaccess/templates/xxx.tpl
    /design/siteaccess/override/templates/xxx.tpl
    /design/siteaccess/templates/xxx.tpl
    /design/standard/override/templates/xxx.tpl
    /design/standard/templates/xxx.tpl


    <a href={???|ezurl}></a> est plutot utilisé comme <a href={$node.url_alias|ezurl}></a>

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 106
    Par défaut
    Bonjour.

    Plus j'avance, moins je comprends...

    Citation Envoyé par robin_liu79
    on utilise {include uri='design: xxx.tpl'}
    D'après ce que j'ai compris, ceci permet d'inclure une page tpl dans la page courante. Mais comment on fait pour aller sur cette page lorsque je clique sur un lien?

    Citation Envoyé par robin_liu79
    <a href={???|ezurl}></a> est plutot utilisé comme <a href={$node.url_alias|ezurl}></a>
    Ça marche comment plus précisément? Je n'ai trouvé aucun tuto sur le sujet

  9. #9
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Par défaut
    Salut,

    Des templates ne sont pas des pages ! Les templates ce sont des mise en pages qui sont faites pour accueillir du contenu dynamique qui va venir de la base de données.

    Donc tu ne devras jamais faire un lien sur un fichier de template ! Tu vas par exemple faire un lien sur www.monsite.com/accueil ensuite eZ Publish va charger le contenu de la page accueil qui est par exemple une classe page. La classe page saura grâce au fichier override.ini.append.php de ton siteaccess qu'il lui faudra la template page.tpl. Et dans cette template tu auras des tags entre {} qui indiqueront ou placer les différents attributs de la classe page.

    Si tu ne comprend pas ce principe je te conseil de lire des tutoriels sur les moteurs de templates (c'est toujours le même principe). Ensuite lis les tutoriels eZ Publish que j'ai traduis :
    http://alain-sahli.developpez.com/tu...lish/concepts/
    http://alain-sahli.developpez.com/tu...nt-du-contenu/
    http://alain-sahli.developpez.com/tu...nfigurer-site/

    Voilà j'espère qu'avec ça ce sera plus clair
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 106
    Par défaut
    Bonjour.

    J'avais déjà lu plusieurs fois ces tutos, sans résultat. Ça reste quand meme pas mal théorique (sauf un peu le dernier que je me suis servi pour faire ma page d'accueil mais j'avais pas réussi à faire les liens). D'ailleurs, pour info, je me suis servi de ces articles pour faire mon rapport (j'espère que je n'aurais pas à te payer des droits ).

    Mais pour l'instant, ce projet a été mis de coté...

    Merci pour vos réponses et votre patience

    ++
    JCD

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment récupérer le nom du fichier sans l'extension ?
    Par altahir007 dans le forum Langage
    Réponses: 16
    Dernier message: 13/11/2009, 13h20
  2. [XUL] Extension firefox -> Capturer Url
    Par Innop dans le forum Autres langages pour le Web
    Réponses: 0
    Dernier message: 01/02/2009, 02h02
  3. Lancement appli à partir d'extension dans une URL dans IE
    Par Sniper94-2 dans le forum Windows
    Réponses: 3
    Dernier message: 03/11/2005, 17h55
  4. Redirection en fonction de l'extension de l'URL
    Par Mr Hyde dans le forum Web
    Réponses: 6
    Dernier message: 21/09/2005, 17h39
  5. Redirection en fonction de l'extension de l'URL
    Par Mr Hyde dans le forum Autres langages pour le Web
    Réponses: 3
    Dernier message: 20/09/2005, 14h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo