Не удается получить доступ к файловой системе wp в функции cron
Я пишу плагин для интеграции WP с Visma. В основном он будет выдавать XML-файл каждые три часа с помощью wp cron (перейдите в раздел настройка сервера cron для wp-cron.php
на живом сайте) и сохраняйте его в папке "Загрузки".
У меня все работает, когда я делаю это вручную (отправляю в wp-admin). Однако при запуске функции cron кажется, что $wp_filesystem
недоступен, и его невозможно настроить с помощью request_filesystem_credentials()
. Если я попытаюсь запустить request_filesystem_credentials()
в функции cron, я получу ошибка, указывающая, что функция не существует. Если я оставлю это своей другой функции (подключенной к admin_init
) $wp_filesystem
просто пусто (не существует).
Я пытаюсь сохранить материал в папку загрузки в функции cron.
Я попытался установить константы FTP в wp-config.php
. Я попытался установить приоритет функции настройки wp_filesystem
равным 1 (чтобы убедиться, что она запускается как можно скорее).
Я бы предпочел использовать wp_filesystem
, поскольку у него так много преимуществ с точки зрения стабильности и безопасности.
1 answers
Поэтому, конечно, как только я опубликую это, я найду решение. После того, как я искал его целый день. Мне пришлось вручную включить в функцию файл, обрабатывающий request_filesystem_credentials. Для справки это было
require ABSPATH . 'wp-admin/includes/file.php';