WordPress Field is a simple library to render form fields in WordPress.
Install via composer: composer require grottopress/wordpress-field
<?php
use GrottoPress\WordPress\Form\Field;
// Text field
$text = new Field([
'id' => 'field-id',
'name' => 'field-name',
'type' => 'text',
'value' => 'My awesome text field',
'label' => 'My text field',
]);
// Render text field
echo $text->render();
// Radio buttons
$radio = new Field([
'id' => 'field-id',
'name' => 'field-name',
'type' => 'radio',
'value' => 'my-choice',
'choices' => [
'one' => 'One',
'my-choice' => 'My Choice',
'two' => 'Two',
],
]);
// Render radio field
echo $radio->render();
// Dropdown
$dropdown = new Field([
'id' => 'field-id',
'name' => 'field-name',
'type' => 'select',
'value' => 'my-choice',
'choices' => [
'one' => 'One',
'my-choice' => 'My Choice',
'two' => 'Two',
],
]);
// Render dropdown field
echo $dropdown->render();
// Multi-select dropdown
$mdrop = new Field([
'id' => 'field-id',
'name' => 'field-name',
'type' => 'radio',
'value' => 'my-choice',
'choices' => [
'one' => 'One',
'my-choice' => 'My Choice',
'two' => 'Two',
],
'meta' => [
'multiple' => 'multiple',
],
]);
// Render multi-select dropdown
echo $mdrop->render();
// Categories dropdown
$catsdrop = new Field([
'type' => 'wp_dropdown_categories', // callable WP function
'callbackArgs' => [ // Args to pass to callable function
[ // @see https://developer.wordpress.org/reference/functions/wp_dropdown_categories/
'show_option_none' => '--',
'echo' => 0,
'selected' => 22,
'name' => 'field-name',
'id' => 'field-id',
'taxonomy' => 'category',
],
],
]);
// Render categories dropdown
echo $catsdrop->render();
Run tests with composer run test
.
- Fork it
- Switch to the
master
branch:git checkout master
- Create your feature branch:
git checkout -b my-new-feature
- Make your changes, updating changelog and documentation as appropriate.
- Commit your changes:
git commit
- Push to the branch:
git push origin my-new-feature
- Submit a new Pull Request against the
GrottoPress:master
branch.