Great RSS

: mod_feed

Live Demo 

 

Joomla! Official News

Joomla! - the dynamic portal engine and content management system

17 décembre 2019

Joomla 3.9.14

Joomla 3.9.14 is now available. This is a security fix release for the 3.x

...

5 novembre 2019

Joomla 3.9.13

Joomla 3.9.13 is now available. This is a security fix release for the 3.x

...

24 septembre 2019

Joomla 3.9.12

Joomla 3.9.12 is now available. This is a security fix release for the 3.x

...

13 août 2019

Joomla 3.9.11

Joomla 3.9.11 is now available. This is a security fix release for the 3.x series

...

 

Markup

<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_feed
 * @Author 		web-eau.net
 * @copyright   Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;
?>

<?php
if (!empty($feed) && is_string($feed))
{
	echo $feed;
}
else
{
	$lang      = JFactory::getLanguage();
	$myrtl     = $params->get('rssrtl', 0);
	$direction = ' ';

	$isRtl = $lang->isRtl();

	if ($isRtl && $myrtl == 0)
	{
		$direction = ' redirect-rtl';
	}

	// Feed description
	elseif ($isRtl && $myrtl == 1)
	{
		$direction = ' redirect-ltr';
	}

	elseif ($isRtl && $myrtl == 2)
	{
		$direction = ' redirect-rtl';
	}

	elseif ($myrtl == 0)
	{
		$direction = ' redirect-ltr';
	}
	elseif ($myrtl == 1)
	{
		$direction = ' redirect-ltr';
	}
	elseif ($myrtl == 2)
	{
		$direction = ' redirect-rtl';
	}

	if ($feed !== false)
	{
		// Image handling
		$iUrl   = isset($feed->image) ? $feed->image : null;
		$iTitle = isset($feed->imagetitle) ? $feed->imagetitle : null;
		?>
		<div style="direction: {{{PHP3}}}; text-align: {{{PHP4}}} !important" class="feed<?php echo $moduleclass_sfx; ?>">
		<?php
          
		// Feed title
		if ($feed->title !== null && $params->get('rsstitle', 1))
		{
			?>
			<h2 class="text-center text-primary display-4 <?php echo $direction; ?>">
			<a href="/<?php echo htmlspecialchars($rssurl, ENT_COMPAT, 'UTF-8'); ?>" target="_blank">
			<?php echo $feed->title; ?></a>
			</h2>
			<?php
		}
      
		// Feed date
		if ($params->get('rssdate', 1)) : ?>
			<h3>
			<?php echo JHtml::_('date', $feed->publishedDate, JText::_('DATE_FORMAT_LC3')); ?>
			</h3>
		<?php endif;
      
		// Feed description
		if ($params->get('rssdesc', 1))
		{
		?>
			<h5 class="text-center text-primary">
            <?php echo $feed->description; ?>
            </h5>
			<?php
		}
      
		// Feed image
		if ($iUrl && $params->get('rssimage', 1)) :
		?>
			<img src="/<?php echo $iUrl; ?>" alt="<?php echo @$iTitle; ?>" />
		<?php endif; ?>
		
          <hr />

	<!-- Show items -->
	<?php if (!empty($feed))
	{ ?>
		<div class="row pt-3 newsfeed<?php echo $params->get('moduleclass_sfx'); ?>">
      	<a href="/<?php echo htmlspecialchars($rssurl, ENT_COMPAT, 'UTF-8'); ?>" target="_blank">
		<?php for ($i = 0, $max = min(count($feed), $params->get('rssitems', 3)); $i < $max; $i++) { ?>
			<?php
				$uri  = $feed[$i]->uri || !$feed[$i]->isPermaLink ? trim($feed[$i]->uri) : trim($feed[$i]->guid);
				$uri  = !$uri || stripos($uri, 'http') !== 0 ? $rssurl : $uri;
				$text = $feed[$i]->content !== '' ? trim($feed[$i]->content) : '';
			?>
              
				<div class="col-6">
					
              		<?php if (!empty($uri)) : ?>                      
						<div class="card-title feed-link px-2">
						<h5><a href="/<?php echo htmlspecialchars($uri, ENT_COMPAT, 'UTF-8'); ?>" target="_blank">
						<?php echo trim($feed[$i]->title); ?></a> <small class="text-muted">(<?php echo JHtml::_('date', $feed[$i]->publishedDate, JText::_('DATE_FORMAT_LC3')); ?>)</small>
                        </h5>
                        </div>    
					<?php else : ?>
						<div class="feed-link"><?php echo trim($feed[$i]->title); ?></div>
					<?php endif; ?>
                      
					<?php if ($params->get('rssitemdate', 0)) : ?>
						<div class="feed-item-date">
							<?php echo JHtml::_('date', $feed[$i]->publishedDate, JText::_('DATE_FORMAT_LC3')); ?>
						</div>
					<?php endif; ?>
                      
					<?php if ($params->get('rssitemdesc', 1) && $text !== '') : ?>
						<div class="px-2 feed-item-description">
						<p class="px-2"><?php
							// Strip the images.
							//$text = JFilterOutput::stripImages($text);
							$text = JHtml::_('string.truncate', $text, $params->get('word_count', 0));
							echo str_replace('&apos;', "'", $text);
						?></p>                         
                        </div>
					<?php endif; ?>
                   
				</div>
		<?php } ?>
          </a>
		</div>
	<?php } ?>
	</div>
	<?php }
}
 

A PROPOS DE L'AUTEUR :
Webmaster freelance passionné par Joomla depuis 2007, Daniel défend la veuve et l'orphelin du web en créant des sites respectueux du W3C. Fort d'une expérience de plusieurs années, il partage ses connaissances dans un état d'esprit open source.
Daniel est également très impliqué dans la communauté Joomla depuis 2014 en étant membre actif de plusieurs projets, conférencier et fondateur du JUG Breizh.