Wordpress - 从自定义帖子类型查询第一个和名称

Posted

技术标签:

【中文标题】Wordpress - 从自定义帖子类型查询第一个和名称【英文标题】:Wordpress - query first and name from custom post type 【发布时间】:2019-08-04 17:32:30 【问题描述】:

我想使用自定义帖子类型元框查询名字和姓氏。

我正在使用的代码:

$name = 'John Doe';

$args = array( 
    'post_type'     => 'customers',
    'post_status'   => array( 'publish', 'pending', 'draft' ),
    'numberposts'   => -1,
    'order'         => 'ASC',
    'orderby'       => 'meta_value',
    'meta_key'      => 'customer_first_name'
    'meta_query'    => array(
        'relation'      => 'OR',
        array(
            'key'           => 'customer_first_name',
            'value'         => $name,
            'compare'       => 'LIKE',
        ),
        array(
            'key'           => 'customer_last_name',
            'value'         => $name,
            'compare'       => 'LIKE',
        ),      
    ),  
);  

$customers = get_posts($args);

$num = count( $customers );

如果我只搜索“John”,就会显示结果。如果我搜索全名“John Doe”,则没有结果。这是为什么呢?

【问题讨论】:

【参考方案1】:

当然它不会显示任何结果,因为您没有拆分名字名字和姓氏。

$name = 'John Doe';
$parts = explode(" ", $name);
$first_name = $parts[0];
$last_name = (count($name) > 1) ? $name[count($name)-1]: $first_name;
$args = array( 
    'post_type'     => 'customers',
    'post_status'   => array( 'publish', 'pending', 'draft' ),
    'numberposts'   => -1,
    'order'         => 'ASC',
    'orderby'       => 'meta_value',
    'meta_key'      => 'customer_first_name',
    'meta_query'    => array(
        'relation'      => 'OR',
        array(
            'key'           => 'customer_first_name',
            'value'         => $first_name,
            'compare'       => 'LIKE',
        ),
        array(
            'key'           => 'customer_last_name',
            'value'         => $last_name,
            'compare'       => 'LIKE',
        ),      
    ),  
);  

$customers = get_posts($args);

$num = count( $customers );

与国际名称一样,如果姓氏为空,则姓氏也将使用名字。

【讨论】:

以上是关于Wordpress - 从自定义帖子类型查询第一个和名称的主要内容,如果未能解决你的问题,请参考以下文章

WordPress > 从自定义帖子类型获取自定义分类

WordPress - 无法从自定义帖子类型中的元框获取价值

Wordpress ACF 字段如何从自定义帖子类型中获取选项

Wordpress 从自定义帖子中删除永久链接但保留存档

如何通过分类术语从自定义 WordPress MySQL 查询中排除结果

用于显示距当前日期超过 8 个月的 WordPress 自定义帖子类型的自定义查询