我想返回一个字符串,我可以在一个函数中使用(编程方式在WordPress中添加条款)。麻烦返回可用的字符串或数组与foreach循环
我产生我的字符串函数基本上是通过符合特定标准,是HTML的meta标签循环如下:
function getYouTubeTags($post_id) {
$video_id = get_post_meta(get_the_ID(), 'rfvi_video_id', true);
$tag_url = "http://www.youtube.com/watch?v=" . $video_id;
$sites_html = file_get_contents($tag_url);
$html = new DOMDocument();
@$html->loadHTML($sites_html);
$meta_og_tag = null;
foreach($html->getElementsByTagName('meta') as $meta) {
if($meta->getAttribute('property')==='og:video:tag'){
$meta_og_tag = $meta->getAttribute('content');
print_r ($meta_og_tag . ",");
}
}
}
当我简单地执行这个(getYouTubeTags();
),它返回字符串:
supra vs lambo,tt lambo,twin turbo,street race,texas streets,underground racing,supra,turbo supra,1200hp,nitrous,superleggera,gallardo,
在我的功能项添加到一个帖子,下面不工作:
function rct_save_post_terms($post_id) {
$terms = getYouTubeTags();
wp_set_post_terms($post_id, $terms, 'post_tag', true);
}
如果我手动添加字符串作为从第一功能输出,它的工作:
function rct_save_post_terms($post_id) {
$terms = 'supra vs lambo,tt lambo,twin turbo,street race,texas streets,underground racing,supra,turbo supra,1200hp,nitrous,superleggera,gallardo,';
wp_set_post_terms($post_id, $terms, 'post_tag', true);
}
此外,根据WordPress的,$terms
在wp_set_post_terms
:可以是一个数组或逗号分隔的字符串。
我知道我必须在这里错过简单的东西,但似乎无法弄清楚。预先感谢您的帮助!
这工作完美。经过一段时间的努力之后,你不知道我是多么的欣赏。谢谢! – 2014-10-02 01:09:00
sure @JoeConlin im很高兴这个答案帮了你 – Ghost 2014-10-02 01:11:16
@Ghost的一个简单问题:虽然这个工作完美,但它似乎有一个问题同时运行一个多个帖子。我相信这会耗尽记忆。有没有什么我可以添加到最后,所以每次执行时,它都会从前次执行中刷新内存? – 2014-10-02 01:24:02