Mostrar publicidad en entradas antiguas de WordPress

Al final he tenido que poner un poco de publicidad en El Mundo Exterior. Pero como yo soy de los que no les gusta nada la publicidad en los blogs y las webs, y como yo soy mi primer visitante no quiero recargar las entradas ni la página.

Para ello he creido oportuno poner publicidad solo en las entradas antiguas con una función e PHP. Así no molesto a los lectores asiduos y solo los que quieran leer algo antiguio la verán. Es una solución que me encanta :D

Primero tenemos que añadir la siguiente función al fichero functions.php de tu theme:
function is_old_post($post_id=null){
$days = 15;
global $wp_query;
if(is_single() || is_page()) {
if(!$post_id) {
$post_id = $wp_query->post->ID;
}
$current_date = time();
$offset = $days *60*60*24;
$post_id = get_post($post_id);
$post_date = mysql2date('U',$post_id->post_date);
$cunning_math = $post_date + $offset;
$test = $current_date - $cunning_math;
if($test > 0){
$return = true;
}else{
$return = false;
}
}else{
$return = false;
}
return $return;
}

Puedes cambiar la variable $days para personalizar a tu gusto a partir de que antiguedad mostrar los anuncios. Ahora solo falta incluir el código de la publicidad dentro de una sentencia condicional en el fichero single.php:


<?php if(is_old_post()){ ?> EL CÓDIGO DE TUS ANUNCIOS <?php } ?>

Y listo! Ahora solo se muestra la publicidad en post antiguos :D Es una buena forma, que me encanta, de no molestar los visitantes asiduos :D