Descripció
YBP CX Form focuses on one job: creating and publishing forms without requiring users to write form tags or HTML.
Version 1.0.0 changes the form layout editor to the grid-based designer while keeping the existing confirmation, Thanks, mail, and public form flow.
Version 1.0.0 includes:
- Three-pane form builder: available fields, working drag-and-drop layout canvas, and selected-item properties.
- Explorer/Finder-style palette selection with multi-select drag, vertical row insertion, and automatic equal-column creation by dropping to a field’s left or right edge.
- CSS Grid based public form layout.
- Field label position settings: above, left, or visually hidden.
- Required/optional, width, placeholder, description, choices, and content settings in the properties panel.
- Built-in standard email field with the stable
emailkey. - Reusable field library with customer-oriented presets such as full name, split name, Kana name, telephone, company, address, and date of birth.
- Fields created by the user are saved to the reusable field library after the form is saved.
- Built-in starter templates for blank, contact, document request, service application, event/seminar application, and survey forms.
- A draft Standard Contact Form is created only when no form exists yet; nothing is published automatically.
- Any saved form can be duplicated and edited independently.
- Form pages with root-level slugs edited through the normal WordPress permalink controls, plus featured images.
- Shortcode embedding with
[ybpcxf_form id="123"]. - Form page and shortcode use at the same time.
- Optional pre-send confirmation screen with freely editable HTML content.
- Freely editable Thanks screen or same-site redirect after sending.
- AJAX stage switching with History API support so Input, Confirmation, and Thanks do not reload the page.
- Browser Back returns from Confirmation or Thanks to the originating input screen without resending mail.
- Duplicate-send protection using a per-submission token.
- Separate administrator notification and sender auto-reply settings.
- To, CC, BCC, From, Reply-To, subject, body, plain-text/HTML mail, readable insertion tags, and a formatted all-fields tag.
- Honeypot spam field and nonce checks.
- Add-on registration APIs for add-ons, field types, reusable fields, and form templates.
- Dashboard-first administration with one Contact X Form sidebar entry, manual card ordering, and in-dashboard Trash management.
YBP CX Form 1.0.0 does not include CRM/customer management. The core is intentionally focused on form creation and delivery so future features can be added as separate add-ons.
Developer / Add-on API
Public helper functions:
ybpcxf_register_addon( $id, $args )ybpcxf_register_field_type( $type, $args )ybpcxf_register_field_library_item( $id, $args )ybpcxf_register_form_template( $id, $args )ybpcxf_get_form( $form_id )ybpcxf_render_form( $form_id, $args )
Important extension points include:
ybpcxf_loadedybpcxf_register_addonsybpcxf_register_field_typesybpcxf_register_field_libraryybpcxf_register_form_templatesybpcxf_form_templatesybpcxf_field_library_definitionsybpcxf_field_typesybpcxf_form_fieldsybpcxf_form_settingsybpcxf_before_processybpcxf_validate_fieldybpcxf_validate_submissionybpcxf_submission_valuesybpcxf_before_sendybpcxf_after_sendybpcxf_admin_mail_argsybpcxf_autoreply_mail_argsybpcxf_before_formybpcxf_after_formybpcxf_render_field_htmlybpcxf_render_form_htmlybpcxf_confirmation_templateybpcxf_render_confirmation_htmlybpcxf_thanks_templateybpcxf_render_thanks_htmlybpcxf_form_duplicatedybpcxf_admin_metaboxes
See docs/addon-api.md in the plugin package for examples.
Source Code
All JavaScript files included with this plugin are the human-readable source files used directly by WordPress. They are not generated or minified, and no build step is required to reproduce the distributed JavaScript.
Instal·lació
- Upload the
ybp-cx-formfolder to/wp-content/plugins/, or install the ZIP from Plugins > Add New > Upload Plugin. - Activate YBP CX Form.
- Open Contact X Form.
- Edit the included draft Standard Contact Form, create a blank form, use a built-in template, or duplicate an existing form.
- Build the layout by dragging fields into the canvas and adjusting the selected field in the properties panel.
- Configure confirmation, Thanks, and mail settings.
- Publish the form.
- Use the form page, the generated shortcode, or both.
PMF
-
Can I use a form without a form page?
-
Yes. Disable the form page and use the shortcode only.
-
Can I use the form page and shortcode at the same time?
-
Yes. One form definition can be displayed on its form page and in any number of shortcode locations.
-
Can I duplicate a form?
-
Yes. Every saved form has a Duplicate action. Fields, layout, confirmation, Thanks, mail settings, page content, and featured image are copied to a new draft form.
-
Does it include a confirmation screen?
-
Yes. It can be enabled or disabled for each form.
-
Can it send different emails to the site administrator and the sender?
-
Yes. Administrator notifications and sender auto-replies have independent settings.
-
Does it include customer management?
-
No. Version 1.0.0 deliberately excludes CRM/customer management. Future related features are intended to be connected through the add-on architecture.
Ressenyes
No hi ha ressenyes per a aquesta extensió.
Col·laboradors i desenvolupadors
«YBP CX Form» és programari de codi obert. La següent gent ha col·laborat en aquesta extensió.
Col·laboradorsTraduïu «YBP CX Form» a la vostra llengua.
Interessats en el desenvolupament?
Navegueu pel codi, baixeu-vos el repositori SVN, o subscriviu-vos al registre de desenvolupament per fisl de subscripció RSS.
Registre de canvis
1.0.5
- Restrict site-wide mail settings and shared Field Library changes to administrators with manage_options.
1.0.4
- Consolidate the Contact X Customer admin integration hooks from 1.0.2 with the YBP CX Form name, slug, text domain, and Plugin Directory review fixes introduced in 1.0.3.
1.0.3
- Rename the WordPress.org distribution name to YBP CX Form and use the ybp-cx-form slug/text domain.
- Keep Tested up to only in readme.txt as required by the Plugin Directory.
- Reformat admin-v2.js as directly readable source and document that no build/minification step is required.
1.0.2
- Added admin navigation integration hooks for Contact X Customer.
1.0.1
- Fix WordPress Plugin Check internationalization translator-comment errors.
- Sanitize the submission token before validation and resolve Plugin Check nonce warnings without changing the existing form flow.
1.0.0
- Prevent browser/password-manager autofill from populating the spam honeypot and blocking the existing confirmation/send flow.
- Keep the 0.1.9.x AJAX confirmation/send JavaScript and server-side processing unchanged.
0.2.0.8
- Fix form designer resize handles so controls and the layout canvas can be resized by dragging without relying on a jQuery UI theme stylesheet.
- Prevent drag movement from capturing resize-handle gestures.
0.2.0.5
- Rebuilds layouts saved by early 0.2.x development builds so 0.1.x row/column arrangements are restored cleanly in the grid designer.
- Migrates genuine 0.1.x width/row-break data once and stores only native 0.2.x geometry afterward.
- Compacts migrated control heights and row spacing so converted forms match the previous visual layout more closely.
0.2.0.4
- Migrates stored 0.1.x form layout data to native 0.2.x grid data during plugin upgrade/activation and writes it back immediately.
- Built-in form templates are normalized to native 0.2.x layout data before use.
- Removes legacy percentage-width layout values from migrated form records.
0.2.0.2
- Fixed template and legacy-layout conversion in the free-grid designer.
- Restored the existing public form flow while keeping layout behavior isolated.
0.1.9.4.6
- Initialize the administrator notification address from the WordPress site administrator email.
- Initialize the test form-sender address from the activating WordPress user email, falling back to the site administrator email.
- Store these as Contact X Form settings so later WordPress profile/settings changes do not silently replace them.
0.1.9.4.5
- Added Contact X action cards to Mail Settings and to the form editor side metabox area.
- Moved form navigation and new form creation into the form editor side column.
- Added action cards to the field editor screen and expanded app panels to use available admin width.
0.1.9.4.4
- Reworked the Field Library header into a responsive content-and-action layout.
- Added card-style Add Field and Form management actions at the upper right, wrapping below when space is limited.
0.1.9.4.4
- Removed Common settings from the Trash view so the screen stays focused on returning to forms and managing trashed forms.
- Matched Form management action-card width and height to the dashboard setting cards.
- Aligned Empty Trash and trashed-form cards to a consistent row height on desktop while retaining responsive sizing on narrow screens.
0.1.9.4
- Reworked preview mail testing to use separate administrator and sender test addresses instead of forcing both messages to the logged-in WordPress user.
- The test administrator address now starts from Contact X Form Mail Settings; the test sender address is entered explicitly for each test.
- Live To, Cc, and Bcc recipients remain protected from preview test sends.
- Clarified the test UI so the source and role of each test address are explicit.
0.1.9.4
- Gave Field Library, field editing, and Mail Settings a shared Contact X Form page identity while retaining familiar WordPress controls.
- Reworked page navigation into a compact in-app path instead of stacked WordPress-style return buttons.
- Reworked the Field Library list into a Contact X Form data panel with dedicated actions and badges.
- Reworked settings/editor surfaces so page composition is led by Contact X Form rather than the default WordPress settings-page pattern.
- Removed the redundant Trash destination card while already viewing the Trash.
0.1.9.2
- Unified the Form management card height with the other dashboard cards.
- Reworked Field Library and Mail Settings return navigation into a clearer dashboard button.
- Added a Back to dashboard button to both new-form and existing-form editor screens.
- Fixed the Move to Trash link cursor so it clearly behaves as a clickable action.
0.1.9.1
- Reworked the Trash screen to keep the same card-based visual language as the main dashboard.
- Added an Empty Trash card as the first item in the Trash grid.
- Added Explorer/Finder-style multi-selection in the Trash with Ctrl/Command-click and Shift-click.
- Added a contextual bulk-action bar for restoring or permanently deleting selected forms.
- Added a dedicated permanent-delete confirmation dialog with clear irreversible-action warnings and a very-low-frequency randomized developer aside.
- Kept single-card Restore and Delete permanently actions, and made restored forms return to the end of the manual form order.
- Restricted permanent-delete handlers to forms that are actually in the Trash.
0.1.9
- Fixed palette multi-selection drag so every selected field is inserted together instead of only the first selected item.
- Added reliable Shift+drop horizontal placement for two to four selected fields; five or more selected fields remain vertical-only.
- Improved drag feedback so multi-field helpers show whether the current drop mode is vertical or horizontal.
- Fixed left-label and hidden-label alignment in narrow multi-column layouts and added container-aware fallback so controls do not get clipped when columns become too narrow.
- Simplified WordPress navigation to a single Contact X Form sidebar entry; Field Library and Mail Settings are now reached from the in-plugin dashboard.
- Added a Form management section with New Form and a right-aligned Trash card.
- Added dashboard Trash management with restore and permanent-delete actions, and redirected editor trash actions back to the Contact X Form dashboard.
- Added drag-to-reorder form cards with saved manual order. Newly created or restored forms are appended to the end of the saved order.
- Added drag-to-Trash from the dashboard while keeping the normal Move to Trash link as a non-drag alternative.
0.1.8
- Reworked the layout editor around explicit drag-and-drop insertion points: drop above or below for a new row, or at a single boundary between columns to add to the same row.
- Made already-placed fields use the same row/column drag behavior as newly added fields, including pulling a field out of a row and automatically re-equalizing the remaining columns.
- Removed the pre-created one-, two-, three-, and four-column empty-row presets; layouts are now created directly by moving fields.
- Fixed Explorer/Finder-style palette selection so Ctrl/Command-click toggles individual fields and Shift-click selects a continuous range.
- Added multi-field dragging: normal drop creates full-width vertical rows, while Shift+drop can create an equal-width horizontal row for up to four selected fields.
- Improved palette hover help so it describes the field itself, while drag targets explain placement.
- Fixed hidden-label alignment when another field in the same row uses a left-side label.
- Added preview test-send mode for draft form previews. Confirmation, sending, and Thanks can be tested before publishing while administrator and auto-reply messages are rerouted to the tester’s account email instead of live recipients.
- Suppressed live submission hooks and external side effects during preview test sends, and kept redirect-style Thanks inside the preview for inspection.
- Added built-in English slugs to form templates, including
contact, and made the starter Contact form use the same template definition as newly created Contact forms.
0.1.7.3
- Removed the dedicated-page content wrappers so normal theme selectors such as direct-child heading styles keep working; hidden boundary markers now handle Confirmation/Thanks switching.
- Kept visually hidden labels accessible while reserving label height only when a same-row field has an above-field label, preventing uneven input alignment on desktop.
- Changed the field palette to Explorer/Finder-style selection: single-click selects, Ctrl/Command-click adds or removes selections, Shift-click selects a range, and double-click adds only that one field.
- Added multi-field dragging from the palette; selected fields are inserted together as full-width rows.
- Added left/right drop targets on existing fields so one dragged field can create equal two-, three-, or four-column rows automatically.
- Added row-aware vertical drop targets so dragging above or below keeps existing columns intact instead of breaking the row while dragging.
- Reset a row to equal widths when a field is added to or removed from that row; custom widths remain available in Properties afterward.
- Added concise hover guidance and clearer selected/hover/unselected palette states.
0.1.7.2
- Reorganized the dashboard into Common Settings and Forms sections with consistent cards and responsive wrapping.
- Added Back to dashboard links to the Field Library and Mail Settings screens.
- Restored slug editing to the normal WordPress permalink line instead of a second plugin-specific permalink editor.
- Fixed draft previews so draft forms use WordPress preview URLs instead of the public root-level route.
- Increased the initial editor height for Form Page, Confirmation, and Thanks content.
- Added precise drag insertion zones so palette fields can be dropped above, below, or between existing fields.
- Added one-, two-, three-, and four-column row presets with visible drop slots that set field widths automatically.
- Improved click-to-add behavior so fields are inserted after the currently selected item instead of always at the bottom.
- Made common mail defaults populate missing sender/recipient values in existing development forms and remain the initial values for new forms.
- Improved
{all_fields}output so every value is labeled and multiline fields are formatted clearly. - Updated the starter contact-form notification and auto-reply templates to use the formatted all-fields output while keeping plain text as the default mail format.
0.1.7.1
- Fixed a front-end fatal error caused by an invalid required-attribute helper call.
- Fixed drag-and-drop from the field palette into the form layout canvas.
- Moved the root-level permalink editor above the editor tabs so it remains available from every tab when a Form Page is enabled.
- Added clearer guidance for creating two-, three-, and four-column layouts with field widths and explicit New Row breaks.
- Added dashboard cards and management screens for the Field Library and common mail defaults.
- Added add/edit/delete field-library management with usage counts; built-in fields cannot be deleted and fields in use cannot be deleted.
- Added readable insertion tags such as
{Email|email}while keeping short tags such as{email}fully supported. - Made mail insertion buttons use human-readable labels and automatically reflect the fields currently used by the form.
- Reworked the starter contact-form mail templates so administrator and sender emails list each field with a clear label instead of relying on
{all_fields}. - Expanded the CSS Grid layout widths to full, 3/4, 2/3, 1/2, 1/3, and 1/4, while keeping a New Row layout part for explicit row breaks.
- Expanded Confirmation and Thanks editors to use the full tab width and added insert buttons for stage controls and form-field tags.
- Added common mail defaults for administrator address, sender name/address, and reply-to address; new forms inherit these values and can still be edited individually.
0.1.6
- Moved the form page content editor into the Form Page tab so the default editor no longer occupies the top of the form edit screen.
- Forced the YBP CX Form post type to use the classic editing experience even on sites that use the block editor for posts and pages.
- Kept normal WordPress title, permalink/slug, featured image, status, and revision controls for form pages.
- Renamed Dedicated Page UI labels to Form Page for clearer wording.
- Expanded the built-in Contact Form template into a ready-to-use page with contact copy, phone field, inquiry choices, confirmation HTML, Thanks HTML, administrator mail, and sender auto-reply.
- Added page content to built-in templates and made template application update the Form Page editor as well as fields and settings.
- Added a safe upgrade refresh for the untouched draft starter form from earlier development versions.
0.1.5
- Added a real plugin dashboard as the main Contact X Form screen.
- Added card-based access to every saved form, with edit, duplicate, view, shortcode copy, and trash actions.
- Added a New Form card while keeping the standard WordPress form list available as a submenu.
- Kept form edit screens under the Contact X Form menu.
0.1.4
- Rebuilt the form builder as a three-pane drag-and-drop workspace.
- Added selected-field properties for label position, required/optional, width, placeholder, description, choices, and content.
- Added above, left, and visually hidden label positions while keeping hidden labels available to assistive technology.
- Changed the front-end field layout to CSS Grid.
- Added built-in form templates for blank, contact, document request, service application, event/seminar application, and survey forms.
- Added a draft Standard Contact Form on a fresh installation when no forms exist.
- Added form duplication for every saved form.
- Consolidated form settings into tabs instead of stacking all settings on one long screen.
- Added an add-on API for registering form templates.
0.1.3
- Added AJAX-based Input -> Confirmation -> Thanks stage switching without page reloads.
- Added History API handling so browser Back returns to the same form instance and original input page.
- Replaced the Confirmation history entry with Thanks after a successful send to prevent browser Back from reopening a sendable confirmation state.
- Added per-submission duplicate-send protection.
- Added freely editable Confirmation and Thanks HTML with placeholders.
- Added a configurable Thanks return button.
- Added featured-image support to dedicated form pages.
- Changed dedicated form page permalinks to root-level slugs such as
/contact/instead of/contact-form/contact/. - Enabled the normal WordPress block editor/permalink experience for dedicated form pages.
0.1.2
- Added a reusable field library.
- Added standard library fields for full name, split name, Kana name, telephone, mobile phone, company, department, postal address, and date of birth.
- Added combined Full name and Full name (Kana) fields alongside split name fields.
- Fields created by users are automatically available for reuse after saving.
- Field keys are now managed internally and are no longer editable in the normal Form Builder UI.
- Added an add-on API for registering reusable library fields.
0.1.1
- Fixed nonce-verification warnings reported by Plugin Check in form processing.
- Standardized the built-in sender email field as the core
emailfield. - Kept the standard email field available for mail settings and future add-on integration.
0.1.0
- Initial development release.
- Added flexible form builder and responsive column widths.
- Added dedicated form pages and shortcode embedding with simultaneous use.
- Added optional confirmation and Thanks screens.
- Added administrator and sender mail configuration.
- Added the standard email field used by mail settings and future add-ons.
- Added initial add-on/field registration API and extension hooks.
- Added Japanese translation bundled with the development package.
