Grav CMS:如何根据条件 show/hide 部分页面?
Grav CMS: how to show/hide parts of the page depending on conditions?
Grav 的文档清楚地描述了 how a whole page or a folder could be hidden from unregistered users. It also describes how a whole page could be seen only by particular user groups。
但是 页面的片段 ,比方说,我想在某些条件下显示的一些链接或私人信息呢?
好的,对于注册用户,我在 Login plugin docs:
找到了一个片段
{% if grav.user.authenticated %}
content for registered users goes here
{% endif %}
但要扩大范围 - 我如何根据 PHP 代码中的某些自定义逻辑 show/hide 部分 特定页面,即不一定与用户相关?
我正在考虑 twig/shortcode 插件,例如:
{% if some.custom.condition.or.PHP.function %}
hidden content goes here
{% endif %}
或
[hidden_if_something] hidden content goes here [/hidden_if_something]
但不确定具体应该如何实施。因此,工作示例将不胜感激。谢谢。
Grav 文档中有一个配方here。这提供了一个示例,说明如何在 twig 模板中呈现 PHP 代码结果的输出。
在示例中,他们创建了一个插件,并实现了一个提供对 php 函数的访问的树枝扩展。然后他们可以像在树枝模板中一样简单地调用 php 函数。
{{ example() }}
按照该示例,您可以在 php 中实现您想要的任何逻辑,并在 twig if 语句中调用该函数。
{% if example() == true %}
your conditional output
{% endif %
Grav 的文档清楚地描述了 how a whole page or a folder could be hidden from unregistered users. It also describes how a whole page could be seen only by particular user groups。
但是 页面的片段 ,比方说,我想在某些条件下显示的一些链接或私人信息呢?
好的,对于注册用户,我在 Login plugin docs:
找到了一个片段{% if grav.user.authenticated %}
content for registered users goes here
{% endif %}
但要扩大范围 - 我如何根据 PHP 代码中的某些自定义逻辑 show/hide 部分 特定页面,即不一定与用户相关?
我正在考虑 twig/shortcode 插件,例如:
{% if some.custom.condition.or.PHP.function %}
hidden content goes here
{% endif %}
或
[hidden_if_something] hidden content goes here [/hidden_if_something]
但不确定具体应该如何实施。因此,工作示例将不胜感激。谢谢。
Grav 文档中有一个配方here。这提供了一个示例,说明如何在 twig 模板中呈现 PHP 代码结果的输出。
在示例中,他们创建了一个插件,并实现了一个提供对 php 函数的访问的树枝扩展。然后他们可以像在树枝模板中一样简单地调用 php 函数。
{{ example() }}
按照该示例,您可以在 php 中实现您想要的任何逻辑,并在 twig if 语句中调用该函数。
{% if example() == true %}
your conditional output
{% endif %