在Wordpress上搜索时如何包含元数据内容?

时间:2017-12-21 22:40:50

标签: php wordpress meta-boxes

我有一个Wordpress网站,上面有产品目录。每个产品都有一个UPC / SKU(标识号),使用这样的自定义元数据声明:

if(!class_exists('product_metabox') && class_exists('CCM_METABOX')){
class product_metabox extends CCM_METABOX{
    function __construct() {
        $metabox_data = array(
            'title'         => __('Product Data'),
            'post_type'     => array('product'),
            'fields'        => array(
                array(
                    'id'            => 'upc',
                    'type'          => 'text',
                    'label'         => __('UPC/SKU'),
                ),
            ),
        );
        parent::__construct('product_metabox', $metabox_data);
    }
}

$product_metabox = new product_metabox();
$product_metabox->init();

我添加了一个过滤器,只搜索产品,而不是搜索同一网页上的博客/帖子,过滤器是:

function searchfilter($query) {
if ($query->is_search && !is_admin() ) {
    $query->set('post_type',array('product'));
    }
    return $query;
}
add_filter('pre_get_posts','searchfilter');

在按ID / SKU元数据搜索时,如何在结果中包含产品?例如,我有一个带有UPC“CM-5674”的“白色钱包”,如果我搜索“钱包”,结果会显示白色钱包,但如果我输入CM-5674(UPC),它就不会显示该产品。

0 个答案:

没有答案