web-dev-qa-db-ja.com

WordPressで「プラグインを介して機能を置き換える」にはどうすればよいですか?

私はWordPressが初めてなので、彼らのドキュメントを理解していません。私がやりたいのはwp_hash_password(そして他のいくつかのパスワード関連関数)を私のものに置き換えることです。私はすでに機能を書いていて、それらが機能性を確実にするためにWordPressの外でそれらをテストさせました。

「wp_hash_password関数はプラグインを介して置き換えることができます。プラグインがこれらの関数を再定義しない場合は、代わりにこれが使用されます。」

WordPressのドキュメントによると

残念ながら私はそれを行う方法を私に言う場所を見つけることができません。 ../wp-content/plugins/myfirstplugin/myplugin.phpにPHPファイルを作成してみました。私のmyplugin.phpファイルには、 "上書き"機能があります。

function wp_hash_password( $password ) {

 // my code is here

}

私のphpファイルの名前をfunctions.phpに変更し、add_actionadd_filterを使ったこともありますが、やはりドキュメントはそれほど支持的ではありません。

私はそれを "プラグイン"に入れる方法、プラグインがどこに行くか、そしてプラグインを有効にする方法を知っている必要があるコードを持っています(これはwordpress管理者メニューで行われますか?)

乾杯!

4
agentsmith666

あなたはプラグインを作成することで正しい軌道に乗っています。あなたの仮定はすべて正しいです。

起動時のエラーを回避するには、再定義する関数をfunction_existsブロックでラップします。起動時にこれらの関数は既に定義されているためです。

if ( ! function_exists( 'wp_hash_password' ) ) :

function wp_hash_password( $password ) {
    return 'foo';
}

endif;

コードをwp-content/plugins/myfirstplugin/myplugin.phpに入れて、プラグインが ファイルヘッダ を持っていることを確認してください。そうすればWordPressはそれがプラグインであることを認識します。これについての有用な情報も、標準プラグイン情報の見出しの下の プラグインページの作成 にあります。

それから、あなたはすでにあなたがWordPress管理者のプラグインページであなたのプラグインをアクティブにすると仮定したように。

5
ampt