📜  重力-面试问题

📅  最后修改于: 2020-10-25 05:36:09             🧑  作者: Mango


亲爱的读者,这些Grav面试题是专门为让您熟悉在Grav主题的面试过程中可能遇到的问题的性质而设计的。根据我的经验,优秀的面试官几乎不会计划在面试过程中提出任何特定的问题,通常,问题是从该主题的一些基本概念开始的,后来根据进一步的讨论和您的回答,这些问题会继续出现-

Grav是一个基于平面文件的内容管理系统,它不使用数据库来存储内容,而是使用文本文件(.txt)或markdown(.md)文件来存储内容。

Grav是一种新型的最快的平面文件内容管理系统,它更易于发布和管理内容。通过将内容存储在文件(例如文本或markdown文件)中而不是数据库中,它使开发人员可以非常轻松地处理内容。如果要构建简单,可管理且快速的网站,最好选择Grav平面文件CMS。它的成本低于数据库驱动的CMS,并且在您没有足够的资源来处理数据库时,可与I / O一起用于文件处理。

重力的特点是-

  • 它是一个快速,简单且功能强大的平面文件Web平台。

  • 它用于构建没有额外工具或html知识的网站。

  • 它使用文本文件或降价文件来存储内容。

  • 它不使用数据库,因此消除了瓶颈问题。

  • 它使用了由Twig提供的基于PHP的模板,该模板可直接解析为PHP,从而使其速度更快。

Grav的优点是-

  • 它不是基于数据库CMS的,因此它非常易于安装,并且可以在将文件上传到服务器时随时使用。

  • 它使用Markdown文本文件使事情变得容易。使用此功能,内容将被动态转换为HTML并显示在浏览器中。

  • 为了安全起见,Grav没有管理区和数据库。因此,没有机会侵入帐户或数据库中以访问重要数据。

  • 由于没有要备份的数据库,您可以轻松备份所有文件以保留网站的备份副本。

  • 这是一款不需要更多时间学习的软件。

Grav的缺点是-

  • 有时,未经授权的用户可能会直接从文件访问您的内容,因为没有文件数据库。

  • 使用Grav CMS构建复杂的网站非常困难。

PHP 5.4或更高版本

可以将页面定义为站点的构建块。页面结合了内容和导航,即使没有经验的用户也可以轻松浏览。

Markdown中的#或哈希语法表示标题,该标题将转换为HTML中的

标头。

**标记表示HTML中的粗体文本或

Grav Pages支持3种类型的页面-

  • 标准页。

  • 列表页面。

  • 模块化页面。

Markdown语法定义为以易于阅读和易于编写的格式编写纯文本,然后将其转换为HTML代码。 markdown语法中使用(*)或(’)等符号。这些符号用于加粗,创建标题和组织内容。

使用Markdown语法的好处是-

  • 它易于学习,而且字符最少。

  • 当您使用markdown时,几乎没有出错的机会。

  • 有效的XHTML输出。

  • 您的内容和视觉显示保持分开,因此不会影响您的网站外观。

  • 您可以使用任何文本编辑器或Markdown应用程序。

重点是降价语法的书写格式,用于加粗,斜体或删除线。

  • 粗体-可以在文本的两侧使用两个(**)符号将文本设置为粗体。

  • 斜体-在单词的两边使用下划线(_)符号以斜体文本。

  • 删除线-在单词的两侧使用两个波浪号(~~)删除单词。

内容中使用的链接有4种类型-

  • 子弹相对

  • 相对目录

  • 绝对

  • 远程

远程链接允许您通过其URL直接链接到任何文件或文档。无需包括您自己网站的内容。

以下是Grav支持的媒体文件类型-

  • 图片-jpg,jpeg,png。

  • 动画图像-gif。

  • 矢量图像-SVG。

  • 视频-mp4,mov,m4v,swf。

  • 数据/信息-txt,doc,pdf,html,zip,gz。

添加了棕褐色滤镜以使图像具有复古感。

模块化页面可从其子页面创建单个页面。它用于设置为不可路由的,因为无法通过URL直接访问它们。它们在文件夹名称之前用_(下划线)标识。它是页面的集合,每个页面上方显示一个页面。

过滤器用于按所需和输出方式格式化数据。函数用于生成内容。 Twig模板是文本文件,其中包含用值替换的表达式和变量。

Twig使用三种类型的标签,即

  • 输出标签

  • 动作标签

  • 评论标签

传递CSS资产数组的选项很少-

  • priority-取整数值,默认值为100。

  • 管道-当管道中不包含资产时,资产设置为假值。并将默认值设置为true。

Grav允许您使用名称注册CSS和JS资产的集合,以便您可以通过使用注册名称将添加资产添加到Asset Manager。这可以在Grav中使用名为资产的功能来完成。这些自定义集合在system.yaml中定义,因此任何主题或插件都可以使用它。

分组资产允许您在添加资产时传递由可选组组成的选项数组。当您在页面的特定部分需要一些JS文件或内联JS时,此功能非常有用。

scss --watch scss:css-compiled

主题继承是修改或自定义主题的最佳方法,只需很少的设置即可完成。基本思想是将主题定义为您要从其继承的基本主题,并且只允许对某些部分进行修改,其余的内容则由基本主题处理。使用主题继承的优点是,无论何时更新基本主题,自定义的继承主题都不会直接受到影响。

随机插件的重点是-

  • 您可以使用URI作为/ random来使用此插件显示随机页面。

  • 创建过滤器以利用页面中指定的分类法。您可以创建以下类别:博客

  • 您可以使用过滤器选项显示随机页面,并通知Grav使用相同的内容在随机页面中显示。

事件挂钩从头到尾与Grav有直接关系。您必须了解钩子的调用顺序以及这些调用时可用的钩子。

问题插件使用它来管理显示完整解释列表,以了解重力为什么会导致致命错误。

在此过程中,您将通过Twig方法按顺序查看完整的网站模板。此外,您可以在此过程中向Twig添加任何变量。

Grav管理面板插件的功能是-

  • 启用或禁用插件管理器列表中存在的插件。

  • 它由忘记密码的功能组成。

  • 媒体文件可以通过拖放方法上载。

  • 允许通过Yaml或正常和专家模式下的表格进行编辑。

  • 用户登录期间提供了自动密码加密功能。

蓝图是有关资源(信息源)的元数据信息。它有两个目的-

  • 首先是资源身份本身。

  • 其次是关于表格。

缓存有5种类型-

  • 将YAML配置缓存到PHP中。

  • 页面对象的核心Grav缓存。

  • Twig将模板文件缓存为PHP类。

  • 图像缓存以获取媒体资源。

  • CSS和jQuery使用流水线进行资产缓存。

CLI代表存储在bin / grav中的命令行界面。它执行一些任务,例如清除缓存,创建备份副本等。

$ bin/grav composer

GPM代表Grav软件包管理器,该软件包用于安装,更新,卸载和列出Grav存储库中的可用插件。 GPM使用命令行界面(例如terminal或cmd)执行命令。

$ bin/gpm self-upgrade

Grav骨架描述了一个示例站点,其中包含Grav Core,插件,页面,主题。 Grav的最初想法是非常轻松地构建站点。开发站点所需的东西都放置在用户文件夹中。 Grav的框架带有各种依赖项,例如插件,主题等,并将它们存储在一个可以解压缩以运行简单示例的包中。

Grav生命周期的主要四个步骤是-

  • PHP版本

  • 加载程序类已初始化

  • 获取重力实例

  • 呼叫重力过程

YAML代表YAML非标记语言,它包括人类可读的内容,通常用于配置文件,蓝图(有关资源的元数据信息)和页面设置中。

YAML支持一些基本数据类型,可以与诸如以下代码这样的编程语言一起使用:

  • 标量-字符串或数字。

  • 序列-数组或列表。

  • 映射-散列或字典。

Grav支持以下托管服务-

  • Rochen虚拟主机

  • WireNine

  • 至关重要的虚拟主机

  • Arvixe

  • SiteGround

  • 梦幻主机

可能导致服务器错误的一些原因是-

  • 过时的配置。

  • 不正确的文件权限。

  • 格式设置文件无效。

  • Grav不了解的文件系统更改。

bin/grav clear-cache

自适应图像的几种类型是-

  • 更高密度的显示器

  • 媒体查询的大小

它为文件名添加了后缀,并且可以向页面添加更高密度的图像。

特殊形式的字段是-

  • 降价促销

  • 前题

  • 选择

  • 分类

  • 切换

用于以原始格式显示页面。

它指定可以报告问题或错误的Url。

此事件有助于处理和管理表单。

无论原始比例如何,它都会根据需要拉伸图像。