PluxThèmes

Zone de ressources - thèmes et tutoriaux - PluXml

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

Rédigé par GC-nomade Aucun commentaire
Classé dans : Les thèmes, fichier, tutos et astuces Mots clés : création de thème, tutoriel, fichiers du thème

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.
0 notes / moyenne 0

Hébergeur bénévole de ressources pour le CMS PluXml, un CMS en flat file propulsé à l'XML.

Mon site PluXml perso : re7net.com.

Écrire un commentaire

Quelle est le dernier caractère du mot sw6k1mev ?

Fil RSS des commentaires de cet article