Schimbarea ordinii coloanelor pentru un tip de postare personalizat în pagina de administrare

3 iun. 2013, 20:47:09
Vizualizări: 24.9K
Voturi: 9

Am creat un tip de postare personalizat (captură de ecran mai jos) și aș dori să schimb ordinea coloanelor. Este posibil să mut coloana "etichete" înaintea coloanei "dată"?

Captură de ecran:

Captură de ecran care arată lista de postări personalizate în panoul de administrare WordPress

1
Comentarii

Linkul tău de imagine este invalid

Mayeenul Islam Mayeenul Islam
18 sept. 2013 13:18:54
Toate răspunsurile la întrebare 2
1
15

Da, acest lucru este posibil. Am modificat acest lucru pentru tipul de postare implicit, dar este posibil și pentru unul personalizat.

Mai întâi verifică codex-ul:

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

function your_columns_head($defaults) {  

    $new = array();
    $tags = $defaults['tags'];  // salvează coloana de tag-uri
    unset($defaults['tags']);   // elimină-o din lista de coloane

    foreach($defaults as $key=>$value) {
        if($key=='date') {  // când găsim coloana de dată
           $new['tags'] = $tags;  // pune coloana de tag-uri înaintea ei
        }    
        $new[$key]=$value;
    }  

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

Poți modifica array-ul $defaults în acest fel după preferințe.

18 sept. 2013 12:49:25
Comentarii

Poți să omiți setarea $tags deoarece nu o returnezi sau nu o folosești în altă parte.

Burgi Burgi
16 iul. 2018 19:05:00
1

Da, puteți schimba ordinea listei afișate în Panoul de Administrare. Mai întâi trebuie să eliminați array-ul implicit, apoi să creați un array în ordinea dorită. Permiteți-mi să vă arăt cu un exemplu. Următoarea imagine arată câmpurile implicite ale unui tip de postare personalizat. Câmpurile implicite ale unui tip de postare personalizat

Acum permiteți-mi să vă arăt cum puteți elimina câteva câmpuri suplimentare din această listă. Să presupunem că vreau să elimin câmpurile 'title' și 'tags' din listă și să adaug câmpurile personalizate ale tipului meu de postare, precum și să rearanjez ordinea câmpurilor din listă.

     function add_ourteam_columns ( $columns ) {
    unset($columns['title']);
    unset($columns['tags']);
    unset($columns['date']);
   return array_merge ( $columns, array ( 
     'name' => __ ('Nume'),
     'designation' => __ ( 'Funcție' ),
     'image'   => __ ( 'Imagine' ),
     'date' => __('Dată')
   ) );

 }

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

Lista personalizată de câmpuri pentru tipul de postare

Dacă doriți să eliminați un câmp, folosiți pur și simplu unset(nume_câmp). Dacă doriți să schimbați ordinea listei, mai întâi eliminați acel câmp, apoi creați un nou array și adăugați câmpul înainte sau după alte câmpuri. Sper că acest exemplu vă va fi de folos.

19 sept. 2018 15:11:06
Comentarii

mersi frate :). m-ai ajutat mult :)

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