仅在网站

时间:2016-10-11 10:08:31

标签: php wordpress

我通过RSS Feed在网站主页上删除了3篇最新博文。 这是代码:

<div class="wpTest"> 
 <div class="wpContent_wrapper">
   <ul class="wpContent_slider">
    <?php $channel = new Zend_Feed_Rss('https://www.test.co.uk/blog/feed/'); ?>
     <?php $i = 0; ?>
      <?php foreach ($channel as $item): ?>
       <li class="wpContent">
<?php if ($i < 3) : // number of articles ?>
    <a title="<?php echo $item->title; ?>" href="<?php echo $item->link; ?>"></a>
    <p><div class="wp_content_main" id="test1"><a title="<?php echo $item->title;?>" href="<?php echo $item->link; ?>"><?php echo limitWords($item->description()); ?> <?php echo '....' ?></a></div></p>
    <div class="wp_content_button"><a title="<?php echo $item->title; ?>" href="<?php echo $item->link; ?>" class="wp_more">Read More</a></div>
<?php endif; ?>
<?php $i++; ?>
</li>

 <?php endforeach; ?>
 </ul>
</div> 
</div>

现在我的问题是,某些博客文章的设置方式,他们在RSS订阅源中没有说明。因此,如果是这种情况,我不想显示它们。 我已尝试为此做一个if语句,但它没有用。

   <?php if ($item->description() !== '' && $item->description()  !== NULL): ?>

我有什么想法可以做到这一点吗?

2 个答案:

答案 0 :(得分:0)

您可以使用PHP的empty函数来检查描述是否存在。

另外,将<li>标记和$i的增量放在if条件中。

即。 :

<?php $i = 0; ?>
<?php foreach ($channel as $item): ?>
    <?php if ($i < 3 && !empty($item->description())) : // number of articles ?>
        <li class="wpContent">
            <a title="<?php echo $item->title; ?>" href="<?php echo $item->link; ?>"></a>
            <p><div class="wp_content_main" id="test1"><a title="<?php echo $item->title;?>" href="<?php echo $item->link; ?>"><?php echo limitWords($item->description()); ?> <?php echo '....' ?></a></div></p>
            <div class="wp_content_button"><a title="<?php echo $item->title; ?>" href="<?php echo $item->link; ?>" class="wp_more">Read More</a></div>
        </li>
        <?php $i++; ?>
    <?php endif; ?>
<?php endforeach; ?>

希望它有所帮助。

答案 1 :(得分:0)

尝试empty()功能。

<?php if (!empty($item->description()) ) {

你也可以使用没有空函数的$item->description(),使用PHP的类型杂耍,但这可能是不可靠的。