[Résolu] Lien dans le menu

cpalocpalo Member
février 2014 modifié dans Entraide
Bonjour

Dans mon menu, je souhaite rajouter un lien "boutique" pointant vers un ficher "home-boutique.php"
voir ici

le fichier home-boutique.php se situe au même niveau que tous les fichiers du thème
[== PHP ==]
<?php include(dirname(__FILE__).'/header.php'); ?>

<div>
Contenu de la page
</div>

<?php include(dirname(__FILE__).'/footer.php'); ?>

J'ai modifié le code du menu ( dans le header) d ela manière suivante:
[== PHP ==]
<ul id="static-nav">
                <?php $plxShow->staticList($plxShow->getLang('HOME'),'<li id="#static_id"><a href="#static_url" class="#static_status" title="#static_name">#static_name</a></li>'); ?>
                <?php $plxShow->pageBlog('<li id="#page_id"><a class="#page_status" href="#page_url" title="#page_name">#page_name</a></li>'); ?>
                <li><a href="<?php $plxShow->template(); ?>/home-boutique.php" class="boutique">Boutique</a></li>
            </ul>

Mais je me retrouve avec une page blanche

je veux donc bien une aide pour trouver mon erreur

Cordialement

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour Je te propose une autre méthode de faire

    1) dans le dossier de ton thème, duplique le fichier static.php et nomme le en static-boutique.php
    2) dans la gestion des pages statiques crée une nouvelle page statique avec comme titre: Boutique (assure toi aussi d'avoir Oui dans la colonne Active)
    3) dans les options de cette page (lien Editer de la colonne Action), dans le déroulant Template, sélectionne la valeur static-boutique.php.

    Enregistre les modifs.

    Si tu vas maintenant sur la page d'accueil de ton site, tu verras le menu Boutique avec comme contenu celui du fichier static-boutique.php, que tu peux aménager à ta convenance et y mettre ce que tu veux afficher sur cette page Boutique.

    nb: le code suivant que tu as ajouté dans le fichier header n'est pas nécessaire. PluXml gère tout
      <li><a href="<?php $plxShow->template(); ?>/home-boutique.php" class="boutique">Boutique</a></li>
    

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Merci pour cette réponse rapide.
    De plus cette méthode que tu proposes je l'avais utilisée dans un autre site!!!

    Par contre simple curiosité, quelle est l'écriture correcte pour afficher un lien vers un fichier interne au site, puisque ce que j'avais écrit ne fonctionnait pas.

    Cordialement
  • StéphaneStéphane Member, Former PluXml Project Manager
    La syntaxe html est correcte, mais le probleme et que l'appel n'est pas possible de cette façon car le fichier ne doit pas etre appelé directement mais doit passé par PluXml via index.php

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • Petit problème voir ici

    Lorsqu'on clique sur le lien vers une page statique ( cela ne concerne pas le lien blog ou accueil), il y a une margin ou padding supplémentaire.
    Lorsqu'on regarde le code on voit qu'il y a une class="static active " ou class="noactive"
    Mais je n'ai pas trace de ces classes dans le css. Sont-elles créées automatiquement?
  • Ce problème de marge est réglé...
    Un mélange de classes entre celle du theme par défaut et le mien.
  • cpalocpalo Member
    février 2014 modifié
    La solution que j'ai utilisée: coder directement le menu sans prendre celui par défaut

    insérer un lien vers la catégorie "Revue de presse" . Pour cela je me suis inspiré de la solution proposée sur Pluxopolisici

    Mais avec cette solution le menu "Nous contacter" ne se trouvait plus en dernier, donc nécessité aussi de l'insérer soi-même. De mème pour avoir seulement les liens vers les deux pages statiques ( nos produits, notre société) et celui vers le sous-site boutique.

    Voici mon code corrigé par Stéphane:
    [== PHP ==]
    <ul id="static-nav">
         
                    <li><a href="<?php $plxShow->urlRewrite() ?>" title="accueil">Accueil</a></li>
                    <li><a href="<?php $plxShow->urlRewrite('?static5/omega3-epa') ?>" title="Nos produitsame">Nos produits</a></li>
                    <li><a href="<?php $plxShow->urlRewrite('boutique') ?>" title="Notre boutique">Notre boutique</a></li>
                    <li><a href="<?php $plxShow->urlRewrite('?static2/societe') ?>" title="Notre societe">Notre société</a></li>
                    <?php
                    $idCat = '004';
                        if(isset($plxMotor->aCats[$idCat])) {
                            if($plxMotor->aCats[$idCat]['menu']=='oui' AND $plxMotor->aCats[$idCat]['active']) {
                            $id = 'cat-'.intval($idCat);
                            $url = $plxMotor->urlRewrite('?categorie'.intval($idCat).'/'.$plxMotor->aCats[$idCat]['url']);
                            $name = plxUtils::strCheck($plxMotor->aCats[$idCat]['name']);
                            $active = ($plxShow->catId()==intval($idCat)?'active':'noactive');
                        echo '<li><a title="'.$name.'" href="'.$url.'">'.$name.'</a></li>';
                        }
                    }
                    ?>
                    <li ><a href="<?php $plxShow->urlRewrite('?contact') ?>" title="Nous contacter">Nous contacter</a></li>
                
                </ul>
    

    et son commentaire
    Stéphane a écrit:
    L'utilisation de <?php $plxShow->urlRewrite() ?> permet de tenir compte de la réécriture d'url si elle est utilisée mais aussi de ne pas avoir le nom du serveur en dur, ce qui permet de développer en local et lorsque le site est copier sur son hébergeur, les liens continuent de fonctionner sans avoir besoin de les modifier.

    J'ai supprimé les id et les class dans les liens car dans ce cas ils ne servent pas

    Le résultat ici

    Encore merci
Connectez-vous ou Inscrivez-vous pour répondre.