Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 推送指定的作者';将产品添加到Wordpress/Woocommerce搜索结果的顶部_Php_Wordpress_Woocommerce - Fatal编程技术网

Php 推送指定的作者';将产品添加到Wordpress/Woocommerce搜索结果的顶部

Php 推送指定的作者';将产品添加到Wordpress/Woocommerce搜索结果的顶部,php,wordpress,woocommerce,Php,Wordpress,Woocommerce,在我的网站上,我有很多人在我的商业商店里销售产品。很多时候,我销售与我的供应商相同的产品,当人们使用搜索功能搜索产品时,我希望在查询中首先显示我的产品,然后再显示供应商的产品 我尝试使用“posts\u search\u orderby”钩子,但似乎什么都没有发生 add_filter( 'posts_search_orderby', function( $search_orderby ) { global $wpdb; return "{$wpdb->posts}

在我的网站上,我有很多人在我的商业商店里销售产品。很多时候,我销售与我的供应商相同的产品,当人们使用搜索功能搜索产品时,我希望在查询中首先显示我的产品,然后再显示供应商的产品

我尝试使用“posts\u search\u orderby”钩子,但似乎什么都没有发生

    add_filter( 'posts_search_orderby', function( $search_orderby ) {
    global $wpdb;
    return "{$wpdb->posts}.post_author LIKE '1' DESC, {$search_orderby}";
    });

你知道我能做什么吗?谢谢

我明白了。这是我给你的代码,未来也会有同样问题的人

    add_filter('posts_orderby','my_sort_custom',10,2);
function my_sort_custom( $orderby, $query ){
    global $wpdb;

    if(!is_admin() && is_search()) 
        $orderby =  $wpdb->prefix."posts.post_author ASC, {$wpdb->prefix}posts.post_date DESC";

    return  $orderby;
}
这对我来说很有用,因为我当然是我网站的第一作者,我是按作者编号升序组织的