0

Wordpress のプラグインから functions.php で定義した関数を呼び出すにはどうすればよいですか? functions.php ファイルからの私の単純な関数は次のとおりです。

function get_slider_tax(){
    $taxonomies = get_terms('slider-type');
    return $taxonomies;
}

プラグインphpファイルから呼び出すと「未定義の関数」というエラーが返されますが、プラグインファイルでこの関数を定義するとWP_Errorが返されます。そのため、プラグインから分類法の有効な配列を取得できず、プラグインから関数を呼び出すことができません。

UPD: *get_terms が無効な分類法エラーを返すことがわかりました: 「init」フックにカスタム分類法が登録されているため、wp-admin では機能しません -> 「get_term」を呼び出した後に分類法が登録されます*

だから、実際には、今でもinitの前に呼び出す方法がわかりません。

UPD:実際、どのように修正したかはわかりませんが、誰かにとって役立つかもしれません。おそらくその理由は、init イベントの前に関数を呼び出すことでした。正確にはわかりません。プラグインで、functions.php から関数のラッパー関数を作成しました。

function custom_function(){ 
    $slider_names = array();
    $slider_tax = get_slider_tax();//Function from functions.php
    foreach($slider_tax as $slider_name){
        array_push($slider_names,$slider_name->name);
}
}

そして、プラグインのファイルの最後に、ラッパー関数を使用して init フックを追加しました。

add_action('init','custom_function');
4

0 に答える 0