cloakwp / acf-abstractions
A set of OOP abstractions around ACF to improve developer experience.
Installs: 21
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 0
Open Issues: 0
Type:wordpress-plugin
Requires
- cloakwp/core: ^0.0
- composer/installers: ^2.2
- vinkla/extended-acf: dev-master || dev-main
README
A set of OOP abstractions around ACF to improve developer experience.
This package is meant to be used alongside the wonderful vinkla/extended-acf
package, which provides OOP abstractions for registering fields. This package simply extends that package with some useful extras:
- Register ACF Groups with the
FieldGroup
class (a wrapper aroundvinkla/extended-acf
'sregister_extended_field_group
function) - Register ACF Blocks with the
Block
class (all registered block instances become accessible via theBlockRegistry
singleton) - Register ACF Options Pages with the
OptionsPage
class - Some useful, special fields that extend ACF's built-in field types:
InnerBlocks
- An auto-populated ACFFlexible Content
field enabling you to select/arrange ACF blocks (assuming you register your ACF blocks via this package'sBlock
class). AssigningInnerBlocks
as a field of an ACF block enables nesting blocks within each other for powerful block composability. You can control which blocks are available for selection on a per-instance basis via theincludes
andexcludes
methods.HorizontalAlignment
- An auto-populated ACFButton Group
field with options forleft
,center
,right
, andjustify
(displayed as icons). You can control which of those 4 options are available on a per-instance basis.VerticalAlignment
- An auto-populated ACFButton Group
field with options fortop
,center
, andbottom
(displayed as icons). You can control which of those 3 options are available on a per-instance basis.MenuSelect
- An auto-populated ACFSelect
field allowing you to select a registered WordPress menu.PostTypeSelect
- An auto-populated ACFSelect
field allowing you to select a registered WordPress post type.ThemeColorPicker
- An auto-populated ACFRadio Button
field allowing you to select a color from the active theme'stheme.json
color palette, with special CSS styling to mimic the built-in Gutenberg color picker.ResponsiveField
- Enable screen breakpoint-specific values for any ACF field by simply wrapping it in aResponsiveField
instance (eg.ResponsiveField::make(Number::make('Gap'))
). Under-the-hood, it uses aGroup
and set ofTab
fields, and duplicates the provided field for each breakpoint tab. The resulting value output isyour_field_name: { mobile: '1', tablet: '2', tablet_wide: '3', laptop: '4', desktop: '5', desktop_wide: '6' }
. You can define which breakpoints are available on a per-instance basis.
Installation
composer require cloakwp/acf-abstractions
Usage
Docs coming soon -- for now, see the source code of this package's src
directory; it's mostly self-documenting.