如何像使用wpdb一样使用MySQL?

时间:2018-08-28 作者:Pierpaolo Ercoli

根据标题,我需要使用LIKE操作符以编程方式使用$wpdb删除db上的一行。

我想使用$wpdb->delete 消除发生的情况,但我不知道如何设置LIKE 操作员,因为在WHERE 它需要一个指定单个值或另一个数组的数组。

我问你这个语法是否正确。

$wpdb->delete(\'wp_posts\', array(\'post_type\' => \'flamingo_inbound\', \'post_content\' => \'%\'.$mail.\'%\'));

提前感谢

1 个回复
SO网友:jdp

根据Codex,delete方法将不接受LIKE 操作人员您最好只使用查询方法。

$query = $wpdb->prepare("DELETE FROM $wpdb->posts WHERE post_type = \'flamingo_inbound\' AND post_content LIKE %s", \'%\'.$mail.\'%\');

$wpdb->query($query);
希望如此$mail 没有%或\\u字符,否则需要在生成之前转义它$query像这样:

$mail = $wpdb->esc_like($mail);

结束

相关推荐

从外部php文件注册自定义帖子类型的正确方式?

我有一个类文件,为了整洁、可读性等,我将自定义帖子类型分离到子文件夹中自己的文件中。我想现在在我的插件中初始化CPTindex.php 班我的班级是在plugins_loaded 在我的构想中,我有以下几点:public function __construct() { add_action(\'admin_enqueue_scripts\', array($this,\'init_admin_scripts\')); add_action(\'wp_enqueue_scr