Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
调用wp-db.php中未定义的函数_Php_Wordpress - Fatal编程技术网

调用wp-db.php中未定义的函数

调用wp-db.php中未定义的函数,php,wordpress,Php,Wordpress,我在WordPress安装中有一个独立的脚本,我使用以下方法加载wpdb对象: define( 'SHORTINIT', true ); require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' ); 但是,调用脚本时,我的错误日志会输出以下内容: PHP Fatal error: Call to undefined function __() in /wp-includes/wp-db.php on line 1297 当我转到wp

我在WordPress安装中有一个独立的脚本,我使用以下方法加载wpdb对象:

define( 'SHORTINIT', true );
require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );
但是,调用脚本时,我的错误日志会输出以下内容:

PHP Fatal error:  Call to undefined function __() in /wp-includes/wp-db.php on line 1297
当我转到wp-db.php中的第1297行时,我看到

_doing_it_wrong( 'wpdb::prepare', sprintf( __( 'The query argument of %s must have a placeholder.' ), 'wpdb::prepare()' ), '3.9.0' );
如果我注释掉这一行,脚本不会崩溃,但作为核心WordPress文件,我认为这不是最好的解决方案

我确实在一个单独的类中使用了prepare方法,但是只有在独立脚本文件中才会出现此错误。当我通过在WordPress“识别”的文件中创建一个对象来重复使用同一个单独的类时,我没有发现错误。

位于-因此您可以尝试将其也包括在内(希望这本身不会涉及到反过来需要其他文件的内容;-)



显然它确实有效,所以我将添加它作为一个答案。

那么您包括一个随机wordpress文件,而wordpress自动包含的其他20个左右的文件中没有一个文件,并且想知道为什么您在说未定义函数时会出现错误?当您说“独立脚本”时,您的意思是它没有通过WP,但是否可以直接访问?在这种情况下(如果你想使用某个WP文件),你要么需要在脚本的开头(推荐,因为以后可能会出现更多问题),要么自己创建一个该函数的模拟。根据WP文档,
\uuu
位于
WP includes/l10n.php
,因此你也可以尝试并包含它(希望这不是指那些需要其他文件的东西;-)@JonathanKuhn我不需要包括所有其他20个左右的文件,因为wp-load.php加载了这个问题前2个答案中列出的所需文件@CBroe谢谢,这很有效!