我通常将语言文件存储在/languages
位于主题文件夹中的文件夹,也是WordPress推荐的位置。然而,它看起来仍然不是最好的解决方案,因为主题更新后文件将被覆盖。
load_theme_textdomain
函数允许指定不同的位置,我一直在考虑将languages文件夹放在/uploads
文件夹,以防止主题更新后覆盖。该文件夹将在主题激活后立即创建,语言文件将复制到那里。
我的问题是,你认为这是一个很好的解决方案,还是有一个更好的方法我错过了?
我很感激你对这件事的洞察力。
最合适的回答,由SO网友:Mayeenul Islam 整理而成
如果您使用自己的主题,无需担心,因为/languages
文件夹在您的控制下。:)
其他人的主题
但是你关心的是其他人的主题,你想把你的翻译应用到这个主题中,那么最好的方法就是
Child Theme. 因为你实际上是在修改这个主题。制作语言文件并将其放入子主题
/languages/
文件夹,仅此而已。
如果父主题已准备好翻译,它将捕获所有内容。但如果不是,那么functions.php
并显示翻译文件的路径:
load_theme_textdomain( \'theme-textdomain\', get_stylesheet_directory() . \'/languages\' );
请注意
get_stylesheet_directory()
在这里,这是因为我们正在显示活动主题的路径。:)