You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用过滤器修改Dokan多供应商插件中的店铺名称?

解决方案

你之前使用的the_author过滤器是用来修改文章作者的显示名称,和商家店铺名称无关,所以无法实现你的需求。针对不同场景,对应的解决方案如下:

1. 基于WooCommerce的商家店铺名称

如果你的店铺是基于WooCommerce搭建的,官方提供了专门的过滤器来修改店铺名称:

function modify_woocommerce_store_name( $store_name ) {
    return $store_name . '-test';
}
add_filter( 'woocommerce_store_name', 'modify_woocommerce_store_name', 10, 1 );

这个过滤器会作用于所有前端显示店铺名称的场景(比如店铺页眉、商家资料页等)。部分场景下也可以用woocommerce_get_store_name,但前者的通用性更强。

2. 其他电商插件场景

如果你用的是Easy Digital Downloads这类其他电商插件,需要查看对应插件的官方文档,找到店铺名称输出对应的过滤器。比如EDD中通常会有edd_store_name这类钩子,用法和上述示例类似。

3. 自定义字段存储的店铺名称

如果店铺名称是你通过自定义用户字段添加的,你可以先给自己的字段输出逻辑注册一个自定义过滤器,再进行修改:

// 封装店铺名称获取逻辑并添加自定义过滤器
function get_store_name_for_user( $user_id ) {
    $store_name = get_user_meta( $user_id, 'store_name', true );
    // 注册自定义过滤器
    return apply_filters( 'custom_user_store_name', $store_name, $user_id );
}

// 使用过滤器修改店铺名称
function modify_custom_store_name( $store_name, $user_id ) {
    return $store_name . '-test';
}
add_filter( 'custom_user_store_name', 'modify_custom_store_name', 10, 2 );

之后在需要显示店铺名称的地方调用get_store_name_for_user()即可。

内容的提问来源于stack exchange,提问作者K1-Aria

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 11:40:28