Cambiar el nombre de elemento de menú dentro de la sección de administración del menú para un tipo personalizado Post?

wordpress.stackexchange https://wordpress.stackexchange.com/questions/1396

  •  16-10-2019
  •  | 
  •  

Pregunta

tengo la sensación de que esto es un error.

Cuando se crea un nuevo tipo de envío personalizado, no parece posible modificar el primer texto elemento de submenú. Me refiero al enlace que le permite ver la lista de correos.

Por lo que puedo decir que sólo parece ser duplicar el nombre nombre del menú principal tipo de mensaje que fue creado.

¿Alguien sabe cómo modificar este texto para que pueda tener el elemento de menú principal dice "Artículos" y el nombre de la lista de post submenú que dicen "Administrar los artículos"

Yo tenía la impresión de que "edit_item" controlaría el texto que se mostrará en Te submenú pero por alguna razón esto no se está registrando.

Este es el código que estoy usando actualmente:

//////////////////////////////////////////////////////////////////////////////
// CUSTOM POSTTYPE FOR -- ARTICLES  
//////////////////////////////////////////////////////////////////////////////

add_action('init', 'articles');
function articles() {
 register_post_type('articles', array(
  'labels' => array(
   'name'   => __('Articles'),
   'singular_label'  => __('Article'),
   'new_item'   => __('Add Article'),
   'add_new'   => __('Add Article'),
   'add_new_item'  => __('Add Article'),
   'edit'   => __('Edit Article'),
   'edit_item'   => __('Edit Article'),
   'view'   => __('View Article'),
   'view_item'   => __('View Article'),
   'search_items'  => __('Search Articles'),
   'not_found'   => __('No Articles Found'),
   'not_found_in_trash' => __('No Articles Found in Trash'),
   ),
  'supports' => array(
   'thumbnail',
   'title',
   'editor',
   'author',
   'revisions',
   ),
  'rewrite' => array( 
   'slug'   => 'articles', 
   'with_front'   => false,
   ),
  'rewrite'    => true,
  'can_export'    => true,
  'show_ui'    => true,
  'menu_position'   => 3,
  'public'    => true,
  'query_var'    => true,
  'publicly_queryable'  => true,
  'exclude_from_search'  => false,
  'capability_type'   => 'post',
  'hierarchical'   => false,
 ));
 }


add_filter('manage_edit-articles_columns', 'add_new_articles_columns');
function add_new_articles_columns($articles_columns) {
 $new_columns['cb']     = '<input type="checkbox" />';
 $new_columns['article_thumbnail']   = _x('Image', 'column name');
 $new_columns['title']    = _x('Article Title', 'column name');
 $new_columns['article_excerpt']   = _x('Article Excerpt', 'column name');
 $new_columns['article_source']   = _x('Article Source', 'column name');
 $new_columns['author']    = __('Created by');
 $new_columns['date']    = _x('Last Action', 'column name');
 return $new_columns;
 }
add_action('manage_posts_custom_column', 'manage_articles_columns', 10, 2);
function manage_articles_columns($column_name, $id) {
 global $wpdb;
 switch ($column_name) { 
  case 'article_thumbnail':  
   the_post_thumbnail( array(50,50) );
   break; 
  case 'article_excerpt': echo substr(get_the_excerpt(),0,500); 
   break;
  case 'article_source':
         echo get_the_term_list($post->ID, 'content_sources', '', ', ','');
   break;
  default: break;
  }
 }
¿Fue útil?

Solución

Hola @ NetConstructor.com

Creo que ya preguntó acerca de esto y yo te di una respuesta que aborde esta cuestión también:

En la respuesta que le dio una biblioteca puede utilizar para hacer interactuar con el menú de administración super fácil. Esto es lo que tendría que hacer para lograr su objetivo declarado sobre esta cuestión:

<?php
require_once('wp-admin-menu-classes.php');
add_action('admin_menu','my_admin_menu');
function my_admin_menu() {
  rename_admin_menu_section('Articles','Manage Articles');`  
}

P.S. Por cierto, me di cuenta de que había 4 respuestas proporcionadas sobre esta cuestión que preguntado hace casi una semana, pero no ha vuelto un seleccionado ninguna de las respuestas como la respuesta correcta. Puesto que usted ha estado aquí pidiendo un montón de preguntas que sé que no es como usted no ha estado alrededor; Por favor tome tiempo para seleccionar la mejor respuesta para sus preguntas tan pronto como usted tiene una respuesta viable de lo contrario la gente podría llegar a ser desmotivado para mantener contestador. Algo esta cuenta ...

Otros consejos

Este es un problema semántico.

'edit_item'   => __('Edit Article'),

Esto es lo que se muestra cuando se edita el artículo, como en singular, al igual que la edición posterior, en el título superior. La razón de que los mensajes '' Listado de elementos de menú se llama 'puestos' y no 'editar mensajes' se debe a que podría inducir a error.

Se puede hacer algo más que sólo los mensajes de edición, puede eliminar y moverlos etc. Lo mismo puede decirse de las páginas, o cualquier otro tipo de mensaje que pueda tener. Esta es la razón por el mismo campo que se utiliza para la navegación de la sección se utiliza para el elemento inicial submenú también. Hay una lógica real para él. Habiendo dicho que no hay nada que nos impida el establecimiento de 'show_ui' => true, en false y la implementación de usted mismo.

Sin embargo, si realmente se quería editar por cualquier razón, se tendría que añadir un gancho para functions.php para procesar el menú después, mediante la búsqueda de la entrada submenú necesario en la matriz y cambiando su nombre.

Algo a lo largo de estas líneas haría, aunque puede necesitar algunas modificaciones:

function edit_menus() {
    global $menu;
    end ($menu);
    while (prev($menu)){
        $value = explode(' ',$menu[key($menu)][0]);
        if(strpos($menu[key($menu)], "menu name" )){
            $menu[key($menu)] = str_replace("menu name", "newmenuname", $menu[key($menu)]);
            break;
        }
    }
}
add_action('admin_menu', 'edit_menus');
Licenciado bajo: CC-BY-SA con atribución
scroll top