问题标签 [grav]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
617 浏览

grav - grav 模块化页面 - 单独的内容和侧边栏

我想在 Grav 中创建一个页面,其中有一个内容区域和一个侧边栏区域。

我想在 modules.md 根模板上使用,我在其中引用了一个循环并显示内容和侧边栏模块的模板。

我的问题是:如何区分内容和侧边栏?

我的模板如下所示:

我试图实现的是在两个 page.collections 上使用过滤器,以便在一种情况下只使用“内容”(我在这里猜测 taxonomy.tag),而在另一种情况下只使用侧边栏。我可以接受命名约定(侧边栏模块有一个固定的前缀),但我想不通。

0 投票
1 回答
38 浏览

.htaccess - 在应该给出 404 的 URL 上得到 200

我刚刚在意大利面扫描仪上通过了我用 Grav 制作的网站。

它列出了很多常用的文件和文件夹。我尝试了许多知道这些文件和文件夹在我的网络服务器上根本不存在的人。

每个链接(如https://example.com/node.xml.zip)都会给出一个 HTTP 200 并显示我的主页;它应该是404。

使用扫描仪发现真正的漏洞可能是 SEO 灾难和 4ss 中的痛苦……</p>

.htaccess直接在域名上使用默认文件。

我错过了什么吗?

问候

0 投票
1 回答
43 浏览

twig - 在树枝中生成自举行

我有这样的重力内容:

??BEGIN??我的目标是在和??END??动态之间生成引导行

例如像这样:

它怎么能在我的 TWIG 模板中?

0 投票
2 回答
75 浏览

php - 将数据从一页(CMS)发送到子域(平台)

我希望你能帮助我,或者至少给我一些解决方案的建议。

背景:我们有一个包含一般信息的重力 CMS 站点、一个博客等(example.com)。在子域(用 Ruby(后端)和 Angular(前端)创建的 test.example.com)上,我们有一个完全开发的双面平台。

问题:我需要在 example.com 上创建一个特定的登录页面。此登录页面必须包含一个注册表单,我需要能够在其中读取子域上输入的数据。

例如:example.com/landing-page1 有一个包含电子邮件、用户名和密码的表单。test.example.com 是一个完全开发的平台,具有注册流程。在 example.com 上提交表单时,它应该打开一个带有 test.example.com/sign-up 的新窗口,从中读取来自 example.com 上的表单的数据。

如我所见,最好的解决方案是创建一个 cookie,它可以从 test.example.com 读取。那可能吗?

据我了解,要在 Grav 中执行此操作,我需要创建一个可以创建此 cookie 的插件,然后我需要修改平台以便它可以从 cookie 中读取。我认为我也需要实施 CORS 来做到这一点。

非常感谢任何建议或帮助。

0 投票
0 回答
249 浏览

twig - Grav CMS:在调试栏中从原生 PHP 输出消息

我正在开发一个自定义 Twig 过滤器,它将您的图像调整为设定的宽度(和自动高度)。

到目前为止它工作得很好,但是当页面的顺序改变时我遇到了一些错误。我想使用 Grav Debug Bar 进行调试,因为它非常方便并且保持代码干净。

在 Twig 中,您可以简单地使用{{ dump(message) }}.
不幸的是,调整大小的过程发生在原生 PHP 内部,所以我需要一种将消息从 PHP 输出到 Grav Debug Bar 的方法
文档中所述,您可以使用$grav['debugger']->addMessage($this).

这在调用 resize Twig 过滤器时会引发错误:

为什么变量$grav未定义?

0 投票
0 回答
360 浏览

nginx - Grav CMS 的出牙问题

我已按照此处运行 Nginx 的 Ubuntu 16.04 服务器安装 Grav + Admin 的说明进行操作,并按照https://learn.getgrav.org/webservers-hosting/servers/nginx的说明配置+重新启动 Nginx 服务器。

然后我浏览到https://example.com/根文件夹中安装 Grav 的位置。在完成创建管理员用户的过程后,Grav 向我显示了管理仪表板,但有用于维护、统计等的空面板,每个面板都显示一个微调器。检查控制台日志,我发现了 404 错误

vendor.min.js确实存在于上述文件夹中,并且admin.min.js?04b9d8febd根据我的 Chrome 调试器控制台的网络选项卡上的信息正确加载了它的表亲。

我遇到了权限问题,所以我暂时chmod'd将 Grav 文件夹递归到 777,所以我怀疑那里有问题。

我在这里做错了什么?


检查我的/etc/nginx/sites-available/default文件后,我发现它还具有以下内容

删除这些行并重新启动服务器“修复”了问题,但显然不是解决方案。我对 nginx 配置指令的理解相当有限。我需要在这里更改什么以便 vendor.min.js 不会被阻止?

0 投票
2 回答
576 浏览

templates - 通过 Twig 解析和使用列表项内容

我正在尝试使用 Grav 来创建我的下一个网站。我能够做的一件事是使用Grav frontmatter中提供的数据构建一个无序列表,该数据来自使用该模板的 Grav 页面。这是我试图做到这一点的方法

然后在模板中以某种方式执行以下操作

但是,Twig 不喜欢这样,并按照以下方式报告错误

Twig_Error_Syntax 哈希键必须是带引号的字符串、数字、名称或括在括号中的表达式(值“{”的意外标记“标点符号”。

违规行是我的{% set items = ... }陈述。我显然在这里做错了什么,但我是 Twig 新手,所以我看不到那可能是什么。

0 投票
0 回答
343 浏览

twig - Grav cms 树枝模板中的多个块

我正在从静态 html 制作 Grav 模板。这是一个单页机,所以我使用模块化模板和内容。问题是我有一个画廊,我点击一个图像,弹出一个模式。模态的代码位于我用于图片库的容器之外。

有没有办法让树枝模块化模板在基本模板的两个不同位置创建输出代码?我曾尝试在模块化模板中使用多个块,但在最终输出中,所有代码都放在图片库容器内吗?我的模板有多层嵌套只是为了让它更容易一点:

  • 主要的
    • 类别列表
      • 每个类别的图像列表

base.html.twig(简化):

模块化.html.twig:

category-list.html.twig(简体):

内容模板(简化):

我的问题:从基本模板中的块模式中的内容模板渲染块模式。目前,块模式呈现在块内容中。

有任何想法吗?

谢谢

0 投票
2 回答
204 浏览

content-management-system - Grav CMS 页面名称

我已经用Grav进行了几天的试验,发现它对于只使用过 WordPress 的人来说是一股真正的新鲜空气。然而,有一件事情让我很困扰。Grav 使用的文件夹结构驱动的平面文件页面层次结构很容易得到如下所示的文件夹结构

问题就在于此。我更喜欢通过 SFTP 在 Visual Studio Code 中编辑我的 markdown,而不是在 Grav 管理面板中。但是,这意味着我最终可能会同时打开多个 default.en.md 文件,这是一场等待发生的灾难。是否可以将降价文件重命名为更合乎逻辑的名称?

0 投票
0 回答
72 浏览

symfony - YAML 文件的 Symfony 导入丢失位咀嚼指标

我正在使用 Grav CMS 的插件和 symfony/twig 来导入具有以下内容的 yaml 文件:

我正在创建一个数组,然后使用yaml_emit它来导入完整的 YAML 文件:

这在大多数情况下都有效。但是,在网页上,导入的文件在渲染时没有>-“元数据”字段的块 chomping 指示符,因此它被渲染为:

如何确保不删除块咀嚼指示器?