如何包括自定义WordPress的功能PHP文件?(How to include WordPress

2019-07-21 05:49发布

我怎样才能在自订PHP文件WordPress的功能呢?

详细介绍:我在我的主题(构造函数)名为报告的目录。 这些含有产生从与DOMPDF用于下载的站点数据报告.php文件。 对于这些,我想使用WordPress的引擎提供,例如功能get_the_author_meta( 'user_firstname', $user_id ) 如果我使用这些我得到(自然)以下错误:

致命错误:调用根未定义功能get_the_author_meta()/的public_html /可湿性粉剂内容/主题/构造函数/报告/第15行testreport.php

我带领相信,我需要包括可湿性粉剂博客 - header.php文件。 我使用require_once("../../../../wp-blog-header.php"); 。 有了这个,我得到以下404错误:

未在此网址找到网页地址:ROOT /可湿性粉剂内容/主题/构造函数/报告/ testreport.php

(在需要指向正确的路径。如果我与它摆弄,我得到警告:require_once(../../../可湿性粉剂博客 - header.php文件):未能打开流...所以,该路径必须是正确的。)

有什么我可以俯瞰? 为什么我不能包括这个WP文件? 什么是包括WP功能的正确方法是什么?

感谢您的帮助,Sziro

Answer 1:

你在正确的轨道上。 试试这个:

require_once("../../../../wp-load.php");


Answer 2:

更专业的方式没有点事情,如果WordPress的是文档根目录:

require($_SERVER['DOCUMENT_ROOT'].'/wp-load.php');


Answer 3:

那么,如果有人安装了新的PHP版本(版本> =的5.5.x),那么他们也可以尝试在WordPress的网站目录本身的根脚本下面的代码:

<?php
define("WP_ROOT", __DIR__);
define("DS", DIRECTORY_SEPARATOR);
require_once WP_ROOT . DS . "wp-load.php";

要么

<?php
define("WP_ROOT", __DIR__);
define("DS", DIRECTORY_SEPARATOR);
require_once WP_ROOT . DS . "wp-blog-header.php";

我想这是一个更直接,更清洁的方式,不涉及手动添加斜线,并通过改变diretories ..

希望这可以帮助别人。



Answer 4:

require_once(dirname(__FILE__) . '/options.php');

这是更好的办法,包括在WordPress的文件。



Answer 5:

外部文件可以方便地访问WordPress的功能。 你只需要包含文件wp-load.php在外部文件中。 该wp-load.php文件位于你的WordPress安装根。 例如:假设你的文件test.php位于WordPress安装的根目录。

<?php
require_once('wp-load.php');
// Your custom code
?>

来源: 如何访问外部文件WordPress的功能



文章来源: How to include WordPress functions in custom .php file?