我有一些不到1000个lp_lesson
类型的帖子,我正在努力遍历它们以将文本应用到特定的自定义字段。
以下代码仅适用于其中一些代码。可能性在10-15之间。我想知道它是否因为我使用的是wp_enqueue_scripts
?我也尝试在wp_login
上应用此更改。它们都更新完全相同数量的帖子和完全相同的帖子。
我对php完全是新手,所以如果我这样做完全错了,请告诉我。
我确实认为,在系统出现之前,循环未完成的问题可能存在吗?我可以确认所有帖子都是lp_lesson
,所以循环没有完成。也许$args
不能容纳一个那么大的阵列?任何提示都表示赞赏!
感谢。
add_action( 'wp_enqueue_scripts', 'win_9388244_format_lp_lesson' );
function win_9388244_format_lp_lesson() {
//Get post type of lp_lesson
$args = array(
'post_type' => 'lp_lesson'
);
$posts = get_posts($args);
foreach($posts as $post) {
update_post_meta( $post->ID, 'wpk_icon_text', 'Test' );
}
}
答案 0 :(得分:1)
get_posts的默认参数是:
filters:
- MyGatewayFilter
意味着如果你没有在$ args变量中指定这些值,那么wordpress默认会采用这些值。如果你给numberposts一个值,那么wordpress将使用这个和其他默认值。
您应该设置号码。例如:
$defaults = array(
'numberposts' => 5,
'category' => 0, 'orderby' => 'date',
'order' => 'DESC', 'include' => array(),
'exclude' => array(), 'meta_key' => '',
'meta_value' =>'', 'post_type' => 'post',
'suppress_filters' => true
);