我正在使用 Timber 作为模板引擎(Wordpress 的树枝)在 Wordpress 网站上工作。我想通过 PoEdit 使用 Wordpress gettext 机制翻译界面(使用 xgettext)。
模板片段:
<form action="/{{ current_language }}/api/search/{{ viewModel.currentSuperCategory.key }}"
method="post"
class="search-results__search"
id="search-form">
<input placeholder="{{ __('City, region, ZIP', text_domain) }}…"
class="input search-results__search__input"
name="search-query"
type="text"
data-search-autocomplete />
我正在使用 PoEdit 从 *.twig 文件中提取字符串。
如果我将{ { __('City, region, ZIP', text_domain) }}放在模板中的单独行上,它就可以工作,但是当放在输入占位符中时它不起作用,如上面的代码片段所示。
我按照此处的说明配置了 PoEdit:https ://github.com/jarednova/timber/wiki/Text-Cookbook#generating-po-files-using-poedit
有人知道为什么会这样吗?xgettext 是否忽略 HTML 属性中的字符串?
另一个例子:
在以下情况下,将提取字符串进行翻译:
<i class="fa fa-envelope"></i>
{{ __('Search subscription', text_domain) }}
{{ __('Save free search subscription', text_domain) }}
但不是在以下情况下:
<i class="fa fa-envelope"></i>
<span data-rt-xs="{{ __('Search subscription', text_domain) }}" data-rt-lg="{{ __('Save free search subscription', text_domain) }}"></span>