首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >重命名鼻涕虫标签

重命名鼻涕虫标签
EN

WordPress Development用户
提问于 2019-07-25 08:09:41
回答 1查看 554关注 0票数 0

在我的自定义post类型中,有一个具有通常标题、段塞和描述字段的自定义分类法。

我希望最终用户不理解代码段塞是为了什么,在我的例子中,它需要是一个语言代码,例如en_GB,所以我只想重命名弹格标签,而不是读“语言代码”。

我可以重命名自定义分类法的鼻涕虫标签吗?

EN

回答 1

WordPress Development用户

回答已采纳

发布于 2019-07-25 15:11:42

正如SallyCJ所提到的,gettext实际上是您使用它的唯一选项,因为段塞标签是在WordPress核心中硬编码的。

https://core.trac.wordpress.org/browser/tags/5.2/src/wp-admin/edit-tags.php#L439

下面是我编写和测试的一个片段,它应该适用于您,它将只在后端上运行,并且只运行在您将看到并希望更改段塞的两个页面上:

代码语言:javascript
运行
复制
add_action('current_screen', 'current_screen_callback');

function current_screen_callback($screen) {

  // Put some checks and balances in place to only replace where and when we need to
  if(
    is_object($screen) &&
    ($screen->base==='edit-tags' || $screen->base==='term') &&
    $screen->taxonomy==='custom_tax_slug'){
        add_filter( 'gettext', 'change_out_slug_labels', 99, 3 );
  }
}

function change_out_slug_labels($translated_text, $untranslated_text, $domain){

  if(stripos( $untranslated_text, 'slug' )!== FALSE ){
      $translated_text = str_ireplace('Slug', 'Language Code', $untranslated_text);
  }

  return $translated_text;
}

current_screen是一个管理唯一的钩子,所以只在后端调用交换您需要的东西。我取出了change_out_slug_labels()函数,以便您可以在需要时在前端使用它。

希望这能帮上忙!

票数 2
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/343646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档