justbetter/statamic-partytown

此包最新版本(0.0.2)没有可用的许可证信息。

0.0.2 2024-05-29 15:15 UTC

This package is auto-updated.

Last update: 2024-08-30 14:33:12 UTC


README

像 GTM 这样的脚本会对性能和页面速度产生巨大的负面影响,为了解决这个问题,制作了像 Partytown 这样的脚本。它允许你保留分析,同时恢复 一些 性能。

Pagespeed Scores

安装

在头部加载 Partytown

如果你使用 antlers,你应该在头部添加以下内容

<head>
    ...
    {{ partial:if_exists src="statamic-partytown::head" }}
    ...
</head>

而对于 blade,你可以使用以下方式包含它

<head>
    ...
    @include('statamic-partytown::head')
    ...
</head>

可选

如果你想在自定义模板外使用 partytown 管理和向页面添加脚本,你可以发布 Partytown 设置的全局设置

php artisan vendor:publish --provider="JustBetter\StatamicPartytown\ServiceProvider" --tag=statamic-content

为了进一步提高 Partytown 通信的速度,你可以通过添加几个标题来配置 Atomics

使用方法

默认情况下,如果你在 https 上运行网站,Partytown 将会运行。

要使用 Partytown,只需将你想要在 Partytown 中运行的脚本从 <script type="text/javascript"><script> 改为 <script type="text/partytown">

它们将在 Partytown 中执行。

如果你已发布 statamic 全局设置,你也可以将你的脚本片段粘贴到配置中,并启用 partytown 的片段。

其他域名和 CORS

由于 CORS 设置,并非所有域名都支持 Partytown(https://partytown.builder.io/proxying-requests)。此包为这些域名提供了一个代理,默认已添加一些域名(见:config/statamic/partytown.php)。如果你发现更多域名出现 CORS 错误,你可以将它们添加到配置中,或在 .env 文件中的逗号分隔列表下添加到 GTM_PARTYTOWN_DOMAIN_WHITELIST

自定义配置

partytown 配置在 window.partytown 中可用,因此你可以通过在 <script></script> 标签内更新配置来更改配置。

见:https://partytown.builder.io/configuration