WordPress 数据库查询代码中断

发布于 2024-12-14 19:57:05 字数 496 浏览 1 评论 0原文

add_action( 'trash_post', 'producers_xml' );

function producers_xml($post_id){
    if($post_id){
        $post_type = $wpdb->get_results("SELECT element_type FROM wp_icl_translations WHERE element_id = '".$post_id."'");

        if($post_type[0]->element_type == 'post_producer'){
            die("Yes");

        }
    }

本地测试此代码(并用硬编码值替换 $post_id)没有问题,但是当我将其放入此函数中时,它会在数据库查询之前中断。我已经检查了 $post_id,它已设置并保存我想要搜索的值。但该查询之后的任何操作都不起作用。我做错了什么?

谢谢

add_action( 'trash_post', 'producers_xml' );

function producers_xml($post_id){
    if($post_id){
        $post_type = $wpdb->get_results("SELECT element_type FROM wp_icl_translations WHERE element_id = '".$post_id."'");

        if($post_type[0]->element_type == 'post_producer'){
            die("Yes");

        }
    }

}

Testing this code locally (and substituting the $post_id with a hard-coded value) is no problem, but when I place it in this function, it breaks right before the database query. I've checked the $post_id and it is set and holds the value I want to search. But anything after that query doesn't work. What am I doing wrong?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一花一树开 2024-12-21 19:57:05

确保首先全局 $wpdb

global $wpdb;  
$results = $wpdb->get_results( $wpdb->prepare("SELECT element_type FROM wp_icl_translations WHERE element_id = %d", $post_id) );
//dump the results to see what we get back
var_dump($results); 
die();

Make sure you global $wpdb first

global $wpdb;  
$results = $wpdb->get_results( $wpdb->prepare("SELECT element_type FROM wp_icl_translations WHERE element_id = %d", $post_id) );
//dump the results to see what we get back
var_dump($results); 
die();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文