イベントの管理オプションパネルに基本的なプラグインがあります。
私は別のソーシャルメディアプラグインからの機能を呼び出したい( Mingle )。私はテーマの中でプラグイン関数を呼び出すことができますが、他のプラグインのコアファイル、または他のプラグインの管理パネルの中ではそれができません。
他のプラグインのファイルを含めること、テーマ関数ファイルにフックを追加すること、add_action
、add_filter
、init
などを試してみました。他のプラグインからのページ。
2つのプラグインのコードをマージすることで解決した唯一の解決策はありますが、もっと単純な方法がないことは奇妙に思えます。
たぶんあなたはplugins_loaded
アクションを使ってあなたのプラグインの関数を呼んでみるべきです。
class PluginA {
public function func_a() {
// do stuff
}
}
class PluginB {
function functB() {
if (class_exists('PluginA')) {
//do stuff that depends of PluginA
}
}
}
add_action('plugins_loaded', 'call_plugin_a_using_plugin_b');
function call_plugin_a_using_plugin_b() {
PluginB::functB();
}
Codex によると、すべてのプラグインがロードされた後にplugins_loaded
アクションが起動するので、他のプラグインから関数を呼び出す前にすべてのプラグインがロードされていることを確認してください。
あるプラグインから別のプラグインの関数を呼び出す(インセプション?)には、次のログインを試すことができます。
他のことをする前に、あなたが欲しい機能をチェックすることによって試すことができます。
function from_plugin_alpha( some_thing ) {
// do stuff
}
function from_plugin_bravo() {
if ( !function_exists( 'from_plugin_alpha' ) ) {
return;
}
from_plugin_alpha( some_thing );
}
これはあなたのカスタムコードを実行する前にその関数が存在することをチェックします。