Pelican i18n 子站点菜单项覆盖
Pelican i18n subsites menu items override
我正在使用 Pelican and the i18n subsites plugin 构建静态站点。
根据我的理解,您可以使用此插件覆盖 pelicanconf.py 中的设置,但我认为我的做法不起作用。
Pelicanconf.py:
I18N_SUBSITES = {
'nl': {
'SITENAME': 'Robin Berghuijs Design',
'INDEX_SAVE_AS': 'nieuws.html',
'MENUITEMS': [
('Nieuws','nieuws.html'),
],
},
'en': {
'SITENAME': 'Robin Berghuijs Design',
'INDEX_SAVE_AS': 'news.html',
'MENUITEMS': [
('News','news.html'),
],
}
}
Index.html 输出:
<nav id="menu"><ul>
<li><a href="./pages/contact.html">Contact</a></li>
</ul></nav><!-- /#menu -->
base.html 模板:
{% for title, link in MENUITEMS %}
<li><a href="{{ link }}">{{ title }}</a></li>
{% endfor %}
我在网站生成时没有收到任何错误。 More detail here.
运行 鹈鹕与 --debug gives this.
事实证明,i18n 子站点插件正在创建两个新站点,旧站点留在输出文件夹中。所以在 output/
中有一个站点,在 output/nl/
中有一个站点,在 output/en/
中有一个站点。在荷兰语 i18n 子站点设置中添加 DELETE_OUTPUT_DIRECTORY = True
和 'OUTPUT_PATH': '',
解决了这个问题。
我正在使用 Pelican and the i18n subsites plugin 构建静态站点。
根据我的理解,您可以使用此插件覆盖 pelicanconf.py 中的设置,但我认为我的做法不起作用。
Pelicanconf.py:
I18N_SUBSITES = {
'nl': {
'SITENAME': 'Robin Berghuijs Design',
'INDEX_SAVE_AS': 'nieuws.html',
'MENUITEMS': [
('Nieuws','nieuws.html'),
],
},
'en': {
'SITENAME': 'Robin Berghuijs Design',
'INDEX_SAVE_AS': 'news.html',
'MENUITEMS': [
('News','news.html'),
],
}
}
Index.html 输出:
<nav id="menu"><ul>
<li><a href="./pages/contact.html">Contact</a></li>
</ul></nav><!-- /#menu -->
base.html 模板:
{% for title, link in MENUITEMS %}
<li><a href="{{ link }}">{{ title }}</a></li>
{% endfor %}
我在网站生成时没有收到任何错误。 More detail here.
运行 鹈鹕与 --debug gives this.
事实证明,i18n 子站点插件正在创建两个新站点,旧站点留在输出文件夹中。所以在 output/
中有一个站点,在 output/nl/
中有一个站点,在 output/en/
中有一个站点。在荷兰语 i18n 子站点设置中添加 DELETE_OUTPUT_DIRECTORY = True
和 'OUTPUT_PATH': '',
解决了这个问题。