- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
问题
正如我在 Timber 文档中看到的那样,可以添加多语言支持,例如 this :
// Set language to French
putenv('LC_ALL=fr_FR');
setlocale(LC_ALL, 'fr_FR');
// Specify the location of the translation tables
bindtextdomain('myAppPhp', 'includes/locale');
bind_textdomain_codeset('myAppPhp', 'UTF-8');
// Choose domain
textdomain('myAppPhp');
{% trans "Hello World!" %}
{% trans string_var %}
{% trans %}
Hello World!
{% endtrans %}
问题是,像这样我有一个静态站点——它将被翻译成法语,但我无法从 wp-backend 向它添加多语言内容。因此,我确信有一种更好的方法可以通过使用 Timber 编写的 WordPress 主题来实现多语言支持。
问题
我想知道用 Timber 构建 WordPress 主题并实现多语言支持的最佳和最可靠的方法是什么。
有什么最佳实践吗?
最佳答案
多语言 WordPress 是一个关于如何做到最好的话题仍然存在很多争论。因此,目前可能没有最好和最可靠的方法来做到这一点。
在 Timber 中使用多语言与构建普通 WordPress 主题时的处理方式并没有什么不同。请注意,Timber 与 Twig 不同。 Timber 使用 Twig,它是一个模板引擎,可以更轻松地将数据和逻辑与显示 (HTML) 关注点分开。因此,如果您想了解如何添加多语言支持,您首先要了解如何以 Timber/WordPress 的方式进行。您可能不需要 Twig’s i18n Extension 提供的任何功能,您迈出了第一步。
阅读关于 Multilingual WordPress 的法典页面开始。
如果您想翻译从数据库中提取的内容,您可能需要使用插件。我自己使用的流行的有:
当您安装了其中一个并且准备好多种语言的内容后,您就可以开始了。你真的不需要改变你的主题中的任何东西来使基础工作。添加语言切换器或链接到菜单外的其他帖子有点不同。在那里你必须引用你将要使用的插件的文档。
如果您的主题中有静态字符串并且您也想翻译,您将不得不考虑添加internationalization (i18n)。到你的主题。
从 Timber 版本 1.x 开始,您可以使用大部分 common translation functions就在你的 Twig 文件中。关于internationalization in the Timber Docs的指南.
关于php - 具有多语言支持的 Timber 和 WordPress 的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36977729/
当我尝试在我的 Android 应用程序中使用 stetho-timber 库时,我遇到了这个问题: Error:Module 'com.facebook.stetho:stetho-timber:1
考虑以下简单设置。 1 个 fragment 与 1 个 ViewModel: fragment class TestFragment : Fragment() { private val v
考虑以下简单设置。 1 个 fragment 与 1 个 ViewModel: fragment class TestFragment : Fragment() { private val v
我听说了 Timber正在阅读 github README,但它悄悄地让我感到困惑。 Behavior is added through Tree instances. You can install
我目前为我的博客页面设置了类别下拉过滤器。这可以在类别页面之间切换,但是,我很难让下拉框显示事件类别。 这是我的 archive.php 文件中的内容 $context['categories'] =
假设我想为我的逻辑的每个部分开发一个具有不同记录器的应用程序,即一个用于常见消息的 ConsoleLogger 和一个用于远程通信的 HttpLogger。 我看到 Timber 允许您创建从 Tim
我正在开发一个使用开源库的 Android 应用程序,该库又使用 Timber . (不要与 Timber 混淆。)Timber 包含一些自定义 lint 检查,并且库将它们“泄漏”到我的项目中。起初
我有用于日志记录和与崩溃报告服务合作的 Timber 库,我的应用程序中有 Crashlytics 和 Loggly 服务。 因此,我不得不种两棵树: Timber.plant(new Crashly
当 DebugTree 记录时,我看到类名,但是当我创建自定义树时,标记为 null。这是我的自定义树的样子: public class CrashlyticsTree extends Timber.
是否可以使用 Timber 库记录当前行号和方法名称? 预期的 LogCat 结果: ismaeldivita.myapp I/[L:22] [M:onResume] [C:HomeActivity]
我正在深入研究 WordPress 和 Timber,我遇到了一个我无法解决的问题。 我创建了一个名为“project”的自定义帖子类型,我在其中创建了一个名为“project_category”的自
在 Timber 中就是这个函数 {{post}} 从哪里得到类似的东西 {{post.post_title}} 但 WordPress 中还有其他功能,例如 get_the_permalink();
我最近接管了使用 Timber(我并不熟悉)的 Wordpress 网站的开发工作。我正在尝试使用一个新的插件和附带的短代码,这当然不起作用。 我已经研究了几个小时,但似乎没有一个简单的答案。为了使用
Log.i("Test", "Hello, Log") Timber.i("Hello, Timber") 我可以在调试控制台和 Logcat 中看到 Log.i 登录,但在任何地方都看不到 Timb
我想象对 Timber 的支持非常薄弱,但也许我的问题可能与 Twig 有关,甚至只是最佳 php 实践? 我正在使用 ACF 在页面上列出一组帖子。除了通常的详细信息(标题、内容等...),我还想显
就像标题一样,我正在尝试从附加到分类的自定义字段中获取图像。我目前有一个称为城市的分类法,该术语类似于新墨西哥州的阿尔伯克基。我用 ACF 创建了一个图像自定义字段('city_hero_image'
我正在使用 Timber 创建一个非常基本的 Wordpress 主题。 我被困住了。 我想在主题中创建小部件区域,但我无法弄清楚。 我已尝试按照此页面上的说明创建动态小部件 - https://gi
我的应用执行很多后台任务,但 Activity 很少,而且大部分工作都是在后台完成的。 假设我将 timber 和 Crashlytics 添加到我的应用中。我如何才能确保在设备上更新应用程序时,ti
我正在尝试为 Android 编写一个 kotlin 库,但不能包含木材。我总是收到以下错误: Error:error: unresolved reference: timber 我的 build.g
在我的 Single.php 中,我正在尝试获取当前的帖子类别别名: $category = get_category(get_query_var('cat')); $cat_slug = $cate
我是一名优秀的程序员,十分优秀!