erikgreasy / wp-advanced-forms
这是我创建的包 wp-advanced-forms
v0.1.2
2023-03-01 11:44 UTC
Requires
- php: ^8.0
- illuminate/translation: ^8.0 || ^9.0
- illuminate/validation: ^8.0 || ^9.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- pestphp/pest: ^1.20
- spatie/ray: ^1.28
README
高级表单提供了一种方便的方法,通过使验证等典型表单任务更容易实现,在WordPress中创建自定义表单。
当前包含的功能
- 可以使用laravel验证
- 轻松配置您的表单,无需重复WP动作键,无需丑陋的WP钩子回调来处理表单等
安装
您可以通过composer安装此包
composer require erikgreasy/wp-advanced-forms
用法
创建您的表单类,扩展基础FormComponent类。例如,表单类
<?php namespace App\Forms; use Erikgreasy\WpAdvancedForms\FormComponent; class ContactForm extends FormComponent { public bool $usesAjax = true; public function handleSubmit() { // This is where we handle our form. // We can use provided laravel validator $validator = $this->validator->make($_POST, [ 'name' => 'required' ]); if($validator->fails()) { wp_send_json($validator->errors()); } wp_send_json([ 'message' => 'Success' ]); } public function actionName(): string { return 'contact_form'; } }
在functions.php中或在插件中注册所有表单
WpAdvancedForms::load([ ContactForm::class, ]);
现在您可以使用基于表单类的单一真相来源来渲染您的表单
<?php $form = \Erikgreasy\WpAdvancedForms\WpAdvancedForms::getForm( \App\Forms\ContactForm::class ); ?> {!! $form->openForm() !!} <input type="text" name="name"> <button>Submit</button> {!! $form->closeForm() !!}
变更日志
请参阅变更日志以获取有关最近更改的更多信息。
贡献
请参阅贡献指南以获取详细信息。
安全漏洞
请查阅我们的安全策略了解如何报告安全漏洞。
许可证
MIT许可证(MIT)。请参阅许可证文件以获取更多信息。