bennothommo/oc-meta-plugin

此包已被 废弃,不再维护。未建议替代包。

提供了一种简单的方法,可以将 HTML meta 和 link 标签插入到 October CMS 布局或页面中。

安装: 221

依赖项: 1

建议者: 0

安全性: 0

星星: 4

关注者: 1

分支: 2

开放问题: 0

类型:october-plugin

v1.0.4 2020-10-03 02:46 UTC

This package is auto-updated.

Last update: 2021-07-29 15:22:53 UTC


README

请注意,此存储库已不再维护。
由于与 October CMS 创始人的 分歧,我将不再提供此插件的 October CMS 版本的更新。我会保留此存储库供人们使用,但只会更新此插件的 Winter CMS 版本


元插件

提供一个简单接口,允许 October CMS 插件插入 HTML <meta><link> 标签,以及 JSON-LD 块到布局或页面中。该插件提供了三个辅助类来填充元和链接标签或 JSON-LD 块,并为每个注入到 October CMS 布局、部分或页面文件的组件。

使用方法

针对主题开发者

提供了三个组件以将元和链接标签或 JSON-LD 块注入到您的主题中 - metaListlinkListjsonLdList

元标签

Meta -> Meta List 组件添加到您的页面中,并在您想插入元标签的位置添加以下行。这最好放在 <head> 标签内。

{% component 'metaList' %}

元标签将按照以下结构生成

<meta name="(name)" content="(value)">

组件还提供了两个选项

  • 包含页面元信息?:如果勾选(默认),October CMS 提供的元标题和描述字段也将包含在生成的元标签中。
  • 转义标签值?:如果勾选(默认),插入到 content 属性中的值将使用 htmlentities 转义。如果这破坏了您的内容,您可以取消勾选以插入原始内容。

链接标签

Meta -> Link List 组件添加到您的页面中,并在您想插入链接标签的位置添加以下行。如上所述,这最好也放在 <head> 标签内。

{% component 'linkList' %}

链接标签将按照以下结构生成

<link rel="(name)" href="(value)">

组件还提供了一个选项

  • 转义标签值?:如果勾选(默认),插入到 href 属性中的值将使用 htmlentities 转义。如果这破坏了您的内容,您可以取消勾选以插入原始内容。

JSON-LD 块

将《元数据 -> JSON-LD 列表》组件添加到您的页面中,并在您希望插入 JSON-LD 块的位置添加以下行。如上所述,最好将其放在 <head> 标签内,在所有 <meta><link> 标签下方。

{% component 'jsonLdList' %}

JSON-LD 块将生成以下结构

<script type="application/ld+json">
    (value)
</script>

组件还提供了一个选项

  • 转义 JSON-LD 内容?:如果勾选(默认),则将插入 JSON-LD 内容块的值使用 htmlentities 进行转义。如果这破坏了您的内容——尤其是在 HTML 内容的情况下,您可以取消勾选以插入原始内容。

针对插件开发者

如果您希望在使用此插件的网站上提供元数据和链接标签或 JSON-LD 块内容,您可以在插件中使用 \BennoThommo\Meta\Meta\BennoThommo\Meta\Link\BennoThommo\Meta\JsonLd 辅助类。

这些类可以在上述组件在 October CMS 中渲染之前使用。

元标签

要添加元标签,使用以下行

\BennoThommo\Meta\Meta::set('name', 'value')

其中 name 是元标签的名称,value 是元标签的内容。

您也可以一次添加多个元标签

\BennoThommo\Meta\Meta::set([
    'name1' => 'value1',
    'name2' => 'value2'
]);

请注意,每个 name 只能使用一个值。如果在较晚的辅助调用中使用相同的名称,所提供的值将覆盖任何以前的值。

链接标签

要添加链接标签,使用以下行

\BennoThommo\Meta\Link::set('name', 'value')

其中 name 是链接标签的名称,value 是链接标签的 href。

您也可以一次添加多个链接标签

\BennoThommo\Meta\Link::set([
    'name1' => 'value1',
    'name2' => 'value2'
]);

请注意,每个 name 只能使用一个值。如果在较晚的辅助调用中使用相同的名称,所提供的值将覆盖任何以前的值。

JSON-LD 块

要添加 JSON-LD 块,使用以下行

\BennoThommo\Meta\JsonLd::set('name', '{key: value}')

其中 name 是 JSON-LD 块的名称,value 是您希望在块中使用的 JSON 编码内容。

所有提供的值都将进行检查以确保它们是有效的 JSON —— 如果提供的值不是有效的 JSON 内容,将抛出 ApplicationException

您也可以一次添加多个 JSON-LD 块

\BennoThommo\Meta\JsonLd::set([
    'name1' => '{key1: value1}',
    'name2' => '{key2: value2}'
]);