Php 如何创建没有相应页面的grav表单

Php 如何创建没有相应页面的grav表单,php,html,forms,grav,Php,Html,Forms,Grav,我的页脚中有一个联系人表单,它将显示在所有页面上。我该怎么做?文档认为我总是有一个特定的页面负责表单。 表单当前在twig中的外观如下所示: <form method='POST'> <label for='name'>{{ "o.footer.form.name"|t }}</label> <input type='text' id='name' name='name' required=

我的页脚中有一个联系人表单,它将显示在所有页面上。我该怎么做?文档认为我总是有一个特定的页面负责表单。 表单当前在twig中的外观如下所示:

        <form method='POST'>
            <label for='name'>{{ "o.footer.form.name"|t }}</label>
            <input type='text' id='name' name='name' required='required'/>
            <label for='email'>{{ "o.footer.form.email"|t }}</label>
            <input type='text' id='email' name='email'/>
            <label for='phone'>{{ "o.footer.form.phone"|t }}</label>
            <input type='tel' id='phone' name='phone'/>
            <label for='message'>{{ "o.footer.form.message"|t }}</label>
            <textarea id='message' name='message'></textarea>
            <input type='submit' value="{{ "o.footer.form.submit"|t }}"/>
        </form>

{{“o.footer.form.name”{t}
{{“o.footer.form.email”{t}
{{“o.footer.form.phone”{t}
{{“o.footer.form.message”{t}

自的最新版本以来,您就可以这样做了

只需创建一个定义了表单的页面,然后从其他页面调用它,例如:

{% include "forms/form.html.twig" with {form: forms( {route: '/newsletter-signup'} ) } %}

更多信息:

谢谢!该页面应该/可能被命名为
form/default.md
,而不是定义路由,您可以直接按名称来调用它。我遇到了类似的问题,并考虑使用user/config/site.yaml文件添加一个表单
表单联系人
。然后我用
{%include'forms/form.html.twig'和{form:site.forms['form-contact']}%}
从我的base.html.twig模板调用这个表单,但我想知道这是否是一个糟糕的做法。那么,人们要解决这个问题的方法是创建一个不可见的表单页面吗?诚然,你可以将表单放在任意一个页面的frontmatter中,但最好将表单放在某个独特的地方。然而,我不确定@arkhi的想法是否是好的实践。