1

我正在尝试构建一个具有供应商角色的用户滑块,并尝试从 dokan 插件获取供应商 url,这是我试图为滑块循环中的每个供应商生成链接但它不起作用:

function store_query_filter( $query ) {
    global $wp_query;

    $author = get_query_var( $query->custom_store_url );

    if ( !is_admin() && $query->is_main_query() && !empty( $author ) ) {
        $seller_info  = get_user_by( 'slug', $author );
        $store_info   = dokan_get_store_info( $seller_info->data->ID );
        if ( !empty( $store_info['store_name'] ) ) { 

            $vendor_link = dokan_get_store_url( $store_info->ID ); 

            return $vendor_link; 
        }
    }
}

add_shortcode( 'store_vendor_url', 'store_query_filter' );
4

1 回答 1

3

我设法通过将其添加到 function.php 并注册短代码来解决它,

function get_store_url($atts){

    $a = shortcode_atts(
        array(
      'id' => '1',
   ), 
    $atts );
$seller_id  = get_user_by( 'id', $a['id'] );
$vendor = dokan()->vendor->get( $seller_id );

                return  $vendor->get_shop_url();
}
add_shortcode( 'store_vendor_url', 'get_store_url' );

现在我可以使用:

[store_vendor_url id="5"]

或者 :

[store_vendor_url id="[wpv-user field='ID']"]
于 2018-06-03T01:28:46.970 回答