burnthebook / craft3-livebuzz
从LiveBuzz API提取参展商信息到网站,并更新和删除参展商。
Requires
- craftcms/cms: ^3.0.0-RC1
README
此插件将LiveBuzz API的参展商信息拉取到网站,并更新和删除参展商。
自动同步功能将每15分钟更新一次,以保持您的网站与Livebuzz同步。您还可以通过点击按钮手动同步。
控制面板中的Livebuzz部分允许您浏览已导入网站的所有参展商。
Twig扩展允许轻松将参展商集成到您的模板中。
注意:这不是官方的Livebuzz插件。
要求
此插件需要
- Craft CMS 3.0.0-RC1或更高版本;
安装
要安装此插件,请按照以下说明操作。
-
打开您的终端并转到您的Craft项目
cd /path/to/project
-
然后告诉Composer加载插件
composer require burnthebook/craft3-livebuzz
-
在控制面板中,转到设置→插件,并点击Livebuzz的“安装”按钮。
配置Livebuzz
在控制面板中,转到设置→Livebuzz,并输入您的Livebuzz JSON API参展商数据源的URL,包括活动标识符。
在设置→Livebuzz中,还应输入用于验证您对Livebuzz API访问的Bearer。
启用自动同步,或者对于高级用户,在您的服务器上创建一个cron作业。请参阅同步。
如果使用自动同步,请注意,初始同步将在启用自动同步后15分钟发生。
要手动触发同步,请转到控制面板→Livebuzz并点击“立即同步”按钮。
参展商
{% set exhibitors = craft().livebuzz.exhibitors().all() %}
{% for exhibitor in exhibitors %}
{{ exhibitor.companyName }}
{% endfor %}
参数
craft().livebuzz.exhibitors()
返回一个支持Craft标准查询参数(排序、排序、限制等)的查询对象,以及以下新参数:
属性
参展商元素具有以下属性:
-
id
- Craft的参展商ID。注意这与Livebuzz的参展商ID不同。 -
identifier
- Livebuzz的参展商ID。 -
companyName
- 参展商的公司名称。 -
logo
- 参展商的logo,作为相对路径。 -
description
- 参展商的传记。 -
telephone
- 参展商的国际格式电话号码。 -
emailAddress
- 参展商的电子邮件地址。 -
websiteUrl
- 参展商的网站URL。 -
stands
- 一个数组,包含分配给此参展商的摊位位置,结构如下:[ 'E09', 'A1', 'B10' ]
-
addresses
- 一个数组,包含此参展商的地址,结构如下:[ { "line_1": "First line", "line_2": "The second line", "line_3": "The third line", "city": "Derby", "county": "Derbyshire", "region": "West Midlands", "country": "GB" }, { "line_1": "1600 Amphitheatre Pkwy", "line_2": "Mountain View", "line_3": "94043", "city": "", "county": "", "region": "CA", "country": "USA" } ]
-
socialMediaChannels
- 一个数组,包含此参展商的社会媒体渠道,结构如下:[ { "type": "instagram", "url": "https://www.instagram.com/" }, { "type": "website", "url": "https://www.example.com/" }, { "type": "facebook", "url": "https://#/" } ]
同步
此插件附带自动同步选项,每15分钟左右通过伪cron作业自动从JSON API源同步。
为了更稳健的同步,您可以在插件设置中禁用自动同步,并使用以下Craft控制台命令从适当的cron作业触发它:
craft livebuzz/feed/sync
由Burnthebook提供