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 在Woocommerce单一产品页面上显示Dokan供应商名称和总销售额_Php_Wordpress_Woocommerce_Vendor_Dokan - Fatal编程技术网

Php 在Woocommerce单一产品页面上显示Dokan供应商名称和总销售额

Php 在Woocommerce单一产品页面上显示Dokan供应商名称和总销售额,php,wordpress,woocommerce,vendor,dokan,Php,Wordpress,Woocommerce,Vendor,Dokan,使用Woocommerce和Dokan插件。我试图在单个产品页面上的“供应商信息”选项卡上显示供应商名称和总销售额(用于客户信任) 基于“)”问题线程,我尝试使用以下代码显示供应商名称和总销售额: //show vendor total sales add_action( 'woocommerce_single_product_summary', 'show_total_sales', 20 ); function show_total_sales() { printf( '&l

使用Woocommerce和Dokan插件。我试图在单个产品页面上的“供应商信息”选项卡上显示供应商名称和总销售额(用于客户信任)

基于“)”问题线程,我尝试使用以下代码显示供应商名称和总销售额:

//show vendor total sales
add_action( 'woocommerce_single_product_summary', 'show_total_sales', 20 );
function show_total_sales() {    
    printf( '<b>Seller Name:</b> <a href="%s">%s</a>', dokan_get_store_url( $author->ID ), $store_info['total_sales'] );
}
//显示供应商总销售额
添加行动('woocommerce\u single\u product\u summary','show\u total\u sales',20);
函数show_total_sales(){
printf('Seller Name:',dokan_get_store_url($author->ID),$store_info['total_sales']);
}

但它不起作用。如何使其工作?

以下内容应显示单个产品页面上的供应商名称和总销售额:

// Display vendor total sales
add_action( 'woocommerce_single_product_summary', 'show_total_sales', 20 );
function show_total_sales() {
    global $product;

    $vendor_id   = get_post_field( 'post_author', $product->get_id() ); // Get the author ID (the vendor ID)
    $vendor      = new WP_User($vendor_id); // Get the WP_User object (the vendor) from author ID

    $store_url   = dokan_get_store_url( $vendor_id );  // Get the store URL
    $store_info  = dokan_get_store_info( $vendor_id ); // Get the store data
    $store_name  = $store_info['store_name'];          // Get the store name

    // Output display
    printf( '<p><strong>%s:</strong> <a href="%s">%s (%s %s)</a></p>', 
        __("Seller Name", "woocommerce"), 
        dokan_get_store_url( $vendor_id ),
        $vendor->display_name,
        $store_info['total_sales'],
        _n( "sale", "sales", $store_info['total_sales'], "woocommerce" )
    );
}
//显示供应商总销售额
添加行动('woocommerce\u single\u product\u summary','show\u total\u sales',20);
函数显示总销售额(){
全球$产品;
$vendor\u id=get\u post\u字段('post\u author',$product->get\u id());//获取作者id(供应商id)
$vendor=new WP_User($vendor_id);//从author id获取WP_用户对象(供应商)
$store\u url=dokan\u get\u store\u url($vendor\u id);//获取商店url
$store\u info=dokan\u get\u store\u info($vendor\u id);//获取存储数据
$store\u name=$store\u info['store\u name'];//获取店铺名称
//输出显示
printf(“%s:”,
__(“卖方名称”、“woocommerce”),
dokan_get_store_url($vendor_id),
$vendor->display\u name,
$store_info[“总销售额”],
_n(“销售”、“销售”、“门店信息”[“总销售额”],“woocommerce”)
);
}
代码进入活动子主题(或活动主题)的function.php文件。现在应该可以了



有关自定义产品选项卡,请参见

我正在使用dokan插件。我想在侧边栏显示供应商信息购物车。我使用了你的代码并进行了一些UNP更新。它在下面的代码中。但我想显示更多有关供应商的信息,如徽标、评级、供应商页面按钮等

以下是我的结果:

/**
*在使用Elementor制作的单个产品页面上显示销售人
*通过单个产品页面上的短代码小部件添加短代码[dokan\u vendor\u name]
*/
添加快捷代码(“dokan\u供应商名称”、“dokan\u商店名称\u快捷代码”);
函数dokan\u store\u name\u shortcode(){
全球$产品;
$seller=get_post_字段('post_author',$product->get_id());
$author=get_user_by('id',$seller);
$vendor=dokan()->vendor->get($seller);
$store\u info=dokan\u get\u store\u info($author->ID);
如果(!empty($store\u info['store\u name'])){
?>

这是Loic方法的一个较轻版本,适用于那些只需要一个指向Dokan商店链接的短代码的人。你可以在单一产品页面上使用它

使用以下短代码:[供应商\店铺\名称]

在主题的Snippets或functions.php中输入以下代码。functions.php可以在主题文件ie.html/wp content/themes/[your_theme]/functions.php中找到

/*Shortcode [vendor_shop_name]*/
add_shortcode('vendor_shop_name', 'vendor_shop_name_function');
function vendor_shop_name_function() {
    global $product;
    $seller = get_post_field('post_author', $product->get_id());
    $author  = get_user_by('id', $seller);
    $vendor = dokan()->vendor->get($seller);
    $store_info = dokan_get_store_info($author->ID);
    
    if (!empty($store_info['store_name'])) {
        ?>
            <?php printf('<span><a href=" %s">%s</a></span>', $vendor->get_shop_url(), $vendor->get_shop_name()); ?>
        <?php
    }
}
/*快捷码[供应商\商店\名称]*/
添加快捷码('vendor\u shop\u name'、'vendor\u shop\u name\u function');
函数供应商\车间\名称\函数(){
全球$产品;
$seller=get_post_字段('post_author',$product->get_id());
$author=get_user_by('id',$seller);
$vendor=dokan()->vendor->get($seller);
$store\u info=dokan\u get\u store\u info($author->ID);
如果(!empty($store\u info['store\u name'])){
?>

谢谢你的帮助@loictheaztec。但我希望结果显示在这里,而不是这里。你能这样做吗?还有,我怎样才能在图片2中隐藏供应商地址,并在那里显示总销售额呢?@ladetunjiosibanjo我没有Dokan,也从来没有使用过它……我的代码工作正常,但我不知道如何在特定的Dokan部分显示ns.您需要找到正确的相关钩子,用正确的钩子替换
woocommerce\u single\u product\u summary