PHPackages                             eduardo-marcolino/acf-fields-in-custom-table - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. eduardo-marcolino/acf-fields-in-custom-table

ActiveWordpress-plugin[Utility &amp; Helpers](/categories/utility)

eduardo-marcolino/acf-fields-in-custom-table
============================================

ACF: Fields in Custom Table

0.5(4y ago)28513[5 issues](https://github.com/eduardo-marcolino/acf-fields-in-custom-table/issues)GPL-2.0+PHPPHP &gt;=7.0

Since Nov 26Pushed 4y ago4 watchersCompare

[ Source](https://github.com/eduardo-marcolino/acf-fields-in-custom-table)[ Packagist](https://packagist.org/packages/eduardo-marcolino/acf-fields-in-custom-table)[ Docs](https://github.com/eduardo-marcolino/acf-fields-in-custom-table)[ RSS](/packages/eduardo-marcolino-acf-fields-in-custom-table/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependencies (1)Versions (7)Used By (0)

ACF: Fields in Custom Table
===========================

[](#acf-fields-in-custom-table)

This ACF plugin makes it possible to store ACF data in structured database tables instead of WordPress core meta tables.

It uses ACF's `acf/update_field_group` hook to create/update the database and then uses `acf/save_post` hook to store the data.

It was heavily inspired by Austin Ginder's post .

Supported Fields
----------------

[](#supported-fields)

- Text
- Text Area
- Number
- Range
- Email
- URL
- Password
- Image
- File
- Wysiwyg Editor
- oEmbed
- Select
- Checkbox
- Radio Button
- Button Group
- True / False
- Date Picker
- Date Time Picker
- Time Picker
- Color Picker
- Link
- Post Object
- Page Link
- Relationship
- Taxonomy
- User

Relational Fields
-----------------

[](#relational-fields)

This plugin supports the following relational field types: Post Object, Page Link, Relationship, Taxonomy and User.

It can store both single and multiple values based on the `multiple` option.

- If it's a single value field, then the column type will be `bigint(20) unsigned`
- If it's a multiple value field, then the column type will be longtext and the date will be stored in json format.

You can query relational fields with multiple values using using MySQL's function [JSON\_CONTAINS](https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html#function_json-contains). Here is an example:

Table:

```
+---------+-------------------+--------+
| post_id |       title       | stores |
+---------+-------------------+--------+
|       1 | Lord of the Flies | [1,2]  |
|       2 | The Island        | [2]    |
|       3 | 1984              | [3]    |
+---------+-------------------+--------+

```

Query:

```
SELECT * FROM wp_acf_books WHERE JSON_CONTAINS(stores, 2, '$')
```

The query above will return "Lord of the Flies" and "The Island"

Filters
-------

[](#filters)

The plugin provides filters to allow developers to customize the plugin behavior:

### Chaging table prefix

[](#chaging-table-prefix)

```
add_filter( 'acfict_table_prefix', function( $prefix, $tablename ) {
  return 'newprefix_';
}, 10, 2);
```

### Disabling WP Post Meta storage

[](#disabling-wp-post-meta-storage)

By default the data is still stored in WP Post Meta but you can disable it using acf filter `acf/pre_update_value` as such:

```
//Will disable WP Post Meta storage for all field groupd with "ACF: Fields in Custom Table" enabled.
add_filter( 'acf/pre_update_value', function( $default, $value, $post_id, $field )
{
  if( $field[ACF_FICT::SETTINGS_ENABLED] ) {
    return false;
  }

  return $default;
}, 10, 4);
```

ACF Compatibility
-----------------

[](#acf-compatibility)

This plugin was tested with *ACF 5 FREE Version* .

Screenshots
-----------

[](#screenshots)

[![01](.wordpress-org/screenshot-1.png)](.wordpress-org/screenshot-1.png)

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity43

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~45 days

Total

5

Last Release

1813d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/808889?v=4)[Eduardo Marcolino](/maintainers/eduardo-marcolino)[@eduardo-marcolino](https://github.com/eduardo-marcolino)

---

Top Contributors

[![eduardo-marcolino](https://avatars.githubusercontent.com/u/808889?v=4)](https://github.com/eduardo-marcolino "eduardo-marcolino (14 commits)")

---

Tags

custom fieldsfieldsmetaacfadvanced custom fields

### Embed Badge

![Health badge](/badges/eduardo-marcolino-acf-fields-in-custom-table/health.svg)

```
[![Health](https://phpackages.com/badges/eduardo-marcolino-acf-fields-in-custom-table/health.svg)](https://phpackages.com/packages/eduardo-marcolino-acf-fields-in-custom-table)
```

###  Alternatives

[vinkla/extended-acf

Register advanced custom fields with object-oriented PHP

503264.8k11](/packages/vinkla-extended-acf)[hellonico/acf-country

A country field for ACF.

12193.2k](/packages/hellonico-acf-country)[mmirus/acf-flexible-content-title

Display the content of a field in the title bar of your Advanced Custom Fields flexible content sections.

362.8k](/packages/mmirus-acf-flexible-content-title)[mcguffin/acf-customizer

Use ACF Fields in customizer.

7611.3k](/packages/mcguffin-acf-customizer)[mcguffin/acf-openstreetmap-field

WordPress ACF Field for OpenStreetMap

1093.7k](/packages/mcguffin-acf-openstreetmap-field)[log1x/acf-fluent-helpers

Simple set of helper functions for ACF Fluent auto-loaded with Composer using generic function names.

1513.8k](/packages/log1x-acf-fluent-helpers)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
