首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Grav CMS页面名

Grav CMS页面名
EN

Stack Overflow用户
提问于 2017-11-17 16:25:50
回答 2查看 244关注 0票数 2

我已经用格拉夫做了几天的实验,对那些只使用过WordPress的人来说,这是一种真正的新鲜空气。然而,有一件事困扰着我。Grav使用的文件夹结构驱动的平面文件页层次结构可以很容易地得到如下所示的文件夹结构

代码语言:javascript
复制
01.home
 |
 --- default.en.md
     |
     01.sub-page-1
                 |
                  --- default.en.md
     |
     02.sub-page-2
                 |
                  --- default.en.md

问题就在这里。我更喜欢通过SFTP在Visual代码中编辑我的标记,而不是在Grav面板中。但是,这意味着我可以同时打开多个default.en.md文件,这将是一场灾难。是否可以将减价文件重命名为更符合逻辑的文件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-17 22:59:05

你真的可以。

默认情况下,grav从标记文件的名称中提取模板类型。但是,您可以通过在页面的YAML头中设置template变量来覆盖此行为。所以我们很容易就能得到这样的东西:

代码语言:javascript
复制
01.home
 |
 --- homepage.en.md
     |
     01.sub-page-1
                 |
                  --- home.subpage1.en.md

如果我们只是有一个标题

代码语言:javascript
复制
---
title: blah
template: default
...
---
票数 3
EN

Stack Overflow用户

发布于 2018-01-04 08:20:31

标记文件的名称指定要使用的模板。因此,在您的示例中,每个子文件夹中的所有页面都将使用位于default.html.twig文件夹中的templates/THEME_IN_USE/

我猜你已经从Grav的官方页面下载了基本模板。在这种情况下,默认的模板是反物质。您可以看到,在主题/内容中有一个名为default.html.twig的文件,因此应用了这个模板。但是,如果您将user/config/system.yaml中的主题设置为“我的主题”(而不是“反物质”),则可以定义您自己的default.html.twig (您自己的模板)。

因此,要回答您的问题,您可以为每个页面创建自己的模板,或者更好的是为类似的页面创建一个模板(比如博客文章)。你可能最终会有这样的结果。

代码语言:javascript
复制
pages
  01.home
   |
   --- default.en.md
       |
       01.blog-post
                   |
                    --- blog.en.md
       |
       02.contact
                   |
                    --- contact.en.md
themes
  my-theme
   |
    ...

    templates
        --- default.html.twig
        --- blog.html.twig
        --- contact.html.twig
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47355119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档