如何在WordPress中按两个自定义分类获取产品订单

时间:2015-09-12 作者:Jason

昨天,我陷入了如何检索属于其他分类法排序的特定自定义分类法的产品的代码中间。

Table wp_posts:

 id    |  post_title
----------------------
 2     |    Galaxy S4
 4     |    Iphone i5
 6     |    Nokia lumia 535

 Table wp_term_realtionship:-

 object_id |  term_taxonomy_id
 -----------------------------
      2    |      12
      4    |      12
      6    |      12
      2    |      15
      4    |      16
      6    |      17

  Table wp_terms:-

   term_id   |   name
   -------------------
     12      |   Smartphone
     15      |   Samsung
     16      |   Apple
     17      |   Nokia
现在,智能手机来自product\\u cat,品牌(三星、苹果、诺基亚)来自product\\u brand taxonomy。现在,如果用户转到智能手机类别并按品牌(A到Z)订购,我应该写什么查询。到目前为止我尝试的代码:-

Code:
 SELECT * FROM wp_posts INNER JOIN wp_term_relationships ON wp_posts.id=wp_term_relationships.object_id INNER JOIN wp_terms wp_terms.term_id=wp_term_relationships.term_taxonomy_id WHERE wp_terms.term_id=18 ORDER BY wp_terms.name DESC;  
以上代码显示了智能手机类别的产品,但未按产品品牌排序。请帮我更正以上代码。谢谢

1 个回复
SO网友:Rarst

众所周知,WordPress反对按条款订购。当然,这正是人们在实践中需要完成的。确切地说,它们的数据库表示非常笨拙(为了公平起见,计划在几个版本中缓慢改进)。

简而言之,您的查询存在以下问题:

最好与WP_Query, 即使您正在大量定制SQL,您也缺少了整个第三个wp_term_taxonomy 表:)虽然我不认为有任何真正规范的方法可以做到这一点,但我见过并使用过的最可靠的方法包括Sortable Taxonomy Columns 邮递

相关推荐

Wordpress Database Cleanup

重建WordPress数据库和更改网站的目录结构有多困难?我继承了两个网站的维护工作,我很确定目录结构设置不正确,数据库一团糟(两个网站有6个数据库?)。我是WordPress的新手,我怀疑现在使用现有网站重建网站会更容易。丢失数据没什么大不了的,网站也没什么特别的。该网站运行正常,但维护起来越来越困难。这是一个合理的计划吗?