我有一个自定义的帖子类型,叫做client
它有一个自定义字段next_due_date
, 那是一个没有时间的日期。我想有一个名单的职位,有一个下一个到期日即将到来。我尝试用以下代码创建一个名为“due soon”的页面模板(包括Tim Malone建议的更改):
$loop = new WP_Query(array(
\'post_type\' => \'client\',
\'posts_per_page\' => -1,
\'orderby\' => \'meta_value_num\',
\'order\' => \'ASC\',
\'meta_key\' => \'next_due_date\',
\'meta_query\' => array(array(
\'key\' => \'meta_value_num\',
\'value\' => date(\'YY-mm-dd\',strtotime("today")+(7*60*60*24)),
\'compare\' => \'<=\',
\'type\' => \'DATE\'
))
));
while ( $loop->have_posts() ) : $loop->the_post();
responsive_entry_before(); ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php responsive_entry_top(); ?>
<h2 class="entry-title post-title"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h2>
<div class="post-entry">
<?php echo "File # : " . get_post_meta($post->ID,\'file_number\',true) . "<br />"; ?>
<?php echo "File Status : " . get_post_meta($post->ID,\'file_status\', true) . "<br />"; ?>
</div><!-- end of .post-entry -->
<div class="post-meta">
<?php responsive_post_meta_data(); ?>
<?php if ( comments_open() ) : ?>
<span class="comments-link">
<span class="mdash">—</span>
<?php comments_popup_link(
__( \'No Comments ↓\', \'responsive\' ),
__( \'1 Comment ↓\', \'responsive\' ),
__( \'% Comments ↓\', \'responsive\' ) ); ?>
</span>
<?php endif; ?>
</div><!-- end of .post-meta -->
________________________________
<?php responsive_entry_bottom(); ?>
</div><!-- end of #post-<?php the_ID(); ?> -->
<?php responsive_entry_after();
endwhile;
我还不能让它输出任何东西,更不用说弄清楚如何定义即将到来的时间(比如7天)。下面是我用来计算帖子类型和字段设置为打开的帖子类型的代码:
global $wpdb;
$meta_key = \'file_status\';
$meta_value = \'open\';
$sql = "SELECT count(DISTINCT pm.post_id)
FROM $wpdb->postmeta pm
JOIN $wpdb->posts p ON (p.ID = pm.post_id)
WHERE pm.meta_key = \'$meta_key\'
AND pm.meta_value = \'$meta_value\'
AND p.post_type = \'client\'
AND p.post_status = \'publish\'
";
$count = $wpdb->get_var($sql);
$count_posts = wp_count_posts(\'client\');
$published_posts = $count_posts->publish;
echo "Number of Clients: " . $published_posts;
echo "<p>Open Files: $count</p>";
我还想数一数即将到期的那些