Azioni di riga per tipi di post personalizzati?


16

Sto lavorando a un plugin, che converte un sito in una sorta di portale di feedback. Ho creato una nuova pagina dell'oggetto, 'Feedbacks', che mostra tutti i feedback in formato tabulare, e sto usando register_column_headers($array_of_column_headers)per creare la mia tabella. Volevo sapere se è possibile aggiungere le mie azioni di riga di pagina a questa tabella, intendo sotto ogni feedback nell'elenco, azioni come 'approvare', 'cancellare', 'lista nera' ecc.

Ho letto il codice e un paio di biglietti, e ho scoperto che è fatto in questo modo: per i post, i suoi post_row_actions, per i suoi commenti comment_row_actions, per i suoi media media_row_actionse così via. C'è un filtro che mi permette di fare my-page-slug_row_actions?

Risposte:


19

Quando si utilizza il tipo di post personalizzato, utilizzare l' post_row_actionshook del filtro e controllare il tipo di post per modificarlo solo:

add_filter('post_row_actions','my_action_row', 10, 2);

function my_action_row($actions, $post){
    //check for your post type
    if ($post->post_type =="feedbacks"){
        /*do you stuff here
        you can unset to remove actions
        and to add actions ex:
        $actions['in_google'] = '<a href="http://www.google.com/?q='.get_permalink($post->ID).'">check if indexed</a>';
        */
    }
    return $actions;
}

Aggiornamento rapido:

grazie a somatica se si digita messaggio personalizzato è "gerarchico", allora si gancio azione è: page_row_actions.


Ha $postportata? hint hint ;)
t31os

@ t310s Risolto il problema con @Bainternet che non ti dispiace,)
kaiser,

2
@kaiser: e migliorato la tua correzione!
Jan Fabry,

Ciao, ho già usato "post_row_actions" per aggiungere un link nelle righe dei post personalizzati. Ma voglio farlo per la mia pagina di menu, che viene aggiunta usando l'hook 'add_object_page' (che è simile a 'add_menu_page'). add_object_page("Feedbacks", "Feedbacks", 10, "feedbacks-menu", "FeedbackMenuFunction"); add_submenu_page("feedbacks-menu", "Pending Feedbacks", "Pending", 10, "pending-feedbacks-menu", "PendingFeedbackMenuFunction") Mi chiedevo se potevo farlo, "feedbacks-menu_row_actions (...)" (proprio come è stato fatto per altre pagine come "Post", "Commenti" ecc. Usando la lumaca di pagina con le azioni di riga).
Rutwick Gangurde,

6
per quelli di voi che sbattono la testa sulla scrivania chiedendosi perché questo codice sembra non fare nulla con il tuo tipo di post personalizzato, nota: se il tuo CPT è "gerarchico", allora il tuo hook di filtro è "page_row_actions"e NON "post_row_actions" [strofina la testa]
somatic
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.