thoughtco / statamic-cookiepanel
此包的最新版本(2.2.1)没有提供许可证信息。
Statamic网站的Cookie面板
2.2.1
2024-09-18 10:38 UTC
README
Cookie Panel是Statamic的一个插件,为前端网站提供了一个以隐私优先的Cookie面板。它与完全静态缓存的网站完美配合。
如何安装
从项目根目录运行以下命令
composer require thoughtco/statamic-cookiepanel
工作原理
此插件应提供{{ cookie_panel:has_consented_to }}
标签,您可以使用它将任何外部库(如Google Analytics、地图、Meta Pixels)包裹在<template>
标签中,以便默认情况下不显示。
在页面加载时,{{ cookie_panel:scripts }}
标签会检查哪些Cookie组已被同意,如果已同意,则会显示它们。
同意通过{{ cookie_panel:panel }}
标签管理,该标签从网站CP中的新Cookie Panel全局设置中提取设置。同意组存储在LocalStorage中,因此不设置任何cookie,完全支持静态缓存。
如何使用
将以下文件添加到您站点的布局中,它们是使其他标签正常工作的必需文件
{{ cookie_panel:scripts }} {{ cookie_panel:styles }}
检查是否已给予同意
将任何设置cookie的库包裹在这个标签内:{{ cookie_panel:has_consented_to type="group-name" }}
例如
{{ cookie_panel:has_consented_to type="analytics" }}
<!-- Google Tag Manager -->
<script>Bad stuff here</script>
<!-- End Google Tag Manager -->
{{ /cookie_panel:has_consented_to }}
输出Cookie面板
要向最终用户显示Cookie同意面板,请添加
{{ cookie_panel:panel }}
输出Cookie表
如果您想向用户显示cookie列表,请添加以下内容到Cookie面板全局中
{{ cookie_panel:cookie_table }}
通过JavaScript与同意交互
{{ cookiepanel:scripts }}
标签为您全局JavaScript提供了ConsentPanel
变量。
它有几个您可以访问的方法
ConsentPanel.open() / ConsentPanel.close()
使用这些方法打开和关闭面板。
ConsentPanel.hasConsentedTo('group-name')
使用此方法确定是否已对某个cookie组给予同意。
ConsentPanel.getContentSettings()
此方法提供了一个包含已同意的cookie组句柄的数组。