問題描述
該法典將其定義為 「設置全局郵政數據。有助於格式化使用模板標籤的自定義查詢結果。我真的不明白這一點。
這是一個代碼示例:
global $post;
$args = array( 'numberposts' => -1);
$posts = get_posts($args);
foreach( $posts as $post) : setup_postdata($post);
echo $post->ID;
endforeach;
請你解釋一下
最佳解決方案
模板標籤功能依靠全局變量來訪問被處理的帖子,並從中檢索數據或與之相關。
它們的主要變量是 $post,它保存後置對象本身。在您的示例中,它不是明確的,但是發生的情況是,您的循環將數據分配給 $post,如果迭代名稱不是 $post,則需要明確地執行該操作 (global $post; $post = $some_other_post;) 。
但是有一些其他的全局變量和 setup_postdata()的目的是填寫數據。如果你看源,那就是:
global $id, $authordata, $currentday, $currentmonth, $page, $pages, $multipage, $more, $numpages;
請注意,在大多數情況下,您應該在以後調用 wp_reset_postdata()將全局變量返回到原始狀態。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。