_set_post_type_labels() static public method

static public _set_post_type_labels ( string $post_type, array $args ) : array
$post_type string
$args array
return array
 /**
  * Register the labels used for this post_type.
  *
  * @param array $args
  *
  * @return object
  */
 static function register_post_type_labels($args = array())
 {
     if (!isset($args['name'])) {
         /**
          * @future Add an error message here. But, this should never happen unless developer screws up.
          */
         $args['name'] = null;
         $labels = $args;
     } else {
         /*
          * Provide default values for each of the 3 other templates that are just singular or plural name,
          * and for 'add_new' which does not apply the post name.
          */
         $args = wp_parse_args($args, array('singular_name' => $args['name'], 'menu_name' => $args['name'], 'name_admin_bar' => $args['name'], 'add_new' => _x('Add New', 'post type', 'wplib')));
         /*
          * Get the label templates defaults.
          */
         $labels = WPLib_Posts::default_post_type_labels();
         /**
          * Now apply the postname to the defaults and merge with the registered $args
          */
         $labels = wp_parse_args($args, array('add_new_item' => sprintf($labels['add_new_item'], $args['singular_name']), 'new_item' => sprintf($labels['new_item'], $args['singular_name']), 'edit_item' => sprintf($labels['edit_item'], $args['singular_name']), 'view_item' => sprintf($labels['view_item'], $args['singular_name']), 'all_items' => sprintf($labels['all_items'], $args['name']), 'search_items' => sprintf($labels['search_items'], $args['name']), 'parent_item_colon' => sprintf($labels['parent_item_colon'], $args['singular_name']), 'not_found' => sprintf($labels['not_found'], $args['name']), 'not_found_in_trash' => sprintf($labels['not_found_in_trash'], $args['name'])));
         /**
          * For the calling class, merge the templates and with the singular and plural post type names.
          */
         $labels = wp_parse_args($args, $labels);
         WPLib_Posts::_set_post_type_labels(static::POST_TYPE, $labels);
     }
     return $labels;
 }