Sélectionnez votre langue

Les news !
Informations, tutoriels
Dédié principalement Joomla! mais plus si affinité
Joomla tuto

Attention: pour Joomla 3 pas pour Joomla 4

Le rendu standard de tout module ou composant Joomla! peut être substitué par l'ajout de code dans le répertoire html de votre template. C'est ce qu'on appelle une surcharge.

Il y a beaucoup d'article sur les surcharges de Joomla. Je citerai celui de CINNK "Petit guide pour débuter avec les surcharges Joomla!" (voir liens).

J'essaye d'utiliser le moins possible de surcharge dans mes sites du fait des mises à jour où elles ne sont pas prise en compte. Par contre j'utilise très souvent la surcharge des "info block" pour les articles Joomla!.

 Pour le template hydrogen, les "info blocks" par défaut ressemble à cela

info block hydrogen

Ce que je veux obtenir c'est cela

info block hydrogen surcharge

 

Pour cela il faut faire une surcharge des fichiers "info block" que l'on trouve dans layouts/joomla/content/info_block

info block files

C'est à dire

1) Créer une copie des ces fichiers sir votre disque dur

2) Faire les modifications souhaitées

3) Placer ces fichiers modifiés dans /templates/g5_hydrogen/html/layouts/joomla/content/info_block

Le type de modification - Exemple sur author.php :

Le fichier de base :

<dd class="createdby" itemprop="author" itemscope itemtype="https://schema.org/Person">
<?php $author = ($displayData['item']->created_by_alias ?: $displayData['item']->author); ?>
<?php $author = '<span itemprop="name">' . $author . '</span>'; ?>
<?php if (!empty($displayData['item']->contact_link ) && $displayData['params']->get('link_author') == true) : ?>
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', JHtml::_('link', $displayData['item']->contact_link, $author, array('itemprop' => 'url'))); ?>
<?php else : ?>
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', $author); ?>
<?php endif; ?>
</dd>

Les modifications :

<dd class="createdby hasTooltip" itemprop="author" itemscope itemtype="http://schema.org/Person" title="<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', ''); ?>">
<i class="fa fa-user"></i>
<?php if (!empty($displayData['item']->contact_link ) && $displayData['params']->get('link_author') == true) : ?>
<?php echo JHtml::_('link', $displayData['item']->contact_link, $author, array('itemprop' => 'url')); ?>
<?php else :?>
<?php echo $author; ?>
<?php endif; ?>
</dd>
Devenez un client privilégié !

Contact

En Toutes Lettres est une société basée en Essonne (91). Nous sommes toujours présents pour une information complémentaire :

logo gris
  06 29 16 98 38
En toutes lettres
4 rue Antoine Bréguet
91750 CHAMPCUEIL
 

Derniers commentaires