我希望一个类别中的每个帖子都有一个基于创建时间的增量数值。
所以在A类中,第一个帖子的编号为1,自定义字段值为2,第二个编号为2等。 如果我在B类中创建一个帖子,那么它也有值1,如果我之后在C类中发帖,它也有值1.
这是否清楚? :)我找到了这个代码段,但没有考虑类别问题。
function updateNumbers() {
/* numbering the published posts: preparation: create an array with the ID in sequence of publication date, /
/ save the number in custom field 'incr_number' of post with ID /
/ to show in post (within the loop) use <?php echo get_post_meta($post- >ID,'incr_number',true); ?>
/ alchymyth 2010 */
global $wpdb;
$querystr = "SELECT $wpdb->posts.* FROM $wpdb->posts WHERE $wpdb->posts.post_status = 'publish' AND $wpdb->posts.post_type = 'post' ";
$pageposts = $wpdb->get_results($querystr, OBJECT);
$counts = 0 ;
if ($pageposts):
foreach ($pageposts as $post):
setup_postdata($post);
$counts++;
add_post_meta($post->ID, 'incr_number', $counts, true);
update_post_meta($post->ID, 'incr_number', $counts);
endforeach;
endif;
}
add_action ( 'publish_post', 'updateNumbers' );
add_action ( 'deleted_post', 'updateNumbers' );
add_action ( 'edit_post', 'updateNumbers' );
希望有人可以提供帮助!
答案 0 :(得分:0)
也许你可以在foreach中使用is_category()或类似的东西?找到帖子是否相同的猫,然后添加号码,找到其他猫/帖子,再次添加号码......
首先想到的是。