如何覆盖readthedocs上的模板?

问题描述 投票:3回答:2

我最近将sphinx documentation for blowdrycss添加到readthedocs。

我想覆盖readthedocs上的layout.html模板。我当前的模板覆盖在localhost上工作正常,但在readthedocs上没有。该项目使用了Alabaster主题,扩展了基本主题。

项目目录结构可以看到here

相关部分是:

blowdrycss/
    docs/
        _templates/
            layout.html

        conf.py

conf.py中的模板设置:

templates_path = ['_templates']

layout.html的内容:

{% extends '!layout.html' %}


{% block sidebarsearch %}
    {{ super() }}
    <a href="https://flattr.com/submit/auto?user_id=nueverest&url=https%3A%2F%2Fgithub.com%2Fnueverest%2Fblowdrycss" target="_blank"><img src="http://button.flattr.com/flattr-badge-large.png" alt="Flattr this" title="Flattr this" border="0"></a>
{% endblock %}


{% block footer %}
    <div class="footer" style="text-align: center;">
        <a href="https://flattr.com/submit/auto?user_id=nueverest&url=https%3A%2F%2Fgithub.com%2Fnueverest%2Fblowdrycss" target="_blank"><img src="http://button.flattr.com/flattr-badge-large.png" alt="Flattr this" title="Flattr this" border="0"></a>
    </div>
    {{ super() }}
{% endblock %}

如何覆盖readthedocs上的layout.html模板?

更新我也尝试过:

相关部分是:

blowdrycss/
    docs/
        custom_templates/
            layout.html

        conf.py

conf.py中的模板设置:

templates_path = ['custom_templates']
python jinja2 python-sphinx read-the-docs
2个回答
2
投票

虽然readthedocs不会立即支持templates_path,但您可以使用带有模板的自定义主题。 http://sphinx-doc.org/theming.html

只需创建一个新的主题目录并将其添加到您的conf.py

html_theme = 'your_theme'
html_theme_path = ['.']

你可以在我的一个项目中看到一个例子:


© www.soinside.com 2019 - 2024. All rights reserved.