web-dev-qa-db-fra.com

Renommer des positions dans le fichier manifeste XML de modèle

Je suis en train de convertir le thème HTML en Joomla. Quand j'ai défini la position de la manière suivante, cela ne m'a rien donné en sortie.

    <positions>
        <position>top_header</position>
        <position>left</position>
        <position>right_menu</position>
        <position>right_content</position>
        <position>footer</position>
    </positions>

Mais quand j'ai changé cela en code suivant, tout fonctionne bien.

    <positions>
        <position>position-0</position>
        <position>position-1</position>
        <position>position-2</position>
        <position>position-3</position>
        <position>position-4</position>
        <position>position-5</position>
        <position>position-7</position>
        <position>position-8</position>
        <position>position-9</position>
        <position>messageIE</position>  
        <position>debug</position>
    </positions>

Comme je suis nouveau sur joomla, je ne sais pas pourquoi.

Alors n'importe qui peut me dire pourquoi la position fonctionne de cette manière? Ne pouvons-nous pas définir notre propre position dans Joomla? Parce que j'ai vu des thèmes qui ont leur propre position définie et qui fonctionnaient parfaitement. Alors pourquoi ma position n'a pas fonctionné?

3
Twix

Avez-vous basé votre nouveau modèle sur un modèle existant?

Plusieurs conditions doivent être remplies pour afficher des modules dans vos nouvelles positions.

  1. /templates/YOURTEMPLATE/TemplateDetails.xml
    Vous devez définir les positions de vos modules dans ce fichier. Votre code dans la question est correct.

  2. /templates/YOURTEMPLATE/index.php
    Les positions doivent être définies dans votre index.php fichier. Placez ce code où vous voulez que vos positions de module apparaissent:

    <jdoc:include type="modules" name="top_header" style="xhtml" />
    

    (Remplacez "top_header" si nécessaire)

jdoc:include

Ce code sera remplacé par le contenu de votre module if un module est publié à cette position.

  1. Publiez vos modules
    Publiez maintenant un module (ou plusieurs) à la position top_header et assurez-vous de définir "Affectation de menu" -> "Affectation de module" aux pages sur lesquelles vous souhaitez afficher les modules. Assurez-vous également que "Statut" est défini sur "Publié".

Module Assignment

La plupart de ces étapes sont basiques, mais je les énumère car il est facile d’oublier quelque chose.

2
johanpw

Le fichier XML n'accepte probablement pas les traits de soulignement _ dans le nom de position du module. Essayez d'utiliser "top-header" au lieu de "top_header".

0
Robin Hood