【问题标题】:Symfony NelmioAPIDocBundle: Remove Logo Header?Symfony NelmioAPIDocBundle:删除徽标标题?
【发布时间】:2021-12-04 10:24:08
【问题描述】:

是否可以删除 NelmioApiDocBundle 的基于 Web 的输出中显示的徽标标题?如果有,怎么做?

我想在现有网站中包含此端点的输出(/api/doc,如果您使用的是默认设置)。但是,该站点已经有一个标题,并且添加第二个标题将是一个糟糕的用户体验恕我直言。但我在documentation 中找不到任何地方描述如何排除这个光荣的 1990 年代风格的网页设计。

我在下面提供了默认配置的屏幕截图,这是我在 Insomnia 等工具中查看文档时得到的。如您所见,绿色页眉在滚动时覆盖了页面。

【问题讨论】:

  • 如果你想隐藏这个标题,我想你可以使用CSSjavascript

标签: php symfony nelmioapidocbundle


【解决方案1】:

是的,你可以做到。

您应该覆盖捆绑模板,步骤如下:

1 - 在 'templates/bundles/NelmioApiDocBundle/SwaggerUi/index.html.twig' 中创建模板文件

2 - 将内容放在下面:

{% extends '@!NelmioApiDoc/SwaggerUi/index.html.twig' %}

{% block header %}
    <a style="text-decoration: none;" id="logo" href="#" target="_blank">
        <h1 style="color: black">You personal title</h1>
    </a>
{% endblock %}

就是这样,我们完成了

【讨论】:

    【解决方案2】:

    我现在已经测试了@Abdelhak-ouaddi 提供的答案,虽然它是正确的,但我意识到我没有足够清楚地提出问题来获得我需要的答案。提供的答案确实适用于更改绿色标题的 CONTENTS,但它不会完全删除标题。

    有关如何自定义树枝模板的详细信息,请参阅 NelmioApiDocBundle GitHub 页面上的 this page。实际的默认模板位于 repo here

    我发现您可以轻松地覆盖{% header %} twig 块以更改标题的内容作为接受的答案状态,但由于{% header %} 标签是INSIDE @987654327 @HTML 标记,这样做并不能完全删除标题。

    为了删除 ENTIRE 标头,您需要按照已接受答案中的步骤操作...但不要只覆盖 {% header %} 块,而是粘贴 index.html.twig 文件的全部内容。然后,彻底删除&lt;header&gt; HTML 标签和其中的所有内容(包括{% header %} twig 标签)。


    作为额外的功劳:完全删除页眉会在页面标题上方留出很大的空白。您可以通过将新 index.html.twig 文件中的 &lt;body&gt; 标记调整为:

    &lt;body style="margin: 0px;"&gt;

    我确信有一种更简洁的方法可以做到这一点,但是……那是另一张票。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-19
      • 2021-09-17
      • 1970-01-01
      • 2023-03-24
      • 2021-09-30
      • 2018-05-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多