我不知道“全局”这个词是否正确,但我要做的是:定义一个我可以在模板的许多部分中使用的变量。
示例:我必须定义一个包含静态页面 ID 的变量
$page_id = 34
我必须在不同的模板部分使用它,功能如下
get_page_link($page_id)
我找到了很多方法(PHP 定义(),在 function.php,全局,...),但我问你认为什么是最安全的。
我不知道“全局”这个词是否正确,但我要做的是:定义一个我可以在模板的许多部分中使用的变量。
示例:我必须定义一个包含静态页面 ID 的变量
$page_id = 34
我必须在不同的模板部分使用它,功能如下
get_page_link($page_id)
我找到了很多方法(PHP 定义(),在 function.php,全局,...),但我问你认为什么是最安全的。
您可以在wp-config
文件中定义它(可以在所有主题中访问)或在您function.php
的主题目录中。
示例:Function.php
global $blog_pageId;
$blog_pageId = 34;
或者只是创建一个返回 id 的小函数。
function get_blog_page_id(){
return "34";
}
比一个可以称之为,
$blog_pageId = get_blog_page_id();
您还可以使用 wordpress 默认功能,例如
全球 $wpdb;
上面的全局变量$wpdb在 wordpress 的所有页面中都使用,因此您还可以创建自己的函数并创建一个全局变量来声明所有页面或帖子。
如果您使用漂亮的永久链接, get_query_var('page_id') 将不起作用。
相反,从全局 $wp_query 获取查询的对象 ID:
// Since 3.1 - recommended!
$page_object = get_queried_object();
$page_id = get_queried_object_id();
// "Dirty" pre 3.1
global $wp_query;
$page_object = $wp_query->get_queried_object();
$page_id = $wp_query->get_queried_object_id();