WP_QUERY按多个元键和距离进行搜索

时间:2012-10-23 作者:Panagiotis

我有两个元键,经度和纬度,我试图做的是在wp\\U查询中,与google store location算法的距离等效:

选择id,(3959*acos(cos(弧度(37))*cos(弧度(lat))*cos(弧度(lng)-弧度(-122))+sin(弧度(37))*sin(弧度(lat)))作为与具有距离的标记的距离<;25按距离限值0、20排序;

我想做的是获取一个自定义帖子类型(商店)列表,其中包含long/lat(自定义字段),并具有x距离(这是针对商店定位器的,如谷歌的示例)。

我已经用$wpdb-way完成了这项工作,但我正在寻找一个wp\\u查询,因为我希望通过在页面中使用/删除add\\u filter()指令来进行分页和额外过滤。是否有可能执行如此复杂的查询,或者我应该坚持使用$wpdb方法?

1 个回复
最合适的回答,由SO网友:Mridul Aggarwal 整理而成

你可以这样做。WP\\u Query中有一些可用的过滤器,允许您根据需要修改查询。过滤器posts_clauses 一起过滤查询的所有部分。还有一些特定于查询部分的过滤器。了解它们的最好方法是搜索posts_clauses 在“wp includes/query.php”中。此过滤器前的3-4行应该是一系列过滤器,以逐部分过滤出完整的查询。过滤器标签是不言自明的&;你可以尝试一下,看看哪种组合最适合你

结束

相关推荐

如何将jQuery就地编辑器与$wpdb->更新相结合

我正在尝试使用jQuery就地编辑器(http://code.google.com/p/jquery-in-place-editor/)在WordPress上更新数据库中自定义表的某些值。我对AJAX(第一次尝试使用它)或MYSQL不是很熟练,这就是我遇到困难的原因。我会尽可能用最好的方式解释我的问题。我想要的是更改column (电话)内部table (wp\\U esn\\U持卡人)。每行有一个唯一的ID (id\\U持卡人)。我可以在页面内顺利运行jQuery就地js,调用“save.php”<