mattgrayisok / craft-recently-viewed
Craft CMS 插件,用于查找任何类型的最近查看的元素。
Requires
- php: ^8.0.0
- craftcms/cms: ^5.0.0-beta.1
This package is auto-updated.
Last update: 2024-09-07 16:29:04 UTC
README
追踪用户查看的内容,并根据您的意愿重新显示。
轻松创建最近查看的文章、商品列表或其他任何在 Craft 中建模为元素的内容,包括自定义元素类型。
内容
许可证
此插件需要商业许可证,可以通过 Craft 插件商店购买。
许可证费用为 14 美元,每年更新费用为 5 美元(可选)。
要求
此插件需要 Craft CMS 3.0.0 或更高版本。
对于 Craft 3,请使用版本 ^1.0.0
对于 Craft 4,请使用版本 ^2.0.0
使用方法
从您网站的仪表板或使用 composer 手动安装 Craft 插件商店中的插件
composer require mattgrayisok/craft-recently-viewed
过滤
一旦安装了插件,您就可以在所有流畅元素查询中访问两个额外的功能
recentlyViewed()
- 仅通过最近查看的元素进行过滤orderByDateViewed()
- 按查看日期/时间排序最近查看的元素,最近的先显示
例如:
{% set recentBlogPosts = craft.entries.section('blogPosts').recentlyViewed().orderByDateViewed().all() %}
{% set recentProducts = craft.products.recentlyViewed().orderByDateViewed().all() %}
跟踪
默认情况下,任何链接到特定 URL 的元素都将自动跟踪。例如,如果您访问 /blog/article-slug
,并且 Craft 已经配置为自动将 entry
变量注入到相应的模板,则该条目将自动跟踪。
您可以在插件设置中禁用此自动跟踪行为。
您还可以使用以下方法在 twig 模板中手动跟踪查看:
{% do craft.recentlyViewed.track(element) %}
或者:
{% do craft.recentlyViewed.trackId(elementId) %}
您可以将任何 元素类型 传递给前面的函数,只要它实现了 craft\base\ElementInterface
。
清除
如果您出于任何原因想要清除最近查看的历史记录,可以调用:
{% do craft.recentlyViewed.clear() %}
支持
如果您在使用此插件时遇到任何问题,请通过以下方式通知我:
- 在 GitHub 上创建一个问题
- 给我发电子邮件:matt at mattgrayisok dot com
- 在 Craft Slack 中找到我:@mattgrayisok
- 通过 Twitter DM 联系我:@mattgrayisok
我将尽快对关键问题做出回应。
鸣谢
由 mattgrayisok 创建。
图标由 Smashicons 制作,来源于 www.flaticon.com,并按照 CC 3.0 BY 许可。