litzinger/file-field

ExpressionEngine 的文件字段库

1.1.0 2020-09-09 19:36 UTC

This package is auto-updated.

Last update: 2024-09-05 04:25:16 UTC


README

composer require litzinger/file-field

这是一个包装类,用于在 ExpressionEngine 3 控制面板(或前端)中生成一个完整的文件字段类型。它使用原生的 File_ft 类来生成所有必要的 HTML 标记和 JavaScript 代码,以在任何控制面板位置渲染一个完整的文件字段。它非常适合用于需要将图片作为表单选项保存的第三方插件。

那么为什么不使用原生的 FilePicker 服务呢?简单。它不会自动创建所有必要的 HTML 和 JavaScript 代码来制作一个功能性的文件字段。您需要注册并维护自己的 JavaScript 回调。因为这个类会处理所有这些,因为它使用了与控制面板中渲染文件选择器相同的代码,而控制面板使用的是 FilePicker 服务。通过利用原生的 File_ft,它可以在控制面板或前端通道:表单标签中渲染一个工作字段。

用法

$fieldName 应该是表单字段的名称。可以是 field_id_1,或者是 foo[something][another_thing]

$fieldValue 是数据库中保存的值,通常是 {field_dir_1}something.png

$settings 是原生 EE File_ft 类所需的设置数组

$fileField = new FileField($fieldName, $fieldValue, $settings);
$options .= '<div class="setting-txt"><em>Image</em></div>' . $fileField->render();

路线图

  • 添加 Symfony 的 OptionsResolver 来验证 $settings 数组
  • 添加 Treasury 字段类型的兼容性?
  • 添加 Assets 字段类型的兼容性?