WordPress SQL-如何检查类别?

时间:2013-07-25 作者:MikeGWP

我使用以下SQL(用php封装)在wordpress数据库中查找帖子:

$sql = "
    SELECT
        p.*
    FROM
        {$wpdb->prefix}most_popular mp
        INNER JOIN {$wpdb->prefix}posts p ON mp.post_id = p.ID
    WHERE
        p.post_type IN ( $holder ) AND
        p.post_status = \'publish\'
    {$order}
    LIMIT %d
";
我想添加一个附加条件,即该职位属于特定类别。有什么想法吗?

1 个回复
SO网友:s_ha_dum

我想添加一个附加条件,即该职位属于特定类别。有什么想法吗?

JOIN在分类表上进行分类很复杂。除非你有充分的理由SQL, 不要。使用WP_Query.

$args = array(
  \'post_type\'     => $holder,
  \'numberposts\'   => -1,
  \'post_status\'   => array(\'publish\'),
  \'category_name\' => \'cat-slug\', // slug not strictly the name
  \'orderby\'       => $order,
  \'ignore_sticky_posts\' => true,
);
$qry = new WP_Query( $args );
我在猜测一些变量的内容。

如果必须使用纯SQL, 运行上面的查询,但添加var_dump($qry->request) 您将生成SQL 转储到屏幕。这会让你知道必须发生什么。

结束

相关推荐

MySQL数据库向WordPress的迁移

我在一个非WordPress数据库中为一个web应用程序建立了一个MySQL数据库。该数据库有许多表,这些表中预先填充了外键行等,这需要很长时间才能输入。我正试图找出如何将这些表完整地放入WordPress数据库。我还想知道,当我这样做的时候,如何给表名一个前缀来表示它们与WordPress核心表是分开的。我还创建了processforms。我使用mysqli prepare和bind param方法阻止SQL注入的php文件,使用$wpdb prepare方法重新编码有什么好处吗?如果您能在这方面提供任