✒️ A fluent interface for the Advanced Custom Fields WordPress plugin
Clone or download
Latest commit 38ae8d5 Jul 31, 2018

readme.md

Build Status Code Quality Packagist Version MIT License

Are you using ACF Fluent?

ACF Fluent recently hit 3000 downloads, which I think is pretty cool! I mean, it's not a ton of downloads, but cool nonetheless. If you're using it, I would love to hear your feedback. Shoot me an email and let me know what kind of projects you've used it on :)

What is ACF Fluent?

ACF Fluent is a fluent interface for the Advanced Custom Fields WordPress plugin. It enables theme developers to create custom field "queries" using an expressive, fluent interface that makes templating with ACF a breeze.

Why?

If you make heavy use of Advanced Custom Fields in your WordPress templates (you should), then you probably find yourself writing a lot of repetitive code just to print out your fields. For example, you might have a heading field for your page's hero section:

<?php

$heading = get_field('heading');

if (is_null('heading')) {
    $heading = get_the_title();
} else {
    $heading = esc_html($heading);
}

?>

<h1><?= $heading ?></h1>

As you know, this type of template coding will clutter up your template files quickly, turning your well-structured HTML into a mess of PHP tags and blocks. The worst part is, you'll find yourself not only in a clutter of PHP logic, but repeating the same logic over and over!

ACF Fluent aims to minimize the mess with a fluent builder that lets you easily get and update fields and sub fields and add constraints along the way. Let's take a look at the same functionality above, using ACF Fluent:

<?php

use Samrap\Acf\Acf;

$heading = Acf::field('heading')
                ->default(get_the_title())
                ->escape()
                ->get();

?>

<h1><?= $heading ?></h1>

Interested? ACF Fluent packs a lot more features and has no dependencies. Check out the docs see all of the awesome features.

Documentation

Contributing

ACF Fluent is still in its early stages. Issues, PRs, and enhancement ideas are encouraged and appreciated.


Tweeter Built by @thesamrapaport

The ACF logo is owned by Elliot Condon and the Advanced Custom Fields Plugin