2
기본적으로 of 문을 사용하여 특정 범주의 다양한 피드의 항목 만 필터링하고 6 개의 항목 만 표시하려고합니다. 나는 성공적으로 할 수 있지만 둘 다 동시에 할 수는 없다. 먼저 범주에 따라 항목을 필터링 한 다음 해당 항목의 수를 6 개로 제한하거나 설정되는 항목을 제한하려고합니다. 코드는 다음과 같습니다 (반대의 경우, 다른 방법을 수행하는 방법을 이해하지 못합니다). 누군가가 도움이되기를 바랍니다. 고마워요!SimplePie : 항목 값 및 항목 수로 필터링
<?php
require_once('simplepie131.inc');
$feed = new SimplePie();
$feed->set_feed_url(array(
'http://site1.com/rss',
'http://site2.com/rss',
'http://site3.com/rss',
));
$feed->enable_cache(true);
$feed->set_cache_location('cache');
$feed->set_cache_duration(1800);
$feed->init();
$feed->handle_content_type();
include('header.php');
?>
<h1>Title</h1>
<?php
foreach ($feed->get_items(0, 6) as $item):
?>
<?php
if( $item->get_category()->get_label() == 'category1'
or $item->get_category()->get_label() == 'category2'
or $item->get_category()->get_label() == 'category4'
):
?>
<div>
<h2><a href="<?php echo $item->get_permalink(); ?>"><?php echo $item->get_title();?></a></h2>
<img src="<?php echo $item->get_description(); ?>" />
<img src="<?php echo $item->get_feed()->get_image_url(); ?>" />
<?php
echo $item->get_feed()->get_title();
echo $item->get_category()->get_label();
echo $item->get_date('d.m.Y | H:i');
?>
</div> <!-- end div -->
<?php endif;?>
<?php endforeach; ?>