我正试图从crontab执行wp cli
我已经做了以下工作
首先,我创建的.sh文件包含以下内容:

   #!/bin/bash
   declare -a sites=('/home2/musite/public_html' )
   for site in "${sites[@]}";
   do
   /usr/local/bin/wp --path=$site --skip-plugins=wp-fastest-cache cron event run -  -all
done

我试图手动运行sh,但它运行正确,但当我计划通过crontab自动运行文件时,出现以下错误:
php警告:array_slice()期望参数1为array,在第622行的phar:///usr/local/bin/wp/php/wp_cli/runner.php中为空
内容类型:text/html;charset=utf-8
警告:array_slice()期望参数1为array,在第622行的phar:///usr/local/bin/wp/php/wp_cli/runner.php中为空php警告:在第132行的phar:///usr/local/bin/wp/php/wp_cli/configurator.php中为foreach()提供的参数无效
警告:在phar:///usr/local/bin/wp/php/wp_cli/configurator.php第132行中为foreach()提供的参数无效php警告:proc_open():描述符项必须是phar:///usr/local/bin/wp/php/commands/help.php第111行中的数组或文件句柄
警告:proc_open():第111行的描述符项必须是数组或phar://usr/local/bin/wp/php/commands/help.php中的文件句柄php警告:proc_close()期望参数1是资源,第111行的boolean给定于phar:///usr/local/bin/wp/php/commands/help.php中
警告:proc_close()期望参数1是resource,boolean在第111行的phar:///usr/local/bin/wp/php/commands/help.php中给出
你能帮我做很多研究,但我还是不明白为什么会这样。
谢谢

最佳答案

从crontab运行wp cli的解决方案如下:

/usr/local/bin/php /usr/local/bin/wp --skip-plugins=cat /home2/mysite/public_html/skipplugins.txt cron event run --all --path=/home2/mysite/public_html

关于linux - wp cli与crontab,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40452265/

10-09 08:24
查看更多