Call to a member function put_contents() on a non-object
使用前に、WP_Filesystem()を呼び出さないとたぶん上記のエラーがでると思います。
global $wp_filesystem;
// Initialize the WP filesystem, no more using 'file-put-contents' function
if (empty($wp_filesystem)) {
require_once (ABSPATH . '/wp-admin/includes/file.php');
WP_Filesystem();
}
if(!$wp_filesystem->put_contents( $path, $css, 0644) ) {
return __('Failed to create css file');
}
引用元:wp filesystem - Call to a member function put_contents() on a non-object - WordPress Development Stack Exchangerequire_once の場所はどこでもよいとおもいますが、 WP_Filesystem();呼び出だすだけでOKのようです。
global $wp_filesystem;
WP_Filesystem(); //環境初期化?
//$wp_filesystem->exists();
//$wp_filesystem->touch();
//$wp_filesystem->get_contents();
//$wp_filesystem->put_contents();
こんな感じですね。PHPの関数を直接使わないのがよいそうですが、ラッピングしてるだけだと思われます。
スポンサーリンク
コメントを残す