Php Wordpress-定义全局变量的最安全方法
我不知道“global”这个词是否正确,但我要做的是:定义一个可以在模板的许多部分使用的变量 示例:我必须定义一个包含静态页面ID的变量Php Wordpress-定义全局变量的最安全方法,php,wordpress,variables,global-variables,Php,Wordpress,Variables,Global Variables,我不知道“global”这个词是否正确,但我要做的是:定义一个可以在模板的许多部分使用的变量 示例:我必须定义一个包含静态页面ID的变量 $page_id = 34 我必须在不同的模板部分使用它,比如 get_page_link($page_id) 我找到了很多方法(PHP define(),在function.PHP,global,…),但我问你,在你看来什么是最安全的。你可以在wp config文件(所有主题都可以访问)或主题目录的function.PHP中定义它 示例:Function
$page_id = 34
我必须在不同的模板部分使用它,比如
get_page_link($page_id)
我找到了很多方法(PHP define(),在function.PHP,global,…),但我问你,在你看来什么是最安全的。你可以在
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();
您可以在
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的所有页面,因此您也可以创建自己的函数,并创建一个全局变量来声明所有页面或帖子。您也可以使用wordpress的默认功能,如 全球$wpdb强>
在上面的全局变量中,$wpdb用于wordpress的所有页面,因此您也可以创建自己的函数,并创建一个全局变量来声明所有页面或帖子。如果您使用的是非常永久的链接,那么get\u query\u var('page\u id')将不起作用 而是从全局$wp_查询中获取查询的对象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();
如果您使用的是相当长的永久链接,那么get\u query\u var('page\u id')将无法工作 而是从全局$wp_查询中获取查询的对象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();
嗨,瑞克什!对不起,不清楚。我宁愿不修改wp配置,然后选择functions.php方法,但它不起作用。什么是
$domain
?我也试过global$page\u id
,但什么都没做。@FredK-抱歉更新了。尝试像这样声明var&然后在任何主题文件中访问它$页码=34和另一个php文件中的获取页面链接($page\u id)
,但它不起作用@FredK-就在get\u page\u link($page\u id)
addglobal$page\u id代码>。是的!现在它可以工作了,但是请注意,它在functions.php中没有global$page\u id
的情况下也可以工作。这正常吗?我的问题是关于最安全的:这是最安全的方式吗?你如何看待define('PAGE_ID',34)代码>你好Rikesh!对不起,不清楚。我宁愿不修改wp配置,然后选择functions.php方法,但它不起作用。什么是$domain
?我也试过global$page\u id
,但什么都没做。@FredK-抱歉更新了。尝试像这样声明var&然后在任何主题文件中访问它$页码=34和另一个php文件中的获取页面链接($page\u id)
,但它不起作用@FredK-就在get\u page\u link($page\u id)
addglobal$page\u id代码>。是的!现在它可以工作了,但是请注意,它在functions.php中没有global$page\u id
的情况下也可以工作。这正常吗?我的问题是关于最安全的:这是最安全的方式吗?你如何看待define('PAGE_ID',34)代码>我定义的全局$page\u id,但它不工作,我定义了global$page\u id
在functions.php中,但它不起作用