1

因此,我尝试为作为“事件”日历出现在侧边栏中的一组帖子信息添加条件语句。

基本上,它显示了帖子的日期、帖子的标题和一个带有帖子链接的小摘录。

我让这一切工作正常,但我现在需要它来做一些不同的事情。

现在我需要它:

1) 检查帖子的日期是否是今天的日期。

2)如果帖子是今天的日期,则执行以下操作:如果帖子具有“条目”类别,则显示该帖子,否则如果没有并且今天没有“条目”类别的帖子,则显示今天的任何其他帖子.

我还想做一些事情,只在一周中的某些日子发布帖子。不知道如何构建该功能,然后也进行检查。

这是我到目前为止不起作用的代码:

<?php

  $today = getdate();

  $args = array(
    'post_type' => 'post',
    'post_status' => 'publish',
    'posts_per_page' => 3,
    'orderby' => 'date',
    // 'day' => $today['mday']
  );


  // The Query
  $my_posts = new WP_Query( $args );

  foreach($my_posts as $posts) : setup_postdata($post); ?>

  <?php if( $post->is_category=='Entries' ) : ?>
          <li>
             <p class="date">
               <a href=""><span class="month"></span></a> 
               <a href=""><span class="day"></span></a>
             </p>
             <p class="info">
               <a href=""><?php the_title(); ?><i class="icon-chevron-right"></i></a><br>
              </p>      
             <div class="clear"></div>
           </li>';

   <?php endif; ?>
 <?php endforeach; ?>

我通过 Wordpress 论坛查看了其他一些示例,这些示例在我检查类别名称后不起作用。

上面我只是检查它是否会显示任何东西,只是检查一个类别,但事实并非如此。我正在查看法典,但我想我只是没有正确理解它。

这是另一个问题,但除此之外。有没有办法为帖子设置日期范围,也就是说,这个帖子将在 6 月 1 日至 6 月 10 日之间发布,并且谁的发布日期将显示为今天。

例如(我可能已经失去了一些你的东西)我设置了一个从 6 月 1 日到 6 月 5 日持续的活动。在日历上,它显示为当前所在的任何一天。

4

2 回答 2

1

你没有is_category正确使用。WordPress 法典

尝试更改$post->is_category=='Entries'$post->is_category('Entries')

于 2013-06-26T19:57:07.103 回答
1

要检查帖子是否今天发布:

$postDate = strtotime( $post->post_date );
$todaysDate = time();
if($postDate == $todaysDate){
//code block
}

要检查帖子是否属于特定类别:

if ( in_category( 'Entries' )) {
//code block
}

in_category()

列出今天发布的帖子:

$day = date('j');
query_posts( "day=$day&order=ASC" );

query_posts()

我想现在应该很容易了。祝你好运!

于 2013-06-26T20:31:13.097 回答