标签:
最近在使用WP给客户做一个企业网站,却出现从未遇到的问题。
function.php中的方法名 /** *首页分类ID对应的信息 *@param integer $cat_id [分类ID号] *@param integer $per_page [显示条数] *@return[type][description] */ function cat_product($cat_id=0,$per_page=3){ $args = array(‘posts_per_page‘=> $per_page,‘category‘=> $cat_id ); $rand_posts = get_posts( $args ); foreach ( $rand_posts as $post ): setup_postdata( $post ); echo $post->post_title."<br>";//通过这种方式没有问题 echo get_the_title();echo "<br><br> ";//通过这种方式无法获取下一条对象数据 ?> <?php endforeach;wp_reset_postdata();?> <?php }//end cat_product index.php <?php cat_product(1); //cat_product(4); ?>
<?php //将funciton中的方法直接写在index页面中则没有问题 $args = array(‘posts_per_page‘=>5,‘orderby‘=>‘rand‘); $rand_posts = get_posts( $args ); foreach ( $rand_posts as $post ): setup_postdata( $posts ); echo $posts->post_title."<br>"; echo get_the_title();echo "<br><br> "; endforeach;wp_reset_postdata(); ?>
/** *首页分类ID对应的信息 *@param integer $cat_id [分类ID号] *@param integer $per_page [显示条数] *@return[type][description] */ function cat_product($cat_id=0,$per_page=3){ $args = array(‘posts_per_page‘=> $per_page,‘category‘=> $cat_id ); $rand_posts = get_posts( $args ); foreach ( $rand_posts as $post ): echo $post->post_title;//通过这种方式没有问题 echo $post->id; ?> <?php endforeach;wp_reset_postdata();?> <?php }//end cat_product
<?php foreach($the_query as $post): $GLOBALS[‘post‘]= $post;//将当前对象保存成全局对象 setup_postdata($post);//声明成全局的 post,可以使用the_id 这种方式获取数据 var_dump(get_the_ID());//这里就正常输出了。 ?> <?php endforeach;wp_reset_postdata();?>
WordPress 在function.php 文件中方法中the_XXX方法失效
标签:
原文地址:http://www.cnblogs.com/huangtailang/p/4642080.html