我是sql查询的新手可以有人帮我翻译一个sql查询到wp查询,使其自动运行或安排?
我需要在sql上安排一个事件,但遗憾的是我的主机不允许我打开事件调度程序,因为我只使用共享主机帐户。
是否可以使用wp查询自动推送此查询?
这是我的查询
SELECT title AS ApplicationType,
value AS ApplicationStatus
FROM sfda_rg_form, sfda_rg_lead_detail
WHERE value = 'Pending'
OR value = 'Approved'
OR value = 'Rejected'
提前致谢
答案 0 :(得分:1)
使用$wpdb
,您只需运行查询,而无需使用任何特殊结构。在你的情况下,甚至没有变量准备。所以这会奏效:
global $wpdb;
$query = "SELECT title AS ApplicationType, value AS ApplicationStatus FROM sfda_rg_form, sfda_rg_lead_detail WHERE value = 'Pending' OR value = 'Approved' OR value = 'Rejected'";
$results = $wpdb->get_results($query);
如果您要问的是wordpress中是否存在某种允许在服务器的cron作业之外运行的计划任务的机制,那么我可能会说不,虽然我不是100%肯定。很大程度上是因为它需要触发服务器才能触发 - 换句话说,有人需要为该触发器加载一个页面,而不是在cron选项卡中专门设置,你已经声明这不是一个选项。
因此,如果您想知道如何使用wordpress $ wpdb运行该查询,使用连接和配置设置 - 那么这对您有用。
如果您在询问是否可以在cron选项卡外的WP中运行计划任务,那么最终会由其他人明确说出。
更新
如果您希望仅按需运行此功能,可将其放在functions.php文件中
function run_task(){
global $wpdb;
$query = "SELECT title AS ApplicationType, value AS ApplicationStatus FROM sfda_rg_form, sfda_rg_lead_detail WHERE value = 'Pending' OR value = 'Approved' OR value = 'Rejected'";
$results = $wpdb->get_results($query);
// do something with the results
}
然后按你喜欢的方式打电话。以下是使用$ _GET ...
的示例//in functions.php also include this
if(isset($_GET['run_task']))
{
run_task();
}
现在您可以通过将run_task参数添加到get vars来运行任务: http://www.yoursite.com/?run_task
通常params有值,所以如果你与其他任何东西复合,那么做一些像/?run_task = 1& foo = bar
这样的事情可能是理智的。...等