Posted by antoniocuga on September 29, 2011 at 9:09pm
Hola drupaler@s, tengo una consulta con respecto al uso de vistas embebidas en drupal 7, actualmente estoy usando la siguiente funcion:
"views_embed_view($name, $display_id = 'default')", pero al parecer no esta funcionando ya que no me imprime nada, en mi template estoy colocando lo siguiente.
<?php
print views_embed_view('view-list-team','page');
?>Alguien ya a podido implementar vistas embebidas?, gracias de antemano.
Saludos

Comments
Yo he estado investigando y...
Hola antoniocuga...
Yo he estado investigando este tema y hay bastante confusión (no he encontrado aún la "verdad" entre todo ello...)
Incluso hay un módulo: http://drupal.org/project/embed_views
pero a mi (aún) no me ha funcionado (la verdad es que no le he podido dedicar mucho tiempo...)
Saludos
Saludos
Isaac.el.Cec
- Temas DRUPAL: http://drupal6.propium.org
- Güep profesional: http://www.jramonet.org
¿Otras opciones?
Hola Antonio.
Sé que debes tener una buena razón para usar embed views, pero en términos más generales qué es lo que quieres hacer con views? Te lo pregunto porque si esto te está dando problemas e incluso Isaac comenta que hay confusión, a lo mejor puedes buscar otro acercamiento, views attach, o tal vez panels te pueda funcionar, sin tener que modificar tu template.
¿Cómo ves? ¿Podrías explicar más tu problema para ver si a lo mejor otra cosa te pudiera servir?
Un saludo!
Vistas Embebidas
Hola, gracias por las respuestas.
El problema es el siguiente, estoy haciendo un template el cual contendra jquery tabs, en las cuales en un tab se mostrara la vista embebida la cual me traera un listado de imagenes, la unica idea que se me ocurrio primero fue la de las vistas embebidas, les envio una imagen del template para que puedas ver lo que se queire implementar,
http://gowebstudios.com/cime/nosotros-02.html
si alguno de ustedes tienen alguna sugerencia, sera bienvenida :), gracias por su colaboración.
SOLUCIONADO !!!
Hola de nuevo...
La verdad es que no le había dedicado el tiempo "suficiente" !!! (ya veis que mi anterior intervención es de las 17:08 y ahora son la 17:46 y ja está !!!)
El snippet que hay que incluir en un nodo o en un bloque para embeber una vista es:
<?php
$name='glossary'; // Nombre máquina de la vista
$display_id='page'; // Nombre máquina de la variante "display"
$view = views_get_view($name);
print $view->preview($display_id);
$view->destroy();
?>
En este caso estoy insertando la variante "page" de la vista "Glossary" que viene configurada con views.
Espero que os sirva...
Saludos
PD: eliasdelatorre: vete tu a saber para que necesita antoniocuga esto... pero yo lo necesitaba hace una semana y, por prisas, lo solucioné mediante ingenio... ahora ya tengo la solución "buena" ;-)
Saludos
Isaac.el.Cec
- Temas DRUPAL: http://drupal6.propium.org
- Güep profesional: http://www.jramonet.org
Gracias
Hola Isaac, yo probe algo similar, que lo tome de aqui.
http://drupal.org/node/1138866#comment-4845070
pero me dio un error al momento que llamaba a la funcion
Fatal error: Call to a member function preview()
tienes implementado algo adicional para que te funcionara?
Cuidado, hay un ejemplo mal...
Hola...
En el ejemplo "This is the equivalent of views_embed_view without arguments." falta un "print".
En mi caso y con el código de antes, me funciona. He instalado el módulo http://drupal.org/project/embed_views pero me funciona con el módulo desactivado...
Puedes verlo tu mismo: http://www.skiland.es/?q=node/6
Saludos
Saludos
Isaac.el.Cec
- Temas DRUPAL: http://drupal6.propium.org
- Güep profesional: http://www.jramonet.org
A ver por partes. Primero eso
A ver por partes.
Primero eso no debería ir en el tpl, sino o en el template.php o en una función de preprocesamiento de nodo, página, hook_user, hook_nodeapi o el hook que corresponda.
Luego
<?php$viewsName = 'nombre_vista';
$display_id = 'default';
$args = $vars['node']->nid;
$vars['nombre_variable'] = views_embed_view($viewsName, $display_id, $args);
?>
Y en el tpl correspondiente.
<?php if($nombre_variable): ?><div class="laquesea">
<?php print $nombre_variable; ?>
</div>
<?php endif; ?>
De esta forma nuestro código no se ejecuta en la vista (tpls) sino que se ejecuta en los controladores,que en el caso de drupal son los hooks.
Estoy es para d6, pero "CREO QUE" en d7 sigue siendo igual
Un saludo