_get_custom_object_labels() WP 3.0.0
Build an object with custom-something object (post type, taxonomy) labels out of a custom-something object
Хуков нет.
Возвращает
Объект. Object containing labels for the given custom-something object.
Использование
_get_custom_object_labels( $object, $nohier_vs_hier_defaults );
- $object(объект) (обязательный)
- A custom-something object.
- $nohier_vs_hier_defaults(массив) (обязательный)
- Hierarchical vs non-hierarchical default labels.
Список изменений
С версии 3.0.0 | Введена. |
Код _get_custom_object_labels() get custom object labels WP 5.6
function _get_custom_object_labels( $object, $nohier_vs_hier_defaults ) {
$object->labels = (array) $object->labels;
if ( isset( $object->label ) && empty( $object->labels['name'] ) ) {
$object->labels['name'] = $object->label;
}
if ( ! isset( $object->labels['singular_name'] ) && isset( $object->labels['name'] ) ) {
$object->labels['singular_name'] = $object->labels['name'];
}
if ( ! isset( $object->labels['name_admin_bar'] ) ) {
$object->labels['name_admin_bar'] = isset( $object->labels['singular_name'] ) ? $object->labels['singular_name'] : $object->name;
}
if ( ! isset( $object->labels['menu_name'] ) && isset( $object->labels['name'] ) ) {
$object->labels['menu_name'] = $object->labels['name'];
}
if ( ! isset( $object->labels['all_items'] ) && isset( $object->labels['menu_name'] ) ) {
$object->labels['all_items'] = $object->labels['menu_name'];
}
if ( ! isset( $object->labels['archives'] ) && isset( $object->labels['all_items'] ) ) {
$object->labels['archives'] = $object->labels['all_items'];
}
$defaults = array();
foreach ( $nohier_vs_hier_defaults as $key => $value ) {
$defaults[ $key ] = $object->hierarchical ? $value[1] : $value[0];
}
$labels = array_merge( $defaults, $object->labels );
$object->labels = (object) $object->labels;
return (object) $labels;
}