プラグインで、私はget_option()
にajaxを使います。これはwp全体がロードされるために必要な時間よりはるかに長くかかります。
必要なものだけをロードするように設定するにはどうすればよいですか。 (get_option()
)
一般消費者向けのもの(プラグイン、テーマなど)を作成する場合は、 admin-ajax.php
を のように使用するのが適切で一般的な方法です。物事を行い、あなたがエンドユーザーに選択した場合、物事を変更および修正するために必要な力を与えます。
それ以上に、あなたができることができる最善はSHORTINIT
定数を使うことです。カスタムphpファイルでそれを定義し、そしてwp-load.php
を要求し、あなたがする必要があることをしなさい。 SHORTINIT
は、WordPressコアの大部分がロードされるのを止めます。
<?php
define('SHORTINIT', true);
require '/path/to/wp-load.php';
// you'll have the basic API here, including `get_option`. Do stuff.
これをWPコアの外側で行う場合、wp-load.php
がどこにあるのかをと推測する必要があります - あなたを導くABSPATH
の内容はありません。システムを完全に制御していない限り、これは危険な賭けです。言い換えれば、これが慣習であり、一般に公開されていないものである場合は、それを試してください。それ以外の場合はadmin-ajax.php
を使用してください。
もう1つの方法は、このコードをfunctions.php
...を必要とせずにrequire '/path/to/wp-load.php'
に(またはプラグインで)追加することですが、SHORTINIT
ほど速くはありません。
// EXAMPLE
function MyFuncion(){
if (isset($_POST['mynamee'])) { echo get_option('my_nm');}
}
//===================Then====================
//1) Execute directly
MyFunction();
//========OR=========
//2) Hook into the EARLIEST ACTION:
add_action('muplugins_loaded', 'MyFunction',1);
p.sハッキングからの要求を守ってフィルタリングすることを忘れないでください!