créer un thème - étape fichiers 05

Dans cet article nous allons finalisé nos gabarits pour les modes : catégorie, mots clés et archive. Leurs fonctionnement est très similaire au mode home/blog et ce qui diffère sera ce que l'on appelle le "fil d’Ariane" qui aide à se situer dans l'arborescence d'un site.
Nous commençons donc par éditer à nouveau le fichier home.php
pour en extraire la partie affichant les article et la pagination dans un nouveau fichier de gabarit que nous nommerons articles.php
.
Créez le fichier articles.php
, notez le s dans le nom.
Pour simplifier la maintenance et alléger nos fichiers, la partie bouclant et paginant les articles va être déplacer dans un nouveau fichier que nous appelons articles.php
a ne pas confondre avec articles.php
.
Ce nouveau fichier reçoit le code suivant :
<?php while($plxShow->plxMotor->plxRecord_arts->loop()): ?>
<article id="art-<?php $plxShow->artId() ?>">
<header>
<h2><?php $plxShow->artTitle('link') ?></h2>
<?php $plxShow->artThumbnail() ?>
<p>Auteur : <?php $plxShow->artAuthor() ?> - <time datetime="<?php $plxShow->artDate(); ?>"><?php $plxShow->artDate() ?></time> | <?php $plxShow->artNbCom('#nb commentaire','#nb commentaire','#nb commentaires') ?></p>
<p>Catégories: <?php $plxShow->artCat() ?> - Mots clés: <?php $plxShow->artTags() ?> </p>
</header>
<div>
<?php $plxShow->artChapo() ?>
</div>
</article>
<?php endwhile; ?>
<nav class="pagination">
<?php $plxShow->pagination(); ?>
</nav>
Cette portion de code est maintenant à retirer et à remplacer par l'inclusion de <?php include __DIR__.'/articles.php'; ?>
dans le fichier home.php
qui devient un fichier assemblant nos différents gabarits.
Mise à jours des fichier traitant les articles en groupe
La base du fichier home.php
devient:
<?php if(!defined('PLX_ROOT')) exit; ?>
<?php include __DIR__.'/header.php'; ?>
<?php include __DIR__.'/articles.php'; ?>
<?php include __DIR__.'/footer.php'; ?>
Cette base peut maintenant être reporter dans les fichiers au fonctionnement similaire: archives.php
, categorie.php
et tags.php
.
Tests des modes affichant des liste d'articles.
Après avoir créer le fichier articles.php
et mis à jours les fichiers hoime.php
, archives.php
, categorie.php
et tags.php
. Nous constatons que les pages catégories, archives et mots clés fonctionne et affiche les articles triés par ces modes.
Ce n'est pas clair
En effet, difficile de différencier sur quelle type de page nous nous trouvons sans jeter un œil dans la barre d'adresse. Cela peut-être améliorer en affichant un "fil d'Ariane"avant les contenus . Ajoutons ce fil aux fichier en reprenant les infos de cet article à propos du fil d'ariane
MAJ des fil d'ariane
Nous reprenons les codes fournis dans ces autres articles et les redistribuons respectivement dans les fichiers correspondant.
Ce qui donne pour:
-
archives.php
<?php if(!defined('PLX_ROOT')) exit; ?> <?php include __DIR__.'/header.php'; ?> <ul class="repertory menu breadcrumb"> <li><a href="https://pluxthemes.com/<?php $plxShow->racine() ?>"><?php $plxShow->lang('HOME'); ?></a></li> <li><?php $plxShow->lang('ARCHIVES'); ?></li> <li><?php echo plxDate::formatDate($plxShow->plxMotor->cible, $plxShow->lang('ARCHIVES').' #month #num_year(4)') ?></li> </ul> <?php include __DIR__.'/articles.php'; ?> <?php include __DIR__.'/footer.php'; ?>
-
categorie.php
<?php if(!defined('PLX_ROOT')) exit; ?> <?php include __DIR__.'/header.php'; ?> <ul class="repertory menu breadcrumb"> <li><a href="https://pluxthemes.com/<?php $plxShow->racine() ?>"><?php $plxShow->lang('HOME'); ?></a></li> <li><?php $plxShow->catName(); ?></li> </ul> <?php include __DIR__.'/articles.php'; ?> <?php include __DIR__.'/footer.php'; ?>
-
tags.php
<?php if(!defined('PLX_ROOT')) exit; ?> <?php include __DIR__.'/header.php'; ?> <ul class="repertory menu breadcrumb"> <li><a href="https://pluxthemes.com/<?php $plxShow->racine() ?>"><?php $plxShow->lang('HOME'); ?></a></li> <li><?php $plxShow->tagName(); ?></li> </ul> <?php include __DIR__.'/articles.php'; ?> <?php include __DIR__.'/footer.php'; ?>
Test et aperçu
Avouons que sans styles de mise en page, ce n'est beaucoup plus clair, faisons une petite incartade dans la feuille de style pour afficher ce Fil d'Ariane sur une ligne:
Editez le fichier styles.css
situé dans le repertoire css/
de votre thème et ajoutez ces quelques régles pour qu'il se demarque des liens de navigation principale.
.repertory.menu.breadcrumb {
display: flex;
gap: 1em;
list-style: none;
justify-content: center;
}
.repertory.menu.breadcrumb li + li::before {
content: '/ ';
padding-inline-end: 1em;
}
Catégorie et description.
PluXml permet d'ajouter un champ descriptif aux catégories ainsi qu'une image, modifions le fichier categorie.php
pour bénéficier de ces fonctionnalités.
Deux fonctions décrites dans la doc officielle servent à afficher ces deux champs. Pour en faciliter la mise en page, incluons les dans une balise avec une id
, la dernière mise à jour de ce fichier devient:
<?php if(!defined('PLX_ROOT')) exit; ?>
<?php include __DIR__.'/header.php'; ?>
<ul class="repertory menu breadcrumb">
<li><a href="https://pluxthemes.com/<?php $plxShow->racine() ?>"><?php $plxShow->lang('HOME'); ?></a></li>
<li><?php $plxShow->catName(); ?></li>
</ul>
<div id="catdesc">
<?php $plxShow->catThumbnail(); ?>
<?php $plxShow->catDescription('#cat_description'); ?>
</div>
<?php include __DIR__.'/articles.php'; ?>
<?php include __DIR__.'/footer.php'; ?>
Interlude
La majeure partie des fichiers gabarits sont fonctionnels, il nous reste à voir le gabarit des pages statiques et celui de la page d'erreur , et enfin il y aura le fichier sidebar.php
avant de commencer à s'interesser aux façon d'appliquer nos styles , que ce soit avec une feuille de styles classiques ou à l'aide de framework externes ou maison.
Vue d'ensemble
Articles de la série: "créer un thème" |
articles connexes | Ressources externes |
---|---|---|
étape fichiers 01 | MAJ d'un vieux thème | |
étape fichiers 02 | ||
étape fichiers 03 | thème multilingue | |
étape fichiers 04 | affichage des commentaires. | |
étape fichiers 05 | le fil d'Ariane | |
étape fichiers 06 | ||
archive ZIP du thème construit dans ce tutoriel themedututo.zip. | ||
étape CSS 01 | meta "viewport" | |
étape CSS 02 | la balise "link" | |
étape CSS 03 | Outils de verification du W3C. |