2017-06-19 51 views
0

我写了下面的语句来抓取列表,并希望显示按升序排列名称列表。的排序依据查询不自定义字段,即使元查询工作

我早些时候试图通过meta_key和meta_value作为参数,但它没有给正确排序。

尝试后meta_query我仍然坚持相同的问题。 让我知道我该怎么去感谢。

$connected = new WP_Query(array(

        'connected_type' => 'posts_to_pages', 

        'connected_items' => get_queried_object(), 

        'nopaging' => true, 

        'post_type' => 'attorney', 

        'attorney_category'=> 'partner', 

        'post_status' => 'publish', 

        'posts_per_page' => -1, 

        'caller_get_posts'=> 1, 

        'orderby' => 'order_clause', 

        'order' => 'ASC', 

        'meta_query' => array(
         'order_clause' => array(
          'key' => 'Last name', 
         ) 
         ) 
        )); 

以下是我打印查询结果时得到的错误。

enter image description here

回答

0

我对以前的解决方案很抱歉,我一直在寻找在meta_query直接没有意识到你的实际意图。

所以把它包起来,你想列出升序排列的所有名称。这可以不使用meta_query

我不确定Last name作为存储在数据库中的属性名称。如果您仍遇到问题尝试重命名存储在数据库中的last_namelastname财产。随着扑通避免的规则命名包含空白的属性。

所以更新的解决方案:

  • 数组中取出meta_query项目。
  • orderby值更新到Last name

WP_Qeury初始化如下:

$connected = new WP_Query(array(

    'connected_type' => 'posts_to_pages', 
    'connected_items' => get_queried_object(), 
    'nopaging' => true, 
    'post_type' => 'attorney', 
    'attorney_category'=> 'partner', 
    'post_status' => 'publish', 
    'posts_per_page' => -1, 
    'caller_get_posts'=> 1, 

    'orderby' => 'Last name', // Again I'm not sure about this `Last name` as an property-name 
    'order' => 'ASC' 
)); 
+0

但在数据库中的表已被任命为姓。所以meta_value必须是姓氏对吗? – Shravan

+0

什么是错误?对不起,我不能看到它,因为我已经写了这段代码看wordpress文档。 – Shravan

+0

我想要的整个值的列表,而不是一个特定的。 ,所以我还需要添加在meta_query的“价值”的关键? – Shravan