我运行以下命令:
注意::usp-custom-8
是一个自定义字段,其字符串如“美国” 或“中国” 等>
有时候国家的开头有一个额外的字符串,例如:“ [Image]美国” ,我需要删除 [“ Image”] 并离开该国家仅名字。在下面的内容中,我试图检查custom field
是否具有特定的string
,如果是,则将其更改为update the field
。但这不起作用,这也不是通用代码,一次删除所有 [“ Image”] ,但我必须针对每个国家/地区手动运行它。< / p>
if (have_posts()) : while (have_posts()) : the_post();
$title = usp_get_meta(false, 'usp-custom-8');
if (preg_match('/\b[Image] United States\b/', $title)) {
update_post_meta( $post->ID, 'usp-custom-8', 'United States' );
}
endwhile; endif;
答案 0 :(得分:1)
您可以选择最简单的选择,就是使用[Image]
将str_replace()
替换为空白...
if (have_posts()) :
while (have_posts()) :
the_post();
$title = usp_get_meta(false, 'usp-custom-8');
update_post_meta( $post->ID, 'usp-custom-8',
str_replace('[Image]', '', $title ));
endwhile;
endif;