make.wordpress.org ๐Ÿ”— **Source:** [make.wordpress.org](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/) > [!note]+ Document Notes > tags: [wordpress-core, dataviews, dev-notes] > author: Andrรฉ Maneiro > source: Make WordPress Core > reference: https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/ > date created: 2025-12-28 14:30 > > # ๐Ÿท๏ธ Title: DataViews, DataForm, et al. in WordPress 6.9 > <!-- deep-read:sections start --> ## ๐Ÿงฐ Action Inbox - [H1] Review Field API validation changes โ€” async/rule-based system #wordpress-dev - [H2] Test DataViewsPicker for media selection โ€” grid layout implementation #ui-testing - [H3] Evaluate @wordpress/views package โ€” persistence integration #architecture ## ๐Ÿงญ Table of Contents - [๐Ÿ“ Summary](#-summary) - [๐Ÿ“– Main Content](#-main-content) - [๐Ÿ—’๏ธ Notes](#๏ธ-notes) - [๐Ÿ“š References](#-references) - [๐Ÿ—ฃ๏ธ Paraphrase](#๏ธ-paraphrase) - [๐Ÿ“ฐ Newsletter](#-newsletter) - [โœ… Action Items](#-action-items) - [๐Ÿงช Hypotheses](#-hypotheses) - [๐Ÿ“Š Methodology](#-methodology) - [โ“ Questions](#-questions) - [๐Ÿ”ฎ Future Research](#-future-research) - [๐Ÿ’ก Implications](#-implications) - [๐Ÿง  Learning Styles Assessment](#-learning-styles-assessment) - [๐Ÿ“Š Accessibility Assessment](#-accessibility-assessment) - [๐ŸŒ DEIB Assessment](#-deib-assessment) - [โœ… Logical Validity](#-logical-validity) - [๐Ÿ›ก๏ธ DARVO Analysis](#-darvo-analysis) - [๐ŸŽฏ Conclusion](#-conclusion) ### ๐Ÿ”— References - [DataViews Developer Docs](https://developer.wordpress.org/) - [DataViews Storybook](https://wordpress.github.io/gutenberg/) ## ๐Ÿ“ Summary - WordPress 6.9 introduces major expansions to the DataViews ecosystem with enhanced Field API, new controls, and persistence capabilities - Field API grows from 3 to 13 types with async validation, nested data support, and 16 bundled edit controls - DataViews gains grouping, infinite scroll, custom layouts, and locked filters for more flexible data presentation - New @wordpress/views package provides automatic state persistence using WordPress preferences - DataViewsPicker component enables selection-focused interfaces for media and post picking scenarios - DataForm receives new card/row layouts and controlled validation with async support ## ๐Ÿ“– Main Content The WordPress 6.9 release brings substantial improvements to the DataViews ecosystem, a framework for building data-driven interfaces within WordPress. These changes represent a significant evolution from basic table views toward a comprehensive data management system. The Field API expansion from 3 to 13 field types includes new types like boolean, color, date, email, media, password, telephone, and url. The validation system has been completely rebuilt around a rule-based approach supporting both synchronous and asynchronous validation through required, elements, and custom rules. DataViews itself gains enterprise-grade features like grouping by field values, infinite scroll pagination, locked filters that users cannot modify, and the ability to build custom layouts using exposed subcomponents. The new @wordpress/views package handles view state persistence automatically through WordPress preferences. Two new specialized components emerge: DataViewsPicker for selection workflows and enhanced DataForm with card/row container layouts. These additions position WordPress to handle more complex admin interfaces while maintaining developer-friendly APIs. ## ๐Ÿ—’๏ธ Notes #### โฑ๏ธ [00:00](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#field-api) โ€” [H1] Field API Expansion - Key idea: Field types expand from 3 to 13 with comprehensive defaults for sorting, validation, filtering, editing, and rendering - Evidence: "The field type has been expanded to describe the default field's behaviors for sorting, validation, filtering, editing, and rendering" #### โฑ๏ธ [00:01](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#isvalid) โ€” [H2] Rule-Based Validation System - Key idea: Validation completely overhauled to support async operations and rule-based configuration - Evidence: "Validation has been completely overhauled to leverage a rule-base system. All field types support the required and elements rule, as well as defining custom validation via the custom function โ€” that supports both sync and async modes" #### โฑ๏ธ [00:02](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#setvalue) โ€” [H3] Nested Data Support - Key idea: setValue introduction enables working with nested object properties using dot notation - Evidence: "By using the dot notation in the field.id (e.g., user.profile.name), the getValue and setValue methods will automatically read and write the data from the corresponding object property" #### โฑ๏ธ [00:03](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#edit) โ€” [H2] Expanded Edit Controls - Key idea: Bundled edit controls expand from 5 to 16 with configuration options for behavior and appearance - Evidence: "Field authors can define how a field behaves when it's edited... which have been expanded from 5 to 16" #### โฑ๏ธ [00:04](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#filterby) โ€” [H3] Enhanced Filter Operations - Key idea: Filter operators increase from 6 to 22 with type-specific operations and user input support - Evidence: "Filters have gained more operators (from 6 to 22) and they are now bound to the field type" #### โฑ๏ธ [00:05](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#getelements) โ€” [H3] Async Element Loading - Key idea: New getElements function fetches options on-demand to improve performance - Evidence: "We've introduced a getElements async function that fetches elements on demand, only when they are needed" #### โฑ๏ธ [00:06](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#view) โ€” [H2] DataViews Grouping and Layout Controls - Key idea: All layouts support grouping by field with locked filters and table alignment options - Evidence: "All the bundled layouts โ€“table, grid, and listโ€“ support now grouping the items by a given field by declaring a groupByField in the view" #### โฑ๏ธ [00:07](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#paginationinfo) โ€” [H3] Infinite Scroll Implementation - Key idea: All bundled layouts support infinite scroll with custom handler integration - Evidence: "All bundled layouts -table, list, and grid- now support infinite scroll. It's enabled per view type, and DataViews takes a infiniteScrollHandler function" #### โฑ๏ธ [00:08](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#renderitemlink) โ€” [H3] Routing Library Integration - Key idea: renderItemLink prop enables integration with modern routing libraries like TanStack Router - Evidence: "The renderItemLink prop lets you provide a custom component that wraps clickable fields... allows integration with routing libraries (like TanStack Router or React Router)" #### โฑ๏ธ [00:09](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#children) โ€” [H2] Custom Layout Composition - Key idea: DataViews exposes 9 subcomponents for building custom layouts while preserving internal logic - Evidence: "When children are provided, you can build custom layouts while leveraging DataViews' internal state management and data handling logic" #### โฑ๏ธ [00:10](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#persist-views-via-wordpressviews) โ€” [H1] Views Package for Persistence - Key idea: New @wordpress/views package provides automatic view state persistence using WordPress preferences - Evidence: "A new package for managing DataViews view state with persistence using WordPress preferences" #### โฑ๏ธ [00:11](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#dataviewspicker) โ€” [H2] Selection-Focused DataViewsPicker - Key idea: DataViewsPicker variant designed for item selection workflows with action buttons - Evidence: "DataViewsPicker is a selection-focused variant of DataViews designed for building item picker interfaces. Use cases include a media picker for selecting images" #### โฑ๏ธ [00:12](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#form) โ€” [H2] DataForm Layout Enhancements - Key idea: DataForm gains card and row container layouts with enhanced panel configuration - Evidence: "The form API has been updated to accommodate the changes to existing layouts and the introduction of two new ones: card and row" #### โฑ๏ธ [00:13](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/#validity) โ€” [H2] Controlled Validation System - Key idea: DataForm validation becomes controlled with validity prop and useFormValidity hook - Evidence: "Validation has been revamped in 6.9: it's now controlled (DataForm has a validity prop), and supports asynchronous validation" ## ๐Ÿ“š References - [WordPress 6.9 DataViews Changes](https://make.wordpress.org/core/2025/11/11/dataviews-dataform-et-al-in-wordpress-6-9/) - [DataViews Developer Documentation](https://developer.wordpress.org/) - [DataViews Storybook](https://wordpress.github.io/gutenberg/) - [WordPress 7.0 Iteration Issue](https://github.com/WordPress/gutenberg/issues/) ## ๐Ÿ—ฃ๏ธ Paraphrase - WordPress 6.9 significantly expands the DataViews framework with 13 field types, rule-based async validation, and nested data support through dot notation - DataViews gains enterprise features like grouping, infinite scroll, locked filters, and custom layout composition using 9 exposed subcomponents - New specialized components include DataViewsPicker for selection workflows and enhanced DataForm with card/row layouts and controlled validation ## ๐Ÿ“ฐ Newsletter ๐Ÿš€ **WordPress 6.9 Brings Major DataViews Enhancements** The latest WordPress release transforms the DataViews ecosystem into a comprehensive data management framework. With 13 field types, async validation, and nested data support, building complex admin interfaces becomes much more straightforward. **Key Benefits:** - **Faster Development**: Pre-built field types and validation rules reduce boilerplate code - **Better UX**: Infinite scroll, grouping, and locked filters create polished interfaces - **Flexible Architecture**: Custom layouts using exposed subcomponents maintain full control **Get Started:** Try the DataViewsPicker for media selection or explore the new @wordpress/views package for automatic state persistence. The card and row layouts in DataForm make complex forms more manageable. Resources: [DataViews Docs](https://developer.wordpress.org/), [Storybook Examples](https://wordpress.github.io/gutenberg/), [GitHub Issues](https://github.com/WordPress/gutenberg/) ## โœ… Action Items #### WordPress - Core: Integrate DataViews validation with existing WordPress validation patterns - Core Program Team: Document DataViews migration paths for existing admin screens - Design: Create UX guidelines for DataViewsPicker selection workflows - Documentation: Expand DevHub with DataViews best practices and performance considerations - Community: Develop DataViews workshop materials for WordCamps and meetups #### OSPO - Developer Support: Create DataViews training materials for plugin developers - Community Engagement: Fund DataViews accessibility audits and improvements #### DevRel - Developer advocacy: Present DataViews capabilities at WordPress conferences - Education: Build DataViews curriculum for Learn WordPress - Developer experience: Improve DataViews TypeScript definitions and error messages - Developer marketing: Showcase DataViews success stories and case studies ## ๐Ÿงช Hypotheses - DataViews async validation will reduce form submission errors by enabling real-time server-side validation - The @wordpress/views persistence package will improve user experience by maintaining view preferences across sessions - DataViewsPicker will increase adoption of WordPress as a headless CMS for media-rich applications - Nested data support through dot notation will simplify complex form handling in WordPress admin ### ๐Ÿ“Š Methodology - A/B test form error rates with async validation enabled vs disabled across WordPress admin screens - Survey plugin developers on DataViews adoption barriers and implementation challenges - Measure performance impact of infinite scroll vs traditional pagination in large datasets - Track usage patterns of DataViewsPicker in media selection workflows ### โ“ Questions - How will DataViews validation rules integrate with existing WordPress REST API validation? - What performance implications emerge from async validation in high-traffic WordPress installations? - How should plugin developers migrate existing admin interfaces to use DataViews components? ### ๐Ÿ”ฎ Future Research - Integration patterns between DataViews and WordPress's existing admin table classes - Performance optimization strategies for DataViews with large datasets (10k+ records) - Accessibility patterns for DataViewsPicker selection interfaces with screen readers ### ๐Ÿ’ก Implications - Practice: Plugin developers need training on DataViews patterns to build modern WordPress admin interfaces - Policy: WordPress core should establish guidelines for when to use DataViews vs traditional admin tables - Security: Async validation introduces new attack vectors requiring input sanitization best practices - Education: Developer documentation requires comprehensive DataViews examples and migration guides - Funding: DataViews development should receive continued investment to maintain competitive admin UX ### ๐Ÿง  Learning Styles Assessment Reading level estimate: 12th grade (technical documentation with specialized WordPress terminology) #### ๐Ÿ‘€ Visual learners - Present: Code examples, API tables, component hierarchy diagrams - Improve: DataViews workflow flowcharts, validation rule decision trees, layout composition examples #### ๐Ÿ”Š Aural learners - Present: None explicitly available - Improve: 5-minute audio walkthrough of key DataViews changes, recorded API explanations #### ๐Ÿ—ฃ๏ธ Verbal learners - Present: Detailed explanations, field type definitions, validation rule descriptions - Improve: Real-world analogies for DataViews concepts, glossary of new terminology #### ๐Ÿงฉ Kinesthetic learners - Present: Storybook interactive examples, code sandbox links - Improve: Step-by-step DataViews implementation tutorials, hands-on workshops #### ๐Ÿง  Logical learners - Present: Systematic API documentation, before/after comparisons, structured change lists - Improve: DataViews decision matrices, performance benchmarks, migration timelines #### ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ Social learners - Present: Community discussion links, team acknowledgments - Improve: DataViews study groups, peer code review sessions, community showcases #### ๐Ÿง˜โ€โ™€๏ธ Solitary learners - Present: Comprehensive documentation, self-contained examples - Improve: DataViews self-assessment quizzes, individual project templates #### ๐ŸŒฟ Naturalistic learners - Present: Limited environmental connections - Improve: DataViews ecosystem metaphors, component lifecycle analogies ### ๐Ÿ“Š Accessibility Assessment #### Screen reader semantics - Present: Structured headings, code examples with clear labels - Improve: ARIA role descriptions for DataViews components, alt text for API diagrams #### Keyboard navigation - Present: Standard HTML structure supports keyboard navigation - Improve: Document DataViews keyboard interaction patterns, focus management examples #### Contrast and readability - Present: Standard WordPress.org styling meets contrast requirements - Improve: Ensure code syntax highlighting maintains 4.5:1 contrast ratios #### Text resizing and reflow - Present: Responsive design supports 200% zoom - Improve: Test DataViews component examples at various zoom levels #### <!-- deep-read:sections end -->