如何从ssh和/或cron运行wordpress php snippet mysql update命令
我正在尝试使用一个安全的shell来运行存储在wordpress插件PHP代码段中的SQL update命令脚本来测试它,目的是使用tsohost从cron作业调用相同的命令 下面的PHP代码片段如何从ssh和/或cron运行wordpress php snippet mysql update命令,php,mysql,wordpress,Php,Mysql,Wordpress,我正在尝试使用一个安全的shell来运行存储在wordpress插件PHP代码段中的SQL update命令脚本来测试它,目的是使用tsohost从cron作业调用相同的命令 下面的PHP代码片段 global $wpdb; global $current_user; get_currentuserinfo(); $user_id = $current_user->ID; $result = $wpdb->get_results(" INSERT INTO dm_cash_
global $wpdb;
global $current_user;
get_currentuserinfo();
$user_id = $current_user->ID;
$result = $wpdb->get_results("
INSERT INTO dm_cash_accounts_transactions (name, amount, type, cash_account_id, user_id)
SELECT
name,
quantity * amount,
type_id,
account_id,
user_id
FROM
dm_scheduledd
WHERE
paydate = DATE(NOW())
AND
dm_scheduledd.user_id = '".$user_id."'
AND
updated = 'n'
");
print_r($result);
我可以使用短代码从网页运行上面的代码片段
[wbcr_php_snippet id="14984" title="Update Cash Accounts Transactions"]
我正在努力使用secure shell运行上述脚本。我尝试了很多选择
bash-3.2$ wget -O /dev/null --no-check-certificate https://dividendmanager.co.uk/update-cash-accounts-transactions
上面的命令似乎运行正常,但不更新数据库表。我想我需要一个命令来登录数据库并调用PHP代码段,如有任何建议,我将不胜感激。谢谢Colin如果这是一个php文件,一个独立的php文件,您应该加载wp全局引导类,请在文件的开头包含wp-load.php
我不认为bash也能检索到
$current_user
,这与用户会话相关如果那是一个php独立的php文件,你应该加载wp global bootstrap类,请在文件开头包含wp-load.php
我不认为bash也能检索到
$current_user
,这与用户会话有关谢谢你的快速响应,我正在测试你的提案,但我需要出去,今晚或明天晚些时候会去拿它,我假设包含wp-load.php的数据库应该获取mysql数据库名称和登录详细信息,以允许mysql执行?感谢大家,包括wp load.php
将允许您访问WordPress函数和全局变量-这将允许SQL进行处理-请注意,正如@eye tag所说的-尽管没有用户。(旁注,您应该改为使用。)这是因为不会有登录用户,因此$current_user
将设置为0
。我已将an include wp-config.php添加到保存数据库访问权限的php文件中,这解决了我的问题,非常感谢所有Colinthank的快速响应,我正在测试你的建议,但我需要出去,今晚晚些时候或明天会收到,我想包括wp-load.php在内的文件应该会收到mysql数据库名称和登录详细信息,以便允许mysql执行?感谢大家,包括wp load.php
将允许您访问WordPress函数和全局变量-这将允许SQL进行处理-请注意,正如@eye tag所说的-尽管没有用户。(旁注,您应该改为使用。)这是因为不会有登录用户,因此$current_user
将设置为0
。我已将an include wp-config.php添加到保存数据库访问权限的php文件中,这解决了我的问题,非常感谢所有Colin