cara-tm/pat_if_amp

Google AMP for Textpattern CMS。

安装: 33

依赖项: 0

建议者: 0

安全: 0

星标: 4

关注者: 5

分支: 4

开放问题: 0

类型:textpattern-plugin

v0.3.7 2018-04-21 18:28 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:39:27 UTC


README

下载 | Packagist

AMP 页面为 Textpattern CMS

此条件标签检查当前页面的 URL,并确定是否以 'amp.' 结尾。这允许使用 Google 的加速移动页面 (AMP) 项目标准渲染自定义页面。

链接

别忘了查看我的其他也兼容 Google AMP 的插件:pat_article_social

注意

TXP 4.7+ 及其新功能开始,您可以选择使用内置标签解决方案而不是此插件。更多详情请参阅 Oleg 在 此论坛帖子(别忘了在网站上动态添加 TXP 变量以供进一步使用)

<txp:evaluate query='contains(<txp:page_url escape="quote" />, "/amp")'>
    AMP page
<txp:else />
    regular page
</txp:evaluate>

安装

使用 Composer

$ composer require cara-tm/pat_if_amp:*

或从 GitHub 项目页面 下载插件的最新版本,将代码粘贴到 Textpattern 插件管理面板中,安装并启用插件。

pat_if_amp

属性

  • url 字符串 (可选):网站的地址(URL)。默认:hu(在 Textpattern 预设面板中设置的网站 URL)。
  • subdomain 字符串 (可选):设置重定向到的子域名称。默认:amp
  • permlink 布尔值 (可选):如果设置为 0(false),则不会在子域内对同一文章的 URL 模式进行重定向。默认:1(true)。

示例

在您的单个文章模板的头部放置类似以下的代码,以便正确检测 AMP 页面

<txp:if_individual_article>
    <link rel="canonical" href="<txp:permlink />">
    <link rel="amphtml" href="<txp:permlink />/amp/">
</txp:if_individual_article>

在您的单个文章模板中放置类似以下的代码以显示替代格式

<txp:pat_if_amp>
    <txp:output_form form="amp_page" />
<txp:else />
    <txp:output_form form="standard_page" />
</txp:mkp_if_amp>

Textpattern 变量使用

自动生成一个值为 true/false(10)的 <txp:variable name="pat_amp" />,用于测试此是否为 AMP 上下文。

使用

<txp:if_variable name="pat_amp" value="1">
    AMP context
<txp:else />
    Normal context
</txp:if_variable>

示例

<txp:if_variable name="pat_amp" value="1">
    ...Do some AMP things...
    <a href="<txp:site_url />category/<txp:category name='<txp:category1 />' />?amp">AMP Category 1 Link</a>
<txp:else />
    ...Do some normal (non-AMP) things...
</txp:if_variable>

此示例涉及类别,对于 pages 和/或 archives,使用类似的模型。

pat_amp_sanitize

一个用于渲染不带任何内联样式的文章文本内容的标签。用作标准 Textpattern <txp:body /> 标签和/或 <txp:excerpt /> 标签的替代。

属性

  • content 字符串 (可选):选择要清理的文章内容 bodyexcerpt。默认:body

使用

在文章表单上下文中

<txp:pat_amp_sanitize content="excerpt" />

pat_amp_redirect

一个用于网页重定向到子域名的简单标签。与《卫报》网站使用的行为相同。必须与移动设备检测脚本(例如 adi_mobile 插件)一起使用。一些网页设计师可能会选择为他们的移动网站使用子域名(可能不建议,但官方 AMP 博客位于子域名中,见:https://amphtml.wordpress.com)。在这种情况下,Textpattern 多站点功能使得操作更简单

注意:仅在在线服务器上工作,不适用于本地服务器安装。

使用

<txp:pat_amp_redirect url="" subdomain="" permlink="" />

建议:将主站点的 config.php 文件复制到子域配置文件夹中,以便共享相同的数据库。因此,所有由校对编辑撰写的文章将自动从仅附加到“正常”网站的 Textpattern 管理界面发送到“AMP 驱动的网站”。但设计师有一个独立且更干净的空间来构建他们的 AMP 页面。

属性

  • url 字符串 (可选):网站的地址(URL)。默认:hu(在 Textpattern 预设面板中设置的网站 URL)。
  • subdomain 字符串 (可选):设置重定向到的子域名称。默认:amp
  • permlink 布尔值(可选):选择在子域内重定向相同单个文章的标题 URL。默认值:0(false)。

示例

<txp:pat_amp_redirect subdomain="amp" permlink="1" />

在这种情况下,如果您的域名是 example.com,它将重定向到 amp.example.com 子域,并使用来自主域的单个文章的相同 URL

致谢

非常感谢 Phil Wareham 整理了这个插件代码及其帮助文件。
感谢 Michael K. Pate,他的原始想法被接受,以“pat”前缀插件的形式分发我的整个重写代码。