wake-up-neo.com

post_row_actions für benutzerdefinierten Beitragstyp

Ich verwende this code, um eine doppelte Post-Funktion in WordPress Admin zu haben. Wenn ich jedoch den Filter für einen benutzerdefinierten Beitragstyp wie folgt hinzufüge:

add_filter( 'directory_row_actions', 'rd_duplicate_post_link', 10, 2 );

(Der benutzerdefinierte Beitragstyp hat den registrierten Namen directory) - er wird nicht zur Aktionszeile unter dem Eintragstitel hinzugefügt. Wenn ich es für die Posts oder Seiten mache, wie folgt:

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

es funktioniert einwandfrei. Ich habe gelesen, dass post_row_actions veraltet ist, aber ich kann nirgendwo etwas finden, das besagt, dass es ersetzt wird. Weiß jemand, wie man dies für meinen benutzerdefinierten Beitragstyp zum Laufen bringt?

2
Tom Oakley

Wie @bonger kommentierte, gibt es trotz Ihrer Lektüre keinen benutzerdefinierten Beitragstyp-Filter.

Um diesen Filter für einen bestimmten Beitragstyp zu verwenden, verwenden Sie am besten den Filter post_row_actions und testen Sie ihn anschließend anhand des übergebenen $post->post_type.

Ich habe den folgenden Code verwendet, um Links zur Aktionszeile für einen bestimmten Beitragstyp (in diesem Fall myposttype) hinzuzufügen.

Dies muss bearbeitet werden, damit es für Ihren eigenen Beitragstyp funktioniert, und natürlich ist für den neuen Link etwas mehr Code erforderlich, aber dies ist die Idee:

function my_duplicate_post_link($actions, $post)
{
    if ($post->post_type=='myposttype')
    {
        $actions['duplicate'] = '<a href="#" title="" rel="permalink">Duplicate</a>';
    }
    return $actions;
}
add_filter('post_row_actions', 'my_duplicate_post_link', 10, 2);
6
jammypeach