Cambiar el orden de las columnas para un tipo de entrada personalizada en la página de administración

3 jun 2013, 20:47:09
Vistas: 24.9K
Votos: 9

He creado un tipo de entrada personalizada (captura de pantalla a continuación) y me gustaría cambiar el orden de las columnas. ¿Es posible mover la columna "etiquetas" antes que la columna "fecha"?

Captura de pantalla:

Captura de pantalla del panel de administración de WordPress mostrando columnas de tipo de entrada personalizada

1
Comentarios

Tu enlace de imagen está roto

Mayeenul Islam Mayeenul Islam
18 sept 2013 13:18:54
Todas las respuestas a la pregunta 2
1
15

Sí, esto es posible. Lo he cambiado para el tipo de entrada predeterminado, pero también es posible para uno personalizado.

Primero consulta el codex:

http://codex.wordpress.org/Plugin_API/Action_Reference/manage_posts_custom_column

function your_columns_head($defaults) {  

    $new = array();
    $tags = $defaults['tags'];  // guarda la columna de etiquetas
    unset($defaults['tags']);   // remuévela de la lista de columnas

    foreach($defaults as $key=>$value) {
        if($key=='date') {  // cuando encontremos la columna de fecha
           $new['tags'] = $tags;  // coloca la columna de etiquetas antes de esta
        }    
        $new[$key]=$value;
    }  

    return $new;  
} 
add_filter('manage_posts_columns', 'your_columns_head');  

Puedes modificar el array $defaults de esta manera según prefieras.

18 sept 2013 12:49:25
Comentarios

Puedes omitir configurar $tags ya que no lo devuelves ni lo usas en otro lugar.

Burgi Burgi
16 jul 2018 19:05:00
1

Sí, puedes cambiar el orden de tu lista mostrada en el Panel de Administración. Primero debes eliminar el array predeterminado y luego crear un array a tu elección. Permíteme mostrarte un ejemplo. La siguiente imagen muestra los campos predeterminados de un tipo de contenido personalizado. Campos predeterminados de tipo de contenido personalizado

Ahora permíteme mostrarte cómo puedes eliminar algunos campos adicionales de esta lista. Supongamos que quiero eliminar los campos de título y etiquetas de la lista y añadir mi propio campo de tipo de contenido personalizado, además de reorganizar el orden de los campos de la lista

     function add_ourteam_columns ( $columns ) {
    unset($columns['title']);
    unset($columns['tags']);
    unset($columns['date']);
   return array_merge ( $columns, array ( 
     'name' => __ ('Nombre'),
     'designation' => __ ( 'Cargo' ),
     'image'   => __ ( 'Imagen' ),
     'date' => __('Fecha')
   ) );

 }

add_filter ( 'manage_our-team_posts_columns', 'add_ourteam_columns' );

Lista de campos personalizados reordenados

Si deseas eliminar un campo, solo usa unset(nombre_del_campo). Si quieres cambiar el orden de la lista, primero elimina ese campo y luego crea un nuevo array añadiendo ese campo antes o después de otros campos. Espero que este ejemplo te sea de ayuda

19 sept 2018 15:11:06
Comentarios

gracias hombre :). me ayudaste mucho :)

Arman H Arman H
10 mar 2022 09:51:16