WordPress: Enlace para borrar post

Si queremos eliminar un post de WordPress lo normal es que entremos al panel de administrador, veamos la lista de post y demos clic en Enviar a papelera, hasta ahí todo bien, pero si tienes un blog con demasiados posts y quieres eliminar algunos por su contenido no vas a entrar a cada uno, darle a editar y enviar a papelera. Es una tarea larga.

¿La solución? Un enlace de “Enviar a papelera” que sea visible sólo para los administradores en cada post.

Primero, colocar la siguiente función en nuestro function.php

<?php function wp_delete_post_link($link = 'Eliminar post', $before = '', $after = '') {
	global $post;
	if ( $post->post_type == 'page' ) {
		if ( !current_user_can( 'delete_pages', $post->ID ) )
			return;
	} else {
		if ( !current_user_can( 'delete_posts', $post->ID ) )
			return;
	}
	$advertencia = "&iquest;Est&aacute;s seguro de querer eliminar ".get_the_title($post->ID)." ?";
	$delLink = wp_nonce_url( get_bloginfo('wpurl') . "/wp-admin/post.php?action=delete&post=" . $post->ID, 'delete-post_' . $post->ID);
	$link = "<a target='_blank' onclick='return confirm(\"" . $advertencia ."\")'  href='" . $delLink . "' title='Delete' />".$link."";
	echo $before . $link . $after;
} ?>

Segundo, colocar el llamado a la función donde quieres que aparezca el enlace: single, index, loop, donde quieras.

<?php wp_delete_post_link('Eliminar post', '<p>', '</p>'); ?>

Muy útil para aquellos blogs que se alimentan de Feeds RSS o los que tienen el registro de autores libre.

Un comentario

  1. Bitacoras.com · 14 marzo, 2012

    Información Bitacoras.com…

    Valora en Bitacoras.com: Si queremos eliminar un post de WordPress lo normal es que entremos al panel de administrador, veamos la lista de post y demos clic en Enviar a papelera, hasta ahí todo bien, pero si tienes un blog con demasiados posts y qui……

Deja un comentario