Club para webmasters › Foros › Creación de páginas web › Crear Hooks personalizados en Generatepress
- Este debate tiene 3 respuestas, 2 mensajes y ha sido actualizado por última vez el hace 1 año, 2 meses por
David Cuesta.
-
AutorEntradas
-
Hola,
estoy encallado con un tema, a ver si alguien me puede ayudar. Primero un poco de contexto. He creado una web automática con mogollón de etiquetas. Mi idea es que cada etiqueta tenga una página en la que muestro todos los artículos de esa etiqueta según su categoría. En total son 3 grids diferentes. Mi idea es hacerlo de modo automático con un elemento de bucle de consulta de generatepress. He generado un elemento de tipo bloquepara poder montarlo con Gutenberg. He seleccionado tipo hook y el problema es que tienen que ir dentro de parte del contenido: después del primer h2 por ejemplo. He visto que en el curso se comenta que solo se pueden meter en partes de la plantilla. Pero, con la opción de hook personalizado? No se podría determinar un espacio concreto de la plantilla para meterlo? Alguien a explorado esta opción? He encontrado este debate, pero la verdad no me entero de lo que dicen. No tengo un perfil técnico.
Saludos!
Buenas Raúl,
Oye muy buena idea el debate que pasas, a ver si funciona.
Te lo explico:Con el primer código, añadido con el plugin de code snippets, creas un shortcode
Este shorcode lo que hace es que planta un hook en donde lo pongas.
Entonces si en medio de tu contenido pones el shortcode: [portable_hook hook_name=»hook1″]
Luego podrás elegir en los hooks en los que quieras meter algo, el hook1, y corresponderá a donde hayas metido ese shortcodeEl resto de código que presenta es para hacerlo con php directamente en la plantilla
Si lo pruebas cuéntanos 🙂
Un saludo!
Hola,
Pues funciona y abre un abanico de posibilidades ;).
Detallo aquí como lo he hecho por si es de utilidad para alguien:
1. Pegar el código en el functions.php o hacerlo mediante el plugin code snippets
2. Crear tantos hooks como necesites. En mi caso lo he hecho para grids automáticos según etiqueta (no olvides ponerle un nombre en apartado nombre del gancho personalizado para poder llamarlo).
3. Llamar al hook desde donde necesites con el shrtocode:[portable_hook hook_name=»my_custom_hook_1″]
[portable_hook hook_name=»my_custom_hook_1″]
etcEl código es el siguiente;
add_shortcode(‘portable_hook’, function($atts){
ob_start();
$atts = shortcode_atts( array(
‘hook_name’ => ‘no foo’
), $atts, ‘portable_hook’ );
do_action($atts[‘hook_name’]);
return ob_get_clean();
});Nada más, espero que sea de utilidad.
Saludos
Genial, gracias por compartir la experiencia 🙂
Me lo guardo porque lo veo super útil
Un saludo!
-
AutorEntradas
- Debes estar registrado para responder a este debate.