我不知道为什么要打印PHP文件的路径,因为这不是一个好的做法。但要获得主题的等效功能,可以使用:
对于父主题:get_template_directory_uri();
对于儿童主题:get_stylesheet_uri();
两者都没有尾部斜杠。
重要提示
不要直接从插件或主题文件夹ping PHP文件。包括一个PHP文件(例如,通过使用
require_once()
) 可以,但通过浏览器直接访问则不行。更好的做法是检查文件是否被直接访问,并阻止访问:
if( !defined( \'ABSPATH\' ) ) {
die();
}
ABSPATH
是一个常量,由WordPress定义,它包含到安装根目录的绝对路径。如果未定义,则表示您的文件正在被直接访问,可能是被黑客访问。
因此,创建一个REST端点并使用它。这里有一个简单的例子。
首先,创建要调用的端点。就这么简单:
add_action( \'rest_api_init\', \'my_endpoint\' );
function my_endpoint() {
register_rest_route(
\'wpnovice/v1\', \'/my_path/\',
array(
\'methods\' => \'GET\',
\'callback\' => \'wpnovice_callback\'
)
);
}
然后,在回调函数中进行计算并在其中返回值:
function wpnovice_callback( $request ){
// Your code here
return $data;
}
最后一个阶段是在Ajax调用中使用REST端点作为URL。将URL设置为:
<?php echo rest_url(\'/wpnovice/v1/my_path/\'); ?>