我在页面管理部分创建了一个自定义循环,以管理该页面名为“widgets”的自定义帖子类型。
$ps_widget_list = get_post_meta( $post_id, \'ps_widget_list\', true ); //first get the list of current widgets
$active_widget_array = explode( \', \', $ps_widget_list ); //then separate those widgets into an array of active widgets
// this array is for the UI. It will build a list of all the widgets
// then based on the array of active widgets, will separate them into
// two different arrays to be used later
$widgets_array = array(
\'active\' => array(),
\'inactive\' => array()
);
//get all the widgets
$args = array(
\'post_type\' => \'ps_widgets\',
\'posts_per_page\' => \'-1\'
);
$the_query = new WP_Query( $args );
while ( $the_query->have_posts() ) : $the_query->the_post(); // loop through the widgets
$widget_id = get_the_ID();
// if the widget\'s id is in the array of active widgets
// mark it as active, if not mark as inactive and store to the array
$key = ( in_array( $widget_id, $active_widget_array) ) ? \'active\' : \'inactive\';
$widgets_array[ $key ][ $widget_id ] = array(
\'id\' => $widget_id,
\'title\' => get_the_title( $widget_id )
);
endwhile;
wp_reset_postdata();
当我尝试在SEO插件中添加SEO标题、描述或关键字时,就会出现问题。我在Yoast和All-in-One上都试过了。禁用不同代码段后,我将问题缩小到这个循环。我也尝试了给变量命名,但没有成功。我想这是调用循环的问题,有什么建议吗?
SO网友:Dipesh KC
我还遇到side effects
使用时WP_Query
在里面wordpress admin
.
我在自定义元数据库中使用了两个Wp\\u查询,效果很好,但后来发现了两个奇怪的问题:
帖子的slug是自动设置的,即使是新帖子也是如此,特色图像也是自动设置的,就像slug一样,新设置的特色图像没有保存wp_reset_query();
然而,这并没有完全解决问题。不过,特色图片没有保存。什么是错误的?
然后我想出了这个解决方案。Use native PHP code
和Don\'t mess with WP template tags
ie,
$your_loop= new WP_Query($args);
而不是
if( $your_loop->have_posts()){
while ($your_loop->have_posts()) {
//the_title();
...
//WP loop template tags
}
}
使用以下内容:
if( count($your_loop->posts) > 0) {
foreach( $your_loop->posts as $item_post) {
//$item_post->post_title
// see other available using print_r($item_post)
//
}
}