Como ya os he comentado alguna vez, tengo un archivo llamado functions.php en donde voy acumulando funciones PHP para ir utilizándolas desde el mismo Post, desde el mismo sitio donde escribo el artículo.
Cada vez se van creando más funciones PHP, las cuales van siendo interesantes y ahorran escribir código. Una opción, si te interesa poner Adsense en el interior de algún artículo concreto, es hacerlo de forma sencilla creando las siguiente funciones. (No os asustéis por el código y leerlo de forma templada, que se intenta explicar poco a poco)
El archivo addPublicidadinpost.php debería estar dentro de la carpeta theme activa, y contendría el código del Bloque Adsense que queremos insertar, de esta manera.
print '<script type="text/javascript"><!--
google_ad_client = "xxxxxxx";
/* In Post 200x200 */
google_ad_slot = "-----";
google_ad_width = 200;
google_ad_height = 200;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>';
}
La condición if del principio es para que sólo se muestre cuando los visitantes vienen desde el Google, en cualquier otro caso no se mostrará.
Para utilizarlo simplemente deberéis poner en el Post una llamada a la función como AddPublicidadInPost(); Con el resultado siguiente.
El problema es que Adsense sólo muestra 3 bloques de anuncios por página, y si con este Bloque que insertamos en el post hace el número 4, se nos verá un hueco en blanco, o algo peor, en el lugar donde iba otro bloque Adsense. Por lo que deberíamos hacerlo más inteligente, utilizando php, de forma que uno de los bloques que queramos sólo se muestre cuando No hemos utilizado esta función.
Por Ejemplo, si tenemos un bloque debajo del Post uno en los comentarios y el tercero en el sidebar derecho, estos hacen 3 bloques por lo que siempre se mostrarían sin problemas. Pero si utilizamos la función para insertar un bloque de Adsense dentro del Post, se mostrarían todos menos el del Sidebar, dejando un hueco en blanco.
Una forma de solucionarlo es que el Bloque Adsense de los comentarios sólo se muestre cuando No hemos insertado la publicidad dentro del Post, que normalmente será así. Y para controlar esta condición podemos hacerlo con otra función y una variable global.
global $addpublicidad;
if ($addpublicidad!= 1 ) {
echo '<!-- Google Adsense Comment Relacionado -->
<span style="float:right; padding:5px">
<script type="text/javascript"><!--
google_ad_client = "xxxxxxx;
/* Comments Rel */
google_ad_slot = "----";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</span>
<!-- Google Adsense Comment Relacionado END -->';
}
}
Para poder entenderlo, tenéis que fijaros en la variable Global addpublicidad que es quien dice cuando se ha insertado el bloque adsense dentro del artículo y cuando no, poniendo el valor de ésta variable = 1. Por eso cuando ponemos el bloque de los comentarios primero miramos si addpublicidad es diferente de 1, porque en tal caso quiere decir que no hemos insertado el Bloque en el Interior de una Entrada.
PD.: Como siempre es bueno saber que el Css se puede exportar fuera a un fichero, por ejemplo al style.css que ya tenemos. También tenéis que saber que es indispensable el Plugin Wordpress Exec-Php.
Y Como todo en esta vida, esto es mejorable, pero hay que empezar poco a poco y piedra a piedra para poder construir algo correctamente.
Saludos y espero que os sirva de ayuda. Para cualquier duda no dejéis de comentar.
Tambien puedes dirigirte a






Muy buen artículo Toni, yo tengo algo parecido, pero lo he llamado publicidad.php para simplificar
UsingGracias Inkilino, yo tengo un .php para cada bloque de Adsense diferente, para insertarlo de forma rápida y sencilla y simplificar código.
UsingMe ha gustado, no es mi estilo pero me ha parecido interesante
Using[...] de nada, tengo que decir que la idea para escribir esta entrada la tuve al leer komoloves cómo hacer adsense inteligente con php. La idea de komoloves me parece buena, pero creo que se puede simplificar para hacerla más [...]
Using[...] Gestion de adsense inteligente en PHPwww.komoloves.com/blogs-y-wordpress/hacer-adsense-inteligent… por chefwww hace pocos segundos [...]
UsingYo tambien tengo algo asi, pero en vez de eso lo hice cambiando unas partes de la base de datos y con las funciones directas en php, entonces cuando quiero insertar por ejemplo un bloque de enlaces de adsense coloco ADSbloques728×15 o si quiero un banner mediano ADSbanner728×90.
Usingcreo que por si solo google adsense está demasiado bien programado, no es necesario el uso de este tipo de script, le veo mejor aplicación en wordpress para manejar programas de afiliación.
UsingHombre aunque adsense esté bien programado nunca viene demás intentar no molestar a los visitantes asiduos. A los nómadas se les puede putear un poco más
Using@Javier Lorente, yo lo uso en algunos post. Por ejemplo en este mismo. Me alegra que os interese
Using