1

functions.php是否可以在非标准 WP 主题文件中调用 WordPress 主题文件之外的 WordPress 函数?

我正在 WordPress 之上开发某种补充框架,该框架预先组织来自 WP 数据库的数据,因此我可以使用 jQuery 调用它们并创建单页体验。

我试图从一个post.php文件(在主题根目录中)调用 WP 函数,该文件不是 WP 主题的默认文件。post.php与前端 jQuery之间的通信工作正常,它只是无法访问 WP 功能的文件。例如:

PHP 主题文件夹/post.php:

//function to get ALL posts, don't use to save server capacity
function fetch_all(){
    $posts = get_posts(); //<-- this is a WP function, it doesn't work

    /* however this line below makes the function return some data
        $posts = 'testing if function works';
    */

    if( isset( $posts )){
        echo json_encode( $posts );
        exit();
    }

    echo json_encode( 'no data to return...' );
}   

在 functions.php 中包含 post.php 时,我得到相同的结果:什么都没有。我看了一下这种方法,但是当我在 WP 环境中工作时,这似乎很详细。

4

1 回答 1

1

是的,这是可能的。在文件开头包含wp-blog-header.php并设置WP_USE_THEMES为。false

define( 'WP_USE_THEMES', false );  
require('wp-blog-header.php'); # adjust your path

# write the rest of your codes here.
于 2013-04-17T11:33:23.003 回答