gpt4 book ai didi

php - 使 Wordpress PHP 变量可翻译

转载 作者:搜寻专家 更新时间:2023-10-31 21:05:13 25 4
gpt4 key购买 nike

我再次有一个关于 WordPress 和 PHP 的问题。事实上,它并不完全与 WordPress 相关,但在这种情况下考虑它会使它更容易理解。

我开发了一个旨在使主题开发尽可能简单的框架。因此,我想让一个主题自动翻译。使用该框架的开发人员不必在每次将字符串传递到某处时都使用 __(...)。

问题是 PHP gettext 函数无法按设计处理变量。这真的很有意义,因为动态内容无法翻译,而且还需要翻译生成器不仅要解析,还要执行脚本文件——但在内容以某种方式固定的情况下(至少与PHP 中的字符串将是)。

以下是开发人员当前必须执行的操作的示例:

new EaseWidgetArea(
__('Notificationbar', 'themedomain'),
"notificationbar",
__("Top bar supposed to hold emergency information.", 'themedomain')
);

这是我的目标:

new EaseWidgetArea(
"Notificationbar",
"notificationbar",
"Top bar supposed to hold emergency information."
);

在 widget-area 最终注册的类方法中:

register_sidebar(
array(
'name' => __($this->name),
'id' => $this->id,
'description' = __($this->description),
'before_widget' => '<div class="widgetarea">',
'after_widget' => '</div>'
)
);

你知道有什么简洁方便的方法来完成这个任务吗?提前致谢!

最佳答案

我明白你想做什么,但你不能*这样解决你的问题:

new EaseWidgetArea(
"Notificationbar",
"notificationbar",
"Top bar supposed to hold emergency information."
);

然而,您可以做的是:

new EaseWidgetArea(
__("Notificationbar"),
__("notificationbar"),
__("Top bar supposed to hold emergency information.")
);

为此,您必须找到 __ 函数,这是 ``translate()` 的别名。位于 l10n.php .

在这种情况下,您可以根据需要自动进行翻译,这样做的另一个好处是,来自其他确实使用 __() 的开发人员的软件仍然会工作。

  • 永远不要说不能,对吗?然而,在这种情况下,这意味着您必须运行 Wordpress 中的每一个功能,这将花费您至少 2225 年的时间。

关于php - 使 Wordpress PHP 变量可翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33735420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com