shell_exec / require_once / Ничего не работает в плагине add_action - PullRequest
1 голос
/ 23 октября 2019

Worpress Сайт. Я экспортирую информацию о заказе из WooCommerce. Я могу запустить shell_exec из файла functions.php, но всякий раз, когда он запускается внутри действия (add_action), он не выполняется. Я пробовал require_once, а также ряд других опций. Я могу заставить их запускаться из командной строки, но не из подключаемого модуля. Заранее спасибо.

Почти все. Я протестировал все параметры в командной строке, используя автономные сценарии php, и он отлично работает.

    add_action( 'woocommerce_order_status_changed', 'live_order_info');
    function live_order_info(){
    $vars = "ANYDATA";
    $command = escapeshellcmd("./test.php ");
    $output = shell_exec($command.$vars);
    echo $output; }

Я могу убедиться, что код что-то делает, просто не вызывая выполнение сценария test.php. Все файлы имеют установленные права доступа и работают правильно, если вызваны из putty.

1 Ответ

0 голосов
/ 24 октября 2019

Исправление - путь к файлу. Мне пришлось использовать абсолютный путь к файлу, и он отлично работал.

Замазка использовала символ ~, где она не была замечена и оставлена ​​вне функции. Я добавил это путь к файлу и Presto.

...