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 crear una página de error de acceso a base de datos personalizada
Cómo crear una página de error de acceso a base de datos personalizada
En alguna ocasión nos podemos encontrar con un error de acceso a la base de datos por diversos motivos, y en estos casos nos aparece…
De Font Awesome a SVG para mejorar el WPO
De Font Awesome a SVG para mejorar el WPO
Siempre me ha gustado Font Awesome, es una librería variada y versátil con la que puedes añadir iconos a botones sociales, campos de formularios, etiquetas,…
Cómo restringir el acceso al back-end de WordPress a usuarios no administradores
Cómo restringir el acceso al back-end de WordPress a usuarios no administradores
A continuación vamos a ver cómo bloquear o restringir el acceso al back-end o escritorio de WordPress (con y sin plugins), incluso ocultaremos el admin…
Child themes en WordPress: Guía rápida
Child themes en WordPress: Guía rápida
Un child theme o tema hijo en WordPress es un tema que modifica o extiende la funcionalidad de otro tema, llamado “tema padre”. En esta…