我想返回一個字符串,我可以在一個函數中使用(編程方式在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