我们的名字是mud/currency-layer

与 https://currencylayer.com/ 的API集成

安装: 841

依赖项: 0

建议者: 0

安全: 0

星星: 3

关注者: 4

分支: 3

开放问题: 3

类型:craft-plugin

1.0.5.5 2020-12-04 12:43 UTC

This package is auto-updated.

Last update: 2024-09-04 20:59:12 UTC


README

https://currencylayer.com/ 的API集成

要求

此插件需要Craft CMS 3.0.0-beta.23或更高版本。

安装

要安装此插件,请按照以下说明操作。

  1. 打开您的终端并转到您的Craft项目

     cd /path/to/project
    
  2. 然后告诉Composer加载插件

     composer require ournameismud/currency-layer
    
  3. 在控制面板中,转到设置 → 插件,然后点击Currency Layer的“安装”按钮。

Currency Layer概述

这是一个Currency Layer API的插件层,允许您本地存储和检索货币值。如果您将其与Craft Commerce结合使用,它将为相应的支付货币填充汇率值。

配置Currency Layer

要使用此插件,您将需要从Currency Layer获取一个API密钥。基本账户是免费的,但限制为每月250次请求250 Requests/mo

插件中可用的选项可以保存在 插件 > 设置 或通过 配置文件

插件设置包括

  • apiKey Currency Layer API密钥
  • primaryCurrency 您希望用作转换基础的货币
  • apiCache 是否缓存响应(推荐)
  • cacheDuration 您希望缓存存储/保存多长时间

使用Currency Layer

您可以通过两种方式之一使用Currency Layer。第一种方式是通过一个操作。这种方法最好与CRON作业结合使用,定期获取结果。可以通过以下URL触发操作

http://your.domain.com/actions/currency-layer/currency/fetch?currencies=EUR,GBP,USD,其中currencies参数是您希望检索的货币的逗号分隔列表。请注意,Currency Layer的基本(免费)版本始终默认为USD作为源。

如果您使用Craft Commerce,此操作将直接将汇率保存到您的Commerce设置中。否则,转换值可通过craft.currencyLayer.fetch()变量获取

craft.currencyLayer.fetch(request,type),其中request是必需的,应是一个对象,其中包含与您所需的Currency Layer API端点对应的关键值属性(请注意,许多端点仅限于付费账户)。type参数对应于您希望执行的查询类型(默认为live)。

例如,{% set data = craft.currencyLayer.fetch({ currencies:'EUR,GBP,USD' }) %}将获取以下端点:https://apilayer.net/api/live?currencies=EUR,GBP,USD&access_key=YOUR_ACCESS_KEY。响应将是一个值数组,这些值根据您插件设置中定义的货币提供乘数。考虑到这一点,我们可以构建一个宏来执行一些简单的货币转换,例如

{%- macro convert(value = 1, currency) -%}
    {% set data = craft.currencyLayer.fetch({ currencies:'EUR,GBP,USD' }) %}
    {{- data[currency] * value -}}
{%- endmacro -%}

{% set GBP = 100 %}
{% set EUR = _self.convert(100,'EUR') %}
{% set USD = _self.convert(100,'USD') %}

<dl>
    <dt>GBP</dt><dd>{{ GBP }}</dd>
    <dt>EUR</dt><dd>{{ EUR }}</dd>
    <dt>USD</dt><dd>{{ USD }}</dd>
</dl>

此插件旨在与Craft Commerce货币紧密协作。如果Craft Commerce中已经定义了货币,则选择主要货币的选项将限制在Craft Commerce中可用的那些。如果在插件中选择了新的主要货币,则主要Craft Commerce货币将更新,反之亦然。

Currency Layer 路线图

一些待办事项和潜在功能的想法

  • 发布它

cole007提供