Salut,
lefabdu51 a proposé un script en override ici pour le module mod_related_items :
permettant d'afficher l'image d'intro de l'article et le texte d'intro dans ce module.
Le script est fonctionnel mais si il n'y a pas d'images dans l'article, la série webkit (chrome/safari) affiche l'emplacement vide.
Le script en question :
Un petit coup de main ?
lefabdu51 a proposé un script en override ici pour le module mod_related_items :
permettant d'afficher l'image d'intro de l'article et le texte d'intro dans ce module.
Le script est fonctionnel mais si il n'y a pas d'images dans l'article, la série webkit (chrome/safari) affiche l'emplacement vide.
Le script en question :
Code PHP:
<?php
/**
* @package Joomla.Site
* @subpackage mod_articles_latest
*
* @copyright Copyright (C) 2005 - 2016 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
?>
<ul class="relateditems<?php echo $moduleclass_sfx; ?>">
<?php foreach ($list as $item) :
// on recuperes l'id de l'élément devant être affiché
$value = $item->id;
// on crées la requête
$db = JFactory::getDbo();
$query = $db->getQuery(true);
// la requete sous la forme Joomla
// remplacer ys5ta par le prefixe des tables dans l'installation
$query->select('introtext,images');
$query->from($db->quoteName('#__content'));
$query->where($db->quoteName('id')." = ".$db->quote($value));
// on remet la requete à 0 et on charges le resultat de la requete dans un tableau associatif
//si setQuery est inexistant, alors seul le dernier résultat est pris en compte et est affiché pour chaque boucle
// La boucle est passée sans réexcuter la requete.
$db->setQuery($query);
$data=$db->loadAssoc();
// Les propriétés des images sont au format json. Donc il faut décoder celles ci pour s'en servir dans php.
$var = json_decode($data['images']);
?>
<li itemscope itemtype="https://schema.org/Article">
<a href="<?php echo $item->route; ?>" itemprop="url">
<span itemprop="name">
<?php echo $item->title; ?>
</span></a>
<!-- on affiches 'limage et son texte alternatif -->
<img src="<?php echo $var->{'image_intro'};?>" alt="<?php echo $var->{'image_intro_alt'}; ?>" />
<!-- on affiches le texte d'introduction de l'article associé -->
<?php echo $data['introtext']; ?>
<span itemprop="date"><?php if ($showDate) echo JHtml::_('date', $item->created, JText::_('DATE_FORMAT_LC3')) . " - "; ?> </span>
</li>
<?php endforeach; ?>
</ul>
Commentaire