<?php /** * Register Storage Model: Taxonomy * */ function cpac_register_storage_model_taxonomy( $storage_models, $cac ) { include_once "storage_model/taxonomy.php"; if ( $taxonomies = $cac->get_taxonomies() ) { foreach ( $taxonomies as $taxonomy ) { $storage_model = new CPAC_Storage_Model_Taxonomy( $taxonomy ); $storage_models[ $storage_model->key ] = $storage_model; } } return $storage_models; } add_filter( 'cac/storage_models', 'cpac_register_storage_model_taxonomy', 10, 2 ); /** * Register Columns for storage model Taxonomy * */ function cpac_register_taxonomy_columns( $columns ) { $columns['CPAC_Column_Term_ID'] = CAC_PRO_DIR . 'classes/taxonomy/column/ID.php'; $columns['CPAC_Column_Term_Excerpt'] = CAC_PRO_DIR . 'classes/taxonomy/column/excerpt.php'; return $columns; } add_filter( 'cac/columns/custom/type=taxonomy', 'cpac_register_taxonomy_columns' ); /** * Custom Field value: Only works in combination with ACF * */ function cpac_taxonomy_field_raw_value( $raw_value, $id, $field_key, $column ) { if ( 'taxonomy' == $column->storage_model->type ) { $raw_value = get_option( $column->storage_model->taxonomy . '_' . $id . '_' . $field_key ); } return $raw_value; } add_filter( 'cac/column/meta/raw_value', 'cpac_taxonomy_field_raw_value', 10, 4 );