gpt4 book ai didi

python - 如何在当前页面的 Pelican 站点顶部生成所有语言的链接(文章)

转载 作者:太空狗 更新时间:2023-10-30 01:22:09 25 4
gpt4 key购买 nike

您好,我正在使用 Pelican/Python 构建一个小型静态多语言网站。

使用 i18n_subsites 插件,我可以在我的网站顶部添加显示其他可用语言的语言按钮。

有没有办法指定这些语言按钮上的链接到当前页面(文章)的翻译?不是主页?最好保持在同一页面(文章)上。

如有任何帮助,我们将不胜感激。

最佳答案

可能对其他人有用。

这是一个诱人的问题。非常感谢 smartass101

你可以这样做:

{% if lang_siteurls %}
{% for lang, url in lang_siteurls.items() %}
<li{% if lang == DEFAULT_LANG %} class="active"{% endif %}>
<a href={% if article and lang != DEFAULT_LANG %}"{{ SITEURL }}/{{ article | extract_trans(lang, url) }}"
{% elif article %}"{{ SITEURL }}/{{ article.url }}"
{% elif page and lang != DEFAULT_LANG %}"{{ SITEURL }}/{{ page | extract_trans(lang, url) }}"
{% elif page %}"{{ SITEURL }}/{{ page.url }}"
{% else %}"{{ url }}"{% endif %}>{{ lang }}</a></li>
{% endfor %}
<!-- separator -->
<li style="background-color: white; padding: 5px;">&nbsp</li>
{% endif %}

过滤器定义为

def extract_trans(article, lang, url):
for trans in article.translations:
if trans.lang == lang:
return trans.url
return url

并包含使用 JINJA_FILTERS 设置。此代码适用于所有页面和文章,但存档除外。

关于python - 如何在当前页面的 Pelican 站点顶部生成所有语言的链接(文章),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25544861/

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