pinkcrab / form_fields
一个简单的表单字段创建器,非常适合wp-admin钩子调用,只需要作为HTML输入。
0.2.0-beta1
2021-08-29 00:40 UTC
Requires
- php: >=7.1.0
Requires (Dev)
- dealerdirect/phpcodesniffer-composer-installer: *
- gin0115/wpunit-helpers: dev-main
- object-calisthenics/phpcs-calisthenics-rules: *
- php-stubs/wordpress-stubs: ^5.6.0
- phpstan/phpstan: ^0.12.6
- phpunit/phpunit: ^7.0
- phpunit/phpunit-dom-assertions: ~2
- symfony/css-selector: 4.4.*
- symfony/dom-crawler: 4.4.*
- symfony/var-dumper: 4.*
- szepeviktor/phpstan-wordpress: ^0.7.2
- wp-coding-standards/wpcs: *
- yoast/phpunit-polyfills: ^0.2.0
- dev-master
- 0.2.0-beta1
- 0.1.8
- 0.1.7
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- dev-develop
- dev-feature/gh38-auto-show-label
- dev-feature/add-missing-tests
- dev-feature/remove-wp-unit
- dev-feature/create-datalist-trait
- dev-feature/create-missing-fields
- dev-feature/gh-21-add-tel-field
- dev-feature/create-global-populate-attributes-based-on-traits
- dev-feature/gh-22-add-time-field
- dev-feature/gh23-week-input
- dev-feature/create-base-input-type-for-all-input-types
- dev-feature/gh15-add-colour-input
- dev-feature/use-keys-in-checkboxes
This package is auto-updated.
Last update: 2024-09-08 05:42:09 UTC
README
一种简单解析html5表单元素的方式。不是一个全面的包,但足以渲染wp-admin中的大多数字段。
安装
要从Composer安装,请运行
composer require pinkcrab/form_fields
基本用法
要创建一个简单的表单字段并将其渲染到屏幕上
Input_Text::create( 'my_input' ) ->current( get_option( 'my_option', 'fallback' ) ) ->render();
您可以使用as_string()返回输入的HTML字符串
Input_Text::create( 'my_input' ) ->current( MyData::getOption( 'my_option', 'fallback' ) ) ->as_string();
字段类型
- 文本
- 搜索
- 密码
- 电子邮件
- URL
- 电话
- 数字
- 范围
- 文本区域
- 日期
- 日期时间
- 复选框(单个 & 组)
- 单选按钮
- 选择
- 原始HTML
- 隐藏
- 周
- 月
- 图像(按钮)
- 提交
所有输入都从Abstract_Field类扩展,并具有在基础字段部分中列出的一切功能。
标签
输出
每个表单字段都预加载了一个解析器,该解析器可以渲染输入字段或返回HTML。如果您创建了自己的字段,您可以使用我们现有的解析器或创建自己的解析器,使用解析器接口。
Input_Text::create('test')->render() // Prints the input Input_Text::create('test')->as_string() // Returns as HTML string.
字段创建
我们所有的表单字段都有受保护的__construct
构造函数,并需要使用create()命名构造函数创建。
Input_Text::create('name')->render(); Input_Email::create('email')->render(); Input_Password::create('password')->render();
版本
发布0.1.7
变更日志
- 0.1.8 - 标签现在在长度大于0时自动显示,长度为0时隐藏。
- 0.1.7 - 添加了缺失的URL字段,还清理了所有测试,并现在所有属性都仅由属性控制,而不是自定义属性。向所有有效输入字段添加了Datalist属性。测试扩展到超过1500个断言。
- 0.1.6 - 添加了缺失的字段[颜色(包括别名颜色)、周、时间、月、文件、图像、提交 & 电话],并将其移动到新的抽象INPUT中,该INPUT用于扩展所有从基本抽象输入扩展的字段。清理了测试,并现在所有属性都仅由属性控制,而不是自定义属性。
- 0.1.5 - 允许选择选项为数字字符串。
- 0.1.4 - 移除了默认设置,因为未实现且不适用于此库。还包括了将自定义名称属性设置到字段中的选项,如果未设置,则回退到键(id)。
- 0.1.3 - 添加了复选框组字段
- 0.1.2 - 各种错误修复
- 0.1.1 - 各种错误修复