No visualizar entradas de forma automática en WordPress y tras un período de tiempo

sessionExpired Es evidente que al disponer de un blog con tantas visitas, muchas empresas se sientan en la tentativa de que se les realice una entrada “review” sobre alguno de sus productos o una web determinada. Si el pago es realizado y la entrada se realiza con éxito, la cual satisfaga al solicitante, lo más lógico es que dicha entrada no permanezca para siempre en nuestra base de datos. Uno de los principales motivos es que en el futuro, los enlaces saliente que hayamos añadido desaparezcan, o peor aún, que la empresa a la que le hayamos realizado la review quiebre y su web desaparezca.

¿Qué ocurriría entonces?. Pues, lo más probable es que tengamos en nuestro blog un número de enlaces salientes rotos, que pueden arrojar errores tipo 404, lo que significaría una pérdida en el ranking de los buscadores.

¿Cómo evitar que este tipo de errores aparezcan en el futuro?

Lo más lógico sería comprobar dichas entradas y además comprobar que dichos enlaces se encuentran disponibles. Esto parece algo engorroso de hacer, cuando se tienen más de mil entradas, sin embargo existe un plugin para WordPress que nos facilita la tarea, se denomina Broken links Remover y podemos complementarlo con Revision delete, además podemos permitir a nuestros lectores que nos informen de los posibles errores de cada entrada, gracias a GD Broken Report.

Pero, nosotros vamos a tratar de llegar un poco más lejos, y nos arriesgaremos a introducir código en nuestra plantilla para que cuando escribamos una entrada, si deseamos que la misma tenga una fecha de expiración, podamos indicarle cuando deseamos que dicha entrada sea eliminada de forma automática.

Instalando el código…

Todo lo que debemos hacer es cambiar el Loop de nuestra plantilla por el siguiente:

<?php
if (have_posts()) :
while (have_posts()) : the_post(); ?>
$expirationtime = get_post_custom_values('expiration');
if (is_array($expirationtime)) {
$expirestring = implode($expirationtime);
}

$secondsbetween = strtotime($expirestring)-time();
if ( $secondsbetween > 0 ) {
// For example…
the_title();
the_excerpt();
}
endwhile;
endif;
?>

Una vez que hayamos modificado el código, debemos hacer uso de los campos personalizados y establecer una fecha de expiración. Debemos asegurarnos que seleccionamos la clave “expiration” y empleamos el siguiente formato fecha/hora: mm/dd/yyyy 00:00:00, donde mm=mes; dd=día; yyyy=año y 00:00:00 es la hora, minutos y segundos en el que la entrada expirará.

[note]Nota: este truco no eliminará la entrada o la quitará de la publicación, simplemente la excluye de ser visualizada. [/note]


Comentarios para No visualizar entradas de forma automática en WordPress y tras un período de tiempo

  • A mi me vienen con otro tipo de peticiones más de intercambio de enlaces mi blog no es tecnológico y tampoco tiene miles de visitas como para que interese.

    Muy bueno el diseño de tu blog claro y conciso.

    Saludos desde mi rincón músical

    ordago13 10 septiembre 2010 1:29 pm Responder

Dejar un Comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *