サポート » プラグイン » require_once()を使ったときに表示されるエラーの回避方法について

  • 解決済 echizenya

    (@echizenya)


    いつもお世話になっております。
    下記の質問についてご存知の方がいらっしゃいましたらご教示を願います。

    【質問の主旨】

    プラグインの本体ファイルとプラグイン管理画面ファイルを分離した時にrequire_once()を使って、トップ画面に遷移すると

    Warning: require_once(http://wocker.test/wp-content/plugins/paypal_expresscheckout/express_admin.php): failed to open stream: no suitable wrapper could be found in /var/www/wordpress/wp-content/plugins/paypal_expresscheckout/express.php on line 33

    というエラーが表示されます。このエラーを表示させずにプラグインの本体ファイルからプラグイン管理画面ファイルを読み込ませるためにはどうすればよろしいでしょうか?

    【質問の補足】

    1.
    今回の質問に関わるコードはGitHubにUPしています。express.phpの33行目でrequire_once()を使用して、express_admin.phpを読み込ませるつもりです。

    2
    Warning:...というエラーに対しては、php.iniの設定を確認して、allow_url_fopen = Offとすることが有効であるという記事を見つけました。

    ですが自分はローカル開発環境としてWockerを使っており、php.iniファイルが存在しません。allow_url_fopenの設定を確認できないため、今回のエラーについてどのように対処すれば良いのか分からず立ち往生しています。

    3.
    今回の質問は、プラグインのファイルを分割する方法という質問の関連質問です。

    以上、よろしくお願いします

    ヘルプの必要なページ: [リンクを見るにはログイン]

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • こんにちは

    require_once の引数は URL ではなくパスですね。

    require_once( plugin_dir_path( __FILE__ ) . 'express_admin.php' );

    トピック投稿者 echizenya

    (@echizenya)

    @ishitaka さん。

    >require_once の引数は URL ではなくパスですね。

    ご指摘ありがとうございます。

    require_once(__DIR__ . '/express_admin.php');

    としたらファイルの読み込みができました。
    今後ともどうぞよろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「require_once()を使ったときに表示されるエラーの回避方法について」には新たに返信することはできません。