- Grav 插件
- Grav - 插件基础
- Grav - 插件教程
- Grav - 事件钩子
- Grav 管理面板
- Grav - 管理员介绍
- Grav - 管理员仪表盘
- Grav - 配置系统
- Grav - 站点配置
- Grav - 管理面板页面
- Grav - 页面编辑器选项
- Grav - 页面编辑器高级
- Grav 高级
- Grav - 蓝图
- Grav - 性能和缓存
- Grav - 调试和日志记录
- Grav - CLI
- Grav - GPM
- Grav - 开发
- Grav - 生命周期
- Grav - YAML 语法
- Grav - 表单
- Grav 托管
- Grav - 网站托管
- Grav 故障排除
- Grav - 服务器错误
- Grav - 权限
- Grav 有用资源
- Grav - 面试问题
- Grav - 快速指南
- Grav - 有用资源
- Grav - 讨论
Grav - 面试问题
亲爱的读者,这些Grav 面试问题专为帮助您熟悉在Grav主题的面试中可能遇到的问题类型而设计。根据我的经验,优秀的 interviewers 很少会提前计划在面试中问什么具体问题,通常问题会从主题的一些基本概念开始,然后根据后续的讨论和您的回答继续进行。
Grav 是一个基于平面文件的內容管理系统,它不使用数据库来存储内容,而是使用文本文件(.txt)或 Markdown(.md)文件来存储内容。
Grav 是一种新型的、速度极快的平面文件内容管理系统,发布和管理内容都更加容易。它允许开发人员通过将内容存储在文件中(例如文本或 Markdown 文件)而不是数据库中,来非常轻松地处理内容。如果您想构建一个简单、易于管理且快速的网站,最好选择 Grav 平面文件 CMS。它的成本低于数据库驱动的 CMS,并且在文件处理的 I/O 方面很有用,当您没有足够的资源来处理数据库时。
Grav 的功能包括:
它是一个快速、简单且强大的平面文件 Web 平台。
它用于构建网站,无需额外的工具或 HTML 知识。
它使用文本文件或 Markdown 文件来存储内容。
它不使用数据库,因此消除了造成瓶颈的原因。
它使用 Twig 提供的基于 PHP 的模板,该模板直接解析为 PHP,这使得它速度很快。
Grav 的优点包括:
它不是基于数据库的 CMS,因此非常易于安装,并且在您将文件上传到服务器后即可使用。
它使用 Markdown 文本文件来简化操作。使用它,内容将动态转换为 HTML 并显示在浏览器中。
在安全性方面,Grav 没有管理区域和数据库。因此,没有机会入侵帐户或数据库以访问重要数据。
您可以轻松地备份所有文件以保存网站的备份副本,因为没有数据库需要备份。
它是一款软件,不需要花费太多时间学习。
Grav 的缺点包括:
有时未经授权的用户可以直接从文件中访问您的内容,因为没有数据库来存储这些文件。
使用 Grav CMS 构建复杂的网站比较困难。
PHP 5.4 或更高版本
页面可以定义为站点的构建块。页面结合了内容和导航,即使对于没有经验的用户也易于使用。
Markdown 中的 # 或哈希语法表示标题,它将转换为 HTML 中的 <h1> 标题。
** 标记表示粗体文本或 HTML 中的 <b>。
Grav 页面支持 3 种类型的页面:
标准页面。
列表页面。
模块化页面。
Markdown 语法被定义为以易于阅读和易于编写的方式编写纯文本,然后将其转换为 HTML 代码。Markdown 语法中使用诸如 (*) 或 (') 之类的符号。这些符号用于加粗、创建标题和组织内容。
使用 Markdown 语法的益处包括:
它易于学习,字符最少。
当您使用 Markdown 时,出错的可能性非常小。
有效的 XHTML 输出。
您的内容和视觉显示保持分离,因此不会影响您的网站外观。
您可以使用任何文本编辑器或 Markdown 应用程序。
强调是指 Markdown 语法中用于加粗、斜体或删除线的书写格式。
粗体 - 使用文本两侧的两个 (**) 符号可以使文本变为粗体。
斜体 - 在单词两侧使用下划线 (_) 符号可以使文本变为斜体。
删除线 - 在单词两侧使用两个波浪号 (~~) 可以删除单词。
内容中使用的 4 种链接类型包括:
片段相对链接
目录相对链接
绝对链接
远程链接
远程链接允许您通过其 URL 直接链接到任何文件或文档。无需包含您自己网站的内容。
以下是 Grav 支持的媒体文件类型:
图像 - jpg、jpeg、png。
动画图像 - gif。
矢量化图像 - svg。
视频 - mp4、mov、m4v、swf。
数据/信息 - txt、doc、pdf、html、zip、gz。
添加 Sepia 滤镜可以使图像呈现复古外观。
模块化页面能够从其子页面创建单个页面。它用于设置为不可路由,因为无法通过 URL 直接访问它们。它们在文件夹名称前由 _(下划线)标识。它是一组页面,这些页面一个接一个地显示以获得单个页面。
过滤器用于以您想要的方式格式化数据并输出。函数用于生成内容。Twig 模板是包含表达式和变量的文本文件,这些表达式和变量将被值替换。
Twig 使用三种类型的标签,即
输出标签
操作标签
注释标签
有一些选项可以传递 CSS 资源数组:
优先级 - 它采用整数,默认值为 100。
管道 - 当资源未包含在管道中时,它设置为 false。默认值设置为 true。
Grav 允许您使用名称注册 CSS 和 JS 资源的集合,以便您可以使用已注册的名称将资源添加到资源管理器。这可以通过 Grav 中一项名为命名资源的功能来实现。这些自定义集合在 system.yaml 中定义,以便任何主题或插件都可以使用。
分组资源允许您在添加资源时传递包含可选组的选项数组。当您需要在页面的特定部分使用一些 JS 文件或内联 JS 时,此功能非常有用。
scss --watch scss:css-compiled
主题继承是修改或定制主题的最佳方法,并且可以通过一些设置来实现。基本思想是,主题被定义为您从中继承的基本主题,并且只允许修改某些部分,其余部分由基本主题处理。使用主题继承的优点是,每当更新基本主题时,定制的继承主题都不会直接受到影响。
随机插件的重要要点包括:
您可以使用此插件通过使用 URI 为 /random 来显示随机页面。
创建过滤器以利用页面中指定的分类法。您可以创建为 category : blog。
您可以使用过滤器选项显示随机页面,它通知 Grav 使用相同的内容在随机页面中显示。
事件钩子与 Grav 从头到尾都有直接关系。您必须了解钩子的调用顺序以及在这些调用时可以使用什么。
Problem 插件使用此功能来管理显示 Grav 产生致命错误的完整解释列表。
在此过程中,您将按照 Twig 方法的顺序看到完整的站点模板。此外,您可以在此过程中向 Twig 添加任何变量。
Grav 管理面板插件的功能包括:
启用或禁用插件管理器列表中存在的插件。
它包含忘记密码的功能。
媒体文件可以通过拖放方法上传。
允许在普通和专家模式下通过 yaml 或表单进行编辑。
在用户登录期间提供自动密码加密功能。
Blueprints 是关于资源(信息来源)的元数据信息。它有两个用途:
第一个是资源本身的标识。
第二个是关于表单的。
有 5 种缓存类型:
将 YAML 配置缓存到 PHP 中。
页面对象的 Grav 核心缓存。
将模板文件作为 PHP 类进行 Twig 缓存。
媒体资源的图像缓存。
使用流水线对 CSS 和 jQuery 进行资产缓存。
CLI 代表命令行界面,存储在 bin/grav 中。它执行一些任务,例如清除缓存、创建备份副本等。
$ bin/grav composer
GPM 代表 **Grav 包管理器**,用于安装、更新、卸载和列出 Grav 存储库中可用的插件。GPM 使用命令行界面(如终端或 cmd)执行命令。
$ bin/gpm self-upgrade
Grav Skeleton 描述了一个示例站点,其中包含 Grav 核心、插件、页面、主题等。Grav 最初的想法是使站点构建非常容易。开发站点所需的内容都放置在用户文件夹中。Grav 的骨架附带各种依赖项,例如插件、主题等,并将它们存储在一个包中,可以解压缩以运行简单的示例。
Grav 生命周期的四个主要步骤是:
PHP 版本
初始化加载器类
获取 Grav 实例
调用 Grav 处理过程
YAML 代表 YAML Ain't Markup Language,它包含人类可读的内容,通常用于配置文件、蓝图(关于资源的元数据信息)和页面设置。
YAML 支持一些基本数据类型,可以与编程语言一起使用,例如:
标量 - 字符串或数字。
序列 - 数组或列表。
映射 - 哈希或字典。
Grav 支持以下托管服务:
Rochen Web Hosting
WireNine
Crucial Web Hosting
Arvixe
SiteGround
Dreamhost
可能导致服务器错误的一些原因包括:
配置过时。
文件权限不正确。
配置文件格式无效。
文件系统更改未被 Grav 识别。
bin/grav clear-cache
一些响应式图像类型包括:
更高密度的显示
带媒体查询的大小
它会在文件名后面添加后缀,并且您可以向页面添加更高密度的图像。
特殊的表单字段包括:
Markdown
前置 matter
Selectize
分类法
切换
它用于以原始格式显示页面。
它指定了可以报告问题或错误的 URL。
此事件有助于处理和管理表单。
它根据需要拉伸图像,而不管原始比例如何。