creode / get-address-io
整合Craft CMS与getaddress IO服务,实现英国地址的自动补全。
2.1.0
2023-03-01 16:01 UTC
Requires
- craftcms/cms: ^4.0.0
- guzzlehttp/guzzle: ^7.0
- hiqdev/yii2-asset-select2: ^4.0
Requires (Dev)
README
整合Craft CMS与getaddress IO服务,实现英国地址的自动补全。
要求
此插件需要Craft CMS 3.5或更高版本。这是因为使用了Crafts模板根功能。
版本
安装
要安装插件,请按照以下说明操作。
-
打开您的终端并转到您的Craft项目
cd /path/to/project
-
然后告诉Composer加载插件
composer require creode/get-address-io
-
在控制面板中,转到设置 → 插件,然后点击Get Address IO的“安装”按钮。
Get Address IO概述
此插件旨在提供与https://getaddress.io API通信的基本输入和选择框。目标是使此插件尽可能轻量,并提供最基本的功能,以便可以轻松地进行修改和样式设置。
配置Get Address IO
在插件页面上,点击“Get Address IO”插件的“设置”并设置您的API密钥。建议将其设置为环境变量,但也可以选择直接提供。
使用Get Address IO
您可以在您的网站templates
文件夹中使用两个模板
{% include '_get-address-io/_autocomplete.twig' %}
- 为单个字段提供地址自动补全。默认情况下,它连接到Select2库。{% include '_get-address-io/_postcode-lookup.twig' %}
- 提供查找邮政编码并显示匹配该邮政编码的地址列表的能力。
上述每个模板都可以通过在模板文件夹中使用相同的路径进行覆盖。这为您提供了对字段结构的精细控制。在这样做时,建议删除现有的资产包并使用自己的JavaScript来确保功能仍然有效。
JavaScript事件
为了使此插件尽可能可定制,我们在JavaScript中触发自己的文档事件,以便可以在您的代码中进行响应。这些事件如下
- get-address-io-postcode-lookup: { detail: { selectBox:
<dom element>
, addresses:<array of addresses>
} } - get-address-io-autocomplete: { detail { addresses:
<array of addresses>
} }
以下示例显示了如何监听此事件
VanillaJS
document.addEventListener('get-address-io-postcode-lookup', function(e) {
var eventData = e.detail;
// Use eventData.addresses to populate your own fields.
});
jQuery
jQuery(document).on('get-address-io-postcode-lookup', function(e) {
var eventData = e.detail;
// Use eventData.addresses to populate your own fields.
});
Get Address IO路线图
一些待办事项和潜在功能的想法
- 发布它
- 实现API的更多功能
由Creode提供