Blog sobre desarrollo WordPress en Español Desarrollo WordPress en Español
contenido entre parrafos

Insertar un anuncio entre el contenido de un post

Seguro que has visto en más de una ocasión páginas web que insertan anuncios o contenidos relacionados entre medias del propio contenido. De hecho yo lo tuve así durante un tiempo.

Probablemente te ronde por la cabeza la idea de saber si hay algún plugin para esto o no, y la respuesta es si. Podrás encontrar varios para cubrir esta funcionalidad en el repositorio oficial.

Pero aquí en este post te mostraré como hacerlo tu mismo/a a mano simplemente incluyendo unas líneas en el functions.php, y tener el control 100% sobre lo que queramos hacer:

Simplemente actuaremos sobre el filter the_content. En la primera función insert_post_ads() guardamos en una variable el código del anuncio o el contenido que queramos mostrar. Comprobaremos que sólo vamos a actuar en el caso que estemos en single.php (is_single()), y sólo en la parte pública (!is_admin()).

En ese caso llamamos a la función insert_ads_after_paragraph() que va a insertar la cadena que contiene la información que queremos mostrar y el número de párrafo tras el que la vamos a mostrar.

El mecanismo es sencillo: partimos o dividimos todos los párrafos de nuestro contenido the_content en un array, utilizando la función explode de PHP y marcando el “corte” a través de la cadena de texto </p>, etiqueta HTML que indica el final de un párrafo.

A continuación recorremos todos los párrafos y concatenando de nuevo la etiqueta de cierre </p>. Sólo en el caso que se cumpla la condición de que el número de párrafo que hemos pasado a la función insert_ads_after_paragraph() (en este ejemplo: 2) sea igual a $index + 1 (recuerdo que las claves o keys comienzan con 0), concatenamos la cadena de texto que contiene nuestro anuncio o contenido destacado.

Una vez finalizado el bucle retornaremos el contenido final que incluye nuestra cadena de texto con el anuncio o contenido destacado después del segundo párrafo del texto original.

Puede que también te interese

Cómo agregar un campo personalizado debajo del título de una entrada
Cómo agregar un campo personalizado debajo del título de una entrada
En ocasiones puede resultar útil agregar un campo personalizado adicional justo debajo del título de una entrada o página, por cuestiones de usabilidad y experiencia…
Cómo crear una puerta trasera para entrar en WordPress
Cómo crear una puerta trasera para entrar en WordPress
En esta entrada vamos a ver cómo crear una puerta trasera o backdoor en WordPress. Reitero, vamos a ver el cómo, el porqué hacerlo es…
Cómo solucionar fallo en las actualizaciones automáticas en WordPress
Cómo solucionar fallo en las actualizaciones automáticas en WordPress
Por defecto las actualizaciones menores de WordPress se ejecutan de manera automática, y en alguna ocasión pueden fallar. Es raro, pero puede darse. Lo que…
Añadir un icono personalizado a nuestro custom post type
Añadir un icono personalizado a nuestro custom post type
La versión 3.8 de WordPress trajo consigo nuevas mejoras, el tema Twentyfourteen, y un cambio completo de diseño en el Back End. Con éste cambio,…