WordPress-Blog

WP-Tutorial: Nutzern das Löschen von Einträgen im Frontend erlauben, ganz ohne Plugins

Der folgende Tipp sollte besonders für Betreiber von User-Generated-Content-Portalen von Interesse sein: Wie kann man Nutzern erlauben, eigene Einträge zu löschen, ohne sie dafür ins WP-Backend schicken zu müssen?

Es ist vergleichsweise einfach. An der Stelle, an der ein entsprechender Link erscheinen soll (z.B. in der „postmetadata“-Sektion auf der Autorenseite) muss nur folgender Code eingefügt werden:

<?php if ($post->post_author == $current_user->ID) { ?>
<a onclick="return confirm('Bist du sicher, dass du diesen Eintrag l&ouml;schen m&ouml;chtest?')" href="<?php echo get_delete_post_link( $post->ID ) ?>">L&ouml;schen</a>
<?php } ?>

Was macht der Code?

<?php if ($post->post_author == $current_user->ID) { ?>

Wenn die ID des gerade angemeldeten Nutzers mit der des Autors des angezeigten Eintrags übereinstimmt…

<a href="<?php echo get_delete_post_link( $post->ID ) ?>">L&ouml;schen</a>

…zeige einen „Löschen“-Link an.

onclick="return confirm('Bist du sicher, dass du diesen Inhalt l&ouml;schen m&ouml;chtest?')"

Wenn der Nutzer auf den Link klickt, erscheint ein Popup mit einer Sicherheitsabfrage. Hier bestätigt der Nutzer, dass er den angezeigten Eintrag tatsächlich löschen möchte.

Das war’s auch schon. Vielen Dank für Ihre Aufmerksamkeit.

SimonWP-Tutorial: Nutzern das Löschen von Einträgen im Frontend erlauben, ganz ohne Plugins

2 comments

Was halten Sie von diesem Artikel? :)
  • Riccarda - 7. Januar 2013 Antworten

    hi, könnte ich ja glatt gebrauchen. Allerdings zeigt er bei mir keinen Link an. Woran könnt´s liegen? Danke für die Hilfe. Grüsse Riccarda

    Simon - 13. Januar 2013 Antworten

    JavaScript im Browser deaktiviert? Oder nicht bei WP angemeldet? Link erscheint logischerweise nur für eingeloggte Nutzer.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.