0

私はプラグインを作成しています - ほとんどのプラグイン ファイルはループ内にあり、グローバル $wpdb に問題はありませんが、onsuccess メッセージを変数に返す必要があるという方法で ajax を使用しています。ループ内のページでそれを行うと。プラグインの仕組みにより、ajax によって返されるメッセージはページ全体です。

そのため、プラグイン フレーム内にない別のページを作成する必要があります。次に、そのページにajaxを送信します

私の問題は、別のページに WP のファイルや関数が含まれていないため、グローバル $wpdb を使用できないことです。

誰でもそれを使用できるようにするために何を含める必要があるかについて考えがありますか?

ありがとうございます。

4

2 に答える 2

0

それはよく考えていませんでした。これを行うにはおそらくもっと良い方法がありますが、これが私がやった方法です。

define('WP_USE_THEMES', false);
require '/x/x/x/blog_main_dir/wp-blog-header.php';

そして、私は使用して本当の場所を見つけます

dirname(__FILE__);

そして pregmatch_replace は、私が必要としないものをカットします..

はい、より良い方法がありますが、これは私の問題に適した高速な方法です。

この解決策が私にとってうまくいくことを明確にするために、他の人にとってはうまくいかないかもしれません。

于 2012-07-27T23:12:03.987 に答える
0

(これが2年遅れていることはわかっていますが、誰かがこれを検索した場合に備えて...)

//Tells WordPress to only load the very basic components
define( 'SHORTINIT', true );

//Include the database code
require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );

//Now use the database
echo $wpdb->prefix;
于 2014-04-03T01:41:33.520 に答える