Insertar un sidebar en una variable

 In Tutoriales Wordpress - Avanzado

Hace días, en el proyecto de un cliente, me encontré con la necesidad de insertar un sidebar con id específico, en una variable que residía dentro de una función, en el archivo functions.php

Intenté simplemente otorgarle el valor dynamic_sidebar() a la variable y aunque en el front-end sí se veía, el sidebar no se insertaba en el contenedor <div></div> que yo quería sino en el <div> padre. Cuando estuve a punto de aceptar que no podría lograrlo, y tendría que mover el sidebar al div que yo quería, ya fuera con jquery o con posición absoluta, encontré la respuesta.

Entonces la respuesta la encontré en la función php Output Buffering. Básicamente y sin afán de ahondar demasiado en explicar todo acerca de esta función, Output Buffering permite enviar un trozo de html completo y no en piezas separadas de procesos PHP. Con Output Buffering, tu trozo de HTML es guardado en una variable y enviado al navegador en una sola pieza.

Este es mi código antes de aplicar el Output Buffering. Pueden ver que intenté introducir el sidebar utilizando dynamic_sidebar(‘Sidebar Seven’);

Una vez habiendo encontrado que podía pasar el sidebar con una variable utilizando Output Buffering, quedó así:

Aquí he definido la variable:

Y de esta manera la he pasado en el output:

 

Les dejo una guía sobre Output Buffering que me sirvió mucho para optar por esta solución: Output Buffering for Web Developers, a Beginner’s Guide

 

Recommended Posts

Leave a Comment

Contact Us

We're not around right now. But you can send us an email and we'll get back to you, asap.

Formulario de Contacto
captcha
×