wpseek.com
A WordPress-centric search engine for devs and theme authors
wp_get_entity_view_config › WordPress Function
Since7.1.0
Deprecatedn/a
› wp_get_entity_view_config ( $kind, $name )
| Parameters: (2) |
|
| Returns: |
|
| Defined at: |
|
| Codex: |
Returns the view configuration for the given entity.
Builds the default configuration shared by all entities and then exposes it through the dynamicget_entity_view_config_{$kind}_{$name} filter so that core
and third parties can provide the configuration for a specific entity.Source
function wp_get_entity_view_config( $kind, $name ) {
$default_view = array(
'type' => 'table',
'filters' => array(),
'sort' => array(
'field' => 'title',
'direction' => 'asc',
),
'perPage' => 20,
'fields' => array( 'author', 'status' ),
'titleField' => 'title',
);
$default_layouts = array(
'table' => array(),
'grid' => array(),
'list' => array(),
);
$all_items_title = __( 'All items' );
if ( 'postType' === $kind ) {
$post_type_object = get_post_type_object( $name );
if ( $post_type_object && ! empty( $post_type_object->labels->all_items ) ) {
$all_items_title = $post_type_object->labels->all_items;
}
}
$view_list = array(
array(
'title' => $all_items_title,
'slug' => 'all',
),
);
$config = array(
'default_view' => $default_view,
'default_layouts' => $default_layouts,
'view_list' => $view_list,
'form' => array(),
);
/**
* Filters the view configuration for a given entity.
*
* The dynamic portions of the hook name, `$kind` and `$name`, refer to the
* entity kind (e.g. `postType`) and the entity name (e.g. `page`).
*
* @since 7.1.0
*
* @param array $config {
* The view configuration for the entity.
*
* @type array $default_view Default view configuration.
* @type array $default_layouts Default layouts configuration.
* @type array $view_list List of available views.
* @type array $form Form configuration.
* }
* @param array $entity {
* The entity the configuration is built for.
*
* @type string $kind The entity kind.
* @type string $name The entity name.
* }
*/
$filtered_config = apply_filters(
"get_entity_view_config_{$kind}_{$name}",
$config,
array(
'kind' => $kind,
'name' => $name,
)
);
if ( ! is_array( $filtered_config ) ) {
return $config;
}
// Backfill any dropped keys with their defaults, then discard any keys the
// filter introduced that are not part of the documented configuration shape.
$filtered_config = array_merge( $config, $filtered_config );
return array_intersect_key( $filtered_config, $config );
}