• 解決済 usausakura

    (@usausakura)


    プラグイン内の配列を、テーマファイルに読み込みたいです。
    wordpressでは、require_onceではなくlocate_templateで外部ファイルを読み込めることが分かりました。
    そこで下記のコードをfunctions.phpに記述しました。

    <?php locate_template('dirname(__FILE__) . "/../plugins/job-manager/db.php', true, true); ?>

    しかし、これではdb.phpを読み込んでいないようです。
    パスの書き方が間違っているのでしょうか。
    どうぞよろしくお願いします。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • locate_template 関数や、この関数を内部で使用している get_template_part 関数などは使用しているテーマのフォルダ内にあるファイルを読み込みます。
    https://developer.wordpress.org/reference/functions/locate_template/#source-code

    プラグイン内のファイルを読み込みたい場合は require_once でいいんじゃないでしょうか。

    プラグイン内の配列を、テーマファイルに読み込みたいです。

    ちなみに複数回読み込む可能性がある場合は require が適切です。
    require_once だと、2回め以降の読み込み時はファイルの内容ではなくBoolean値の true が返ってきます。

    トピック投稿者 usausakura

    (@usausakura)

    mimosafaさん、ありがとうございます。
    locate_templateについて、ちゃんと理解していなかったようです。
    しかしrequire_oncerequireを使っても、読み込むことができませんでした。

    別トピックを立てて、改めて質問させていただきます。
    ありがとうございました。

    WP_PLUGIN_DIR 定数を使ってみてください。
    あと、シングルクォート、ダブルクォートが少し変ですね

    トピック投稿者 usausakura

    (@usausakura)

    mimosafaさん

    ありがとうございます、WP_PLUGIN_DIRを使って下記のコードでうまくいきました!

    require_once(WP_PLUGIN_DIR . '/job-manager/db.php');

    慌しく質問してしまったせいか、シングルクォート・ダブルクォートもおかしかったですね…
    とても助かりました。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「locate_templateでのファイル読み込みができない。」には新たに返信することはできません。