Files
headless-2026-03/wp-content/themes/headless/includes/vendors/acf.php

34 lines
1.1 KiB
PHP

<?php
// Disable ACF / ACFE modules
add_filter( 'acf/settings/enable_post_types', '__return_false' );
add_action( 'acf/init', 'headless_acf_init' );
function headless_acf_init() {
acf_update_setting( 'acfe/modules/block_types', false );
acf_update_setting( 'acfe/modules/categories', false );
acf_update_setting( 'acfe/modules/forms', false );
acf_update_setting( 'acfe/modules/options', false );
acf_update_setting( 'acfe/modules/options_pages', false );
acf_update_setting( 'acfe/modules/post_types', false );
acf_update_setting( 'acfe/modules/taxonomies', false );
acf_update_setting( 'acfe/modules/templates', false );
}
// Customize ACF Flexible Content settings modal field to only show layout field groups
add_filter( 'acf/prepare_field', 'headless_acfe_flexible_settings_prepare_field', 20 );
function headless_acfe_flexible_settings_prepare_field( $field ) {
if ( ( $field['_name'] ?? '' ) !== 'acfe_flexible_settings' ) {
return $field;
}
$field['choices'] = array_filter(
$field['choices'],
function ( $key ) {
return strpos( $key, 'group_layout_' ) === 0;
},
ARRAY_FILTER_USE_KEY
);
return $field;
}