前提・実現したいこと
wordpressを触り始めてまだ1週間程度です、公式ドキュメントなどを見ながら勉強してます。
現在、wordpressのpluginを作成しております。
ajax通信を起点にplugin内に保存したJSONファイルを読み込み、画面上に非同期処理でファイル内を表示させることが目標です。
困っていること.
ajax実行時に処理するphpファイル内で FileSystem(wp-admin/includes/file.php)を使用するために
require_once(ABSPATH.'wp-admin/includes/file.php');
を1行目に記述したのですが ABSPATHが読み込まないため先に進むことができません。
plugin内の他ファイルでは下記のように記述することで画面上に表示させることができます。
<?php require_once(ABSPATH.'wp-admin/includes/file.php'); $url = plugins_url().'/search-refine/data/search-config.json'; //json読込 if(WP_Filesystem()){ global $wp_filesystem; $json_file = $wp_filesystem->get_contents($url); $json_file = mb_convert_encoding($json_file, 'UTF8', 'ASCII,JIS,UTF-8,EUC-JP,SJIS-WIN'); $json_file = json_decode($json_file,true); } ?>
質問したいこと
ABSPATHはディレクトリのフルパスが代入された定数と聞いておりますが使用条件があるのでしょうか?
formから送信する post送信先ファイル内でABSPATHが定数として変換されない状況です。
また、plugins_url() も使用できない為、理由が知りたいです。
エラーメッセージ
ajaxエラー: Ajax error in voting
参考にしたページ
補足情報
IDE:PhpStorm
OS:Catalina 10.15.3
サーバー: IDCFクラウド
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/09 07:43
2020/03/09 07:53
2020/03/10 08:50
2020/03/10 18:54
2020/03/13 07:56