Преобразование файла чтения PHP в WP_Filesystem

В приведенном ниже сценарии мне нужно преобразовать readfile в эквивалент WP_filesytem. Однако я не могу найти то же самое в Codex. Любая помощь очень ценится.

Этот скрипт сохраняет файл settings.ini на рабочем столе пользователя / ПК.

WP_Filesystem(); global $wp_filesystem; $mySettingsFileLocation = WP_PLUGIN_DIR.'/my-settings/settings.ini'; if ( ! $wp_filesystem->put_contents( $mySettingsFileLocation, $mySettings, 0644) ) { return true; } // Define the path to file $file = WP_PLUGIN_DIR.'/my-settings/settings.ini'; if(!$file) { // File doesn't exist, output error die('file not found'); } else { // Set headers header("Cache-Control: public"); header("Content-Description: File Transfer"); header("Content-Disposition: attachment; filename=settings.ini"); header("Content-Type: application/ini"); header("Content-Transfer-Encoding: binary"); // Read the file from disk readfile($file); } 

Solutions Collecting From Web of "Преобразование файла чтения PHP в WP_Filesystem"

Чтение файла для отправки пользователю совершенно безопасно и необязательно необходимо преобразовать в методы WP_Filesystem. Возможна только запись.

Однако, если вы хотите сделать это, это будет эквивалентно:

echo $wp_filesystem->get_contents( filename variable here );

Также обратите внимание, что ваше имя файла для «put_contents» неверно. Вместо использования WP_PLUGIN_DIR вам нужно использовать $wp_filesystem->wp_plugins_dir() потому что «удаленный» каталог может не совпадать с «локальным» каталогом.

$mySettingsFileLocation = $wp_filesystem->wp_plugins_dir() . '/my-settings/settings.ini';