所以我试图在每个帖子的末尾显示文字,但仅从本月开始,只在一个类别中显示。我尝试了我在这里找到的不同代码,但没有一个真正有用或者我需要什么。这是我喜欢做的例子。希望它有意义。
if(in_category(tags) && date(from June 2015) )
{
?>
<p>See related news <a href="#">here</a>.</p>
<p>Subscribe to our monthly e-newsletter <a href="#">here</a>.</p>
<?php } ?>
答案 0 :(得分:1)
如果我理解你的任务没有错,你需要使用date_query
以及tax_query
$args = array(
'post_type' => 'page', // 'post', 'page' or custom post type 'Name' Like `Products`
'tax_query' => array(
array(
'taxonomy' => 'category_term', // your taxonomy name
'field' => 'slug', // slug or id
'terms' => $catSlug
)
),
'date_query' => array(
array(
'year' => date('Y'), // remove if you dont want
'month' => date('m'),
'day' => date('d'), // remove if you dont want
),
),
);
$query = new WP_Query( $args );
echo '<pre>';print_r($query->posts);echo '</pre>';
要检查类别,您应该使用条件:
获取每个发布日期的月份,并将其与当前月份数或硬编码月份数进行比较,例如June
使用06
,您可以检查php日期格式here
对于in_category
参数,请参阅this
if(in_category('cat_name') && date('m',strtotime($post->post_date)) == date('m'))
{
// your code to view post title
}
答案 1 :(得分:0)
检查以下代码。在这里,我使用了类别&#39; Uncategorized&#39;你可以在那里使用你的标签。 希望这会有所帮助。在functions.php中添加此代码
add_filter( 'the_content', 'check_cat_date' );
function check_cat_date($content){
$date = '2015-06-01';
$pub_Date =the_date( 'Y-m-d', '' ,'', $echo=false );
$pub_Date = (string)$pub_Date;
$posted_date = strtotime($pub_Date);
$flag_date = strtotime($date);
if(in_category('Uncategorized')&&($posted_date) >= $flag_date)
{
$append = '<p>See related news <a href="#">here</a>.</p>
<p>Subscribe to our monthly e-newsletter <a href="#">here</a>.</p>';
$new_content = $content.$append;
return $new_content;
}
else{
return $content;
}
}