statikbe/craft-cta-field

制作呼吁行动和链接字段变得简单

安装数: 9,246

依赖关系: 0

建议者: 0

安全: 0

星标: 0

关注者: 9

分支: 1

开放问题: 3

类型:craft-plugin

2.3.0 2023-09-18 11:19 UTC

README

要求

此插件需要Craft CMS 3.0.0或更高版本。

安装

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

  1. 打开您的终端并进入您的Craft项目

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

     composer require statikbe/craft-cta-field
    
  3. 在控制面板中,转到设置 → 插件,并点击链接字段的“安装”按钮。

模板化

您的模型上的链接字段将返回一个 cta\models\Link 实例。在模板中直接渲染链接字段将返回字段指向的url。

<a href="{{ item.myLinkField }}">Link</a>

您可以使用以下访问器来获取链接的不同属性

{{ item.myLinkField.getElement() }}
{{ item.myLinkField.getTarget() }}
{{ item.myLinkField.getText() }}
{{ item.myLinkField.getUrl() }}
{{ item.myLinkField.hasElement() }}
{{ item.myLinkField.isEmpty() }}

使用 getLink 工具函数来渲染完整的html链接

{{ item.myLinkField.getLink() }}

您可以将所需的链接内容作为字符串传递,例如

{{ entry.linkField.getLink('Imprint') }}

您也可以传递一个属性数组。在这种情况下,您可以覆盖默认的 hreftarget 属性。特殊属性 text 将用作链接内容。

{{ entry.linkField.getLink({
  class: 'my-link-class',
  target: '_blank',
  text: 'Imprint',
}) }}

要获取作为span的CTA(例如,用于可点击的块),您可以使用 getSpan() 函数。

{{ entry.linkField.getSpan({
  class: 'my-link-class',
  text: 'Imprint',
}) }}

配置

自定义类

向下拉菜单添加自定义类。

  1. 将 cta.php 添加到 /config
  2. 声明您的类
<?php

return [
    'classes' => [
        'btn'                   => 'Primary',
        'btn btn--secondary'    => 'Secondary'
    ]
];

网站之间的链接

默认情况下,从另一个网站链接到条目是不启用的。要使此功能正常工作,您可以使用此配置设置

<?php

return [
    'crossSiteLinking' => true
];

致谢

深受 sebastian-lenz/craft-linkfield 的启发。