tombroucke/acf-objects
| Install | |
|---|---|
composer require tombroucke/acf-objects |
|
| Latest Version: | 4.2.5 |
| PHP: | ^8.0 |
| Laravel: | 4 – 12 |
| License: | MIT |
| Last Updated: | Jun 30, 2025 |
| Links: | GitHub · Packagist |
ACF Objects
This package converts the return values of ACF to objects with easy-to-use methods.
Instead of calling get_field('selector'), you can use the AcfObjects facade: AcfObjects::getField('selector')
Installation
composer require tombroucke/acf-objects
You might have to clear wp acorn cache: wp acorn optimize:clear
Usage
Checkbox
When getting the value for a Checkbox field, an Illuminate/Support/Collection will be returned.
$checkboxValues = AcfObjects::getField('checkbox');
ColorPicker
{{ AcfObjects::getField('color_picker') }}
DatePicker
When getting the value for a DatePicker field, a Carbon instance will be returned. If the field has no value, a FallbackField will be returned.
AcfObjects::getField('date')
@if(AcfObjects::getField('date')->isSet())
AcfObjects::getField('date')->format(get_option('date_format))
@endif
DateTimePicker
When getting the value for a DateTimePicker field, a Carbon instance will be returned. If the field has no value, a FallbackField will be returned.
AcfObjects::getField('date_time')
{{ AcfObjects::getField('email')->obfuscate() }}
File
{{ AcfObjects::getField('file')->url() }}
{{ AcfObjects::getField('file')->title() }}
{{ AcfObjects::getField('file')->filesize() }}
Gallery
When getting the value for a Group field, an Illuminate/Support/Collection will be returned.
@foreach (AcfObjects::getField('gallery') as $image)
<a href="{{ $image->url('large') }}">
{!! $image->image('medium') !!}
</a>
@endforeach
Google Maps
{{ AcfObjects::getField('google_map')->address() }}
{{ AcfObjects::getField('google_map')->lat() }}
{{ AcfObjects::getField('google_map')->long() }}
Group
$settings = AcfObjects::getField('settings')
->default([
'foo' => 'bar'
]);
echo $settings->get('foo');
{{ AcfObjects::getField('settings')->get('name') }}
Image
{!!
AcfObjects::getField('image')
->url('medium');
!!}
{!!
AcfObjects::getField('image')
->attributes(['class' => 'w-100 h-100 object-fit-cover'])
->image('thumbnail');
!!}
{!!
AcfObjects::getField('image')
->default(asset('image/placeholder.jpg')->uri())
->image('thumbnail');
!!}
Link
{{ AcfObjects::getField('link')->url() }}
@php
$link = AcfObjects::getField('link');
@endphp
@if($link->isSet())
<a href="{{ $link->url() }}" target="{{ $link->target() }}">
{{ $link->title() }}
</a>
@endif
// or
@if($link->isSet())
{!! $link->link() !!}
@endif
Number
{{ AcfObjects::getField('number') }}
Repeater
When getting the value for a Repeater field, an Illuminate/Support/Collection will be returned.
AcfObjects::getField('repeater')
@unless(AcfObjects::getField('repeater')->isEmpty())
<ul>
@foreach(AcfObjects::getField('repeater') as $item)
<li>{!! $item['name'] !!}</li>
@endforeach
</ul>
@endunless
Text
{{ AcfObjects::getField('text')->default(get_the_title()) }}
TextArea
{{ AcfObjects::getField('text_area') }}
Upgrading to v4.x from v3.x
Use new facade
- Acf::getField(
+ AcfObjects::getField(
Use new facade and remove deprecated get_field method
- Acf::get_field(
+ AcfObjects::getField(
Use new facade
- use Otomaties\AcfObjects\Acf;
+ use Otomaties\AcfObjects\Facades\AcfObjects;
Array access for repeaters instead of the get() method.
- $repeater->get('sub_field')
+ $repeater['sub_field']
Related Packages
Version History
| Version | Released | PHP | Laravel | License |
|---|---|---|---|---|
| 4.2.5 | ^8.0 | * | MIT | |
| 4.2.4 | ^8.0 | * | MIT | |
| 4.2.3 | ^8.0 | * | MIT | |
| 4.2.2 | ^8.0 | * | MIT | |
| 4.2.1 | ^8.0 | * | MIT | |
| 4.2.0 | ^8.0 | * | MIT | |
| 4.1.0 | ^8.0 | * | MIT | |
| 4.0.1 | ^8.0 | * | MIT | |
| 4.0.0 | ^8.0 | * | MIT | |
| 3.10.0 | >=8 | MIT | ||
| 3.9.2 | >=8 | MIT | ||
| 3.9.1 | >=8 | MIT | ||
| 3.9.0 | >=8 | MIT | ||
| 3.8.0 | >=8 | MIT | ||
| 3.7.0 | >=8 | MIT | ||
| 3.6.0 | >=8 | MIT | ||
| 3.5.0 | >=8 | MIT | ||
| 3.4.0 | >=8 | MIT | ||
| 3.3.0 | >=8 | MIT | ||
| 3.2.0 | >=8 | MIT | ||
| 3.1.2 | >=8 | MIT | ||
| 3.1.1 | >=8 | MIT | ||
| 3.1.0 | >=8 | MIT | ||
| 3.0.4 | >=8 | MIT | ||
| 3.0.3 | >=8 | MIT | ||
| 3.0.2 | >=8 | |||
| 3.0.1 | >=8 | |||
| 3.0.0 | >=8 | |||
| 2.2.4 | ||||
| 2.2.3 |
Showing the latest 30 of 48. See every release on Packagist