Make division in post_query?

时间:2013-01-10 作者:Random_T

我对PHP和WP都是新手,所以我正在努力解决一件事:

我想获取我所有的帖子,然后根据我的元值“\\u mycounter”除以1970年的日期(以秒为单位)或其他日期来订购。

我知道\'orderby\' => \'meta_value_num / date\' 是不对的,但我如何解决这个问题?是否有任何方法可以按我要求的方式添加除法/乘法计算?

$query = array(
  \'orderby\' => \'meta_value_num / date\', 
  \'meta_key\' => \'_mycounter\',
  \'order\' => \'DESC\'
);
query_posts($query); 

1 个回复
SO网友:s_ha_dum

MySQL可以计算,但不能传递query_posts 或者任何WordPress的post query函数,这些函数依赖于WP_Query. 他们将查找一个名为“meta\\u value\\u num/date”的表/列。我相信,要在SQL中实现这一点,也就是。,这是未经测试的--您必须这样做:

SELECT (meta_value_num / DATE()) as ddiv
FROM <some-table>
ORDER BY ddiv
无论如何,这不是一个非常有效的查询。

为什么查询后不能进行除法?我相信无论哪种方式,排序顺序都是一样的。

结束

相关推荐

使用自定义固定链接时插件中的Query_vars

我正在努力做到以下几点我需要在插件级别获取当前页面的类别,以便在转到之前archive.php 或single.php所以我有一个插件来做这件事,它根据类别切换主题。。然而,当我使用没有查询字符串的自定义永久链接(即seo友好URL)时,我在插件级别艰难地获取类别因此,如果我使用默认的永久链接,我可以使用$wp_query->query_vars[\'cat\']; 然而,对于返回null的自定义permalinks,我想不出其他方法,请问有人能帮忙吗?非常感谢瓦西姆