Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

cambiar presentación de tipo de contenido en concreto

Estas en el tema de cambiar presentación de tipo de contenido en concreto en el foro de Drupal en Foros del Web. Hola gente , resulta que tengo un tipo de contenido llamado "curso" por lo que he intentado estas cosas sin éxito para cambiar el aspecto ...
  #1 (permalink)  
Antiguo 21/06/2011, 12:45
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
cambiar presentación de tipo de contenido en concreto

Hola gente , resulta que tengo un tipo de contenido llamado "curso" por lo que he intentado estas cosas sin éxito para cambiar el aspecto visual de dicho contenido:

1 He creado un archivo llamado node-curso.tpl.php y le he puesto cualquier cosilla para ver si se cambiaba en la web (borrando previamente cache con DEVEL). No funciona , ya que no cambia nada.

2 He creado un archivo llamado page-curso.tpl.php , pero tampoco funciona.

3 He cambiado el html de page.tpl.php y si funciona , pero lo que pasa es que yo quiero que los cambios solo sean para el contenido tipo "curso" , ¿como puedo hacer esto?.

Mil gracias.
__________________
Videotutoriales de Drupal
  #2 (permalink)  
Antiguo 21/06/2011, 13:06
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Solucionado

Bueno al final he hayado la respuesta en san Google:
http://www.ecosistema-drupal.org/book/export/html/96

Es tan sencillo como crear una página como yo estaba haciendo page-curso.tpl.php , pero además de ello tengo que añadir a esta función (en mi caso utilizo el theme garland) que se encuentra en template.php "function phptemplate_preprocess_page" el siguiente código:
// Add per content type pages
if(isset($vars['node'])){
$vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']->type);
}

Con esto ya funcionaría.

Un saludo
__________________
Videotutoriales de Drupal
  #3 (permalink)  
Antiguo 21/06/2011, 13:08
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: cambiar presentación de tipo de contenido en concreto

Cuando creas un tipo de contenido, lo unico referido al node que puedes cambiar es en node.tpl.php
Como lo estas haciendo es lo correcto. Si no funciona es que algo hiciste antes mal

Tipo de contenido tiene un nombre y un tipo, obviamente va a ser node-nodetype.tpl.php

Con respecto al page.tpl. Vas a tener que crear una function proprocess

template.php

Código PHP:
Ver original
  1. function phptemplate_preprocess_page(&$vars)
  2. {
  3.  
  4.   /* load dynamic templates*/
  5.  if (isset($vars['node'])) {
  6.      // This code looks for any page-custom_content_type.tpl.php page
  7.     $vars['template_files'][] = 'page-'. str_replace('_', '-', $vars['node']->type);
  8.      
  9.   }
Creo que se entiende... Carga automaticamente el page-nodetype.tpl.php
__________________
Drupal Argentina
  #4 (permalink)  
Antiguo 21/06/2011, 13:11
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: cambiar presentación de tipo de contenido en concreto

Llegue tarde por dos segundos XD
Cada vez mas cerca de google!

Saludos.
__________________
Drupal Argentina
  #5 (permalink)  
Antiguo 23/06/2011, 03:52
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: cambiar presentación de tipo de contenido en concreto

Cita:
Iniciado por NUCKLEAR Ver Mensaje
Llegue tarde por dos segundos XD
Cada vez mas cerca de google!

Saludos.
Gracias NUKLEAR; pero sigo sin encontrar donde esta el contenido que se carga en la variable $content (variable que se encuentra en page.tpl.php) , para poder personalizar la salida de los campos (incluídos los de cck).

Un saludo
__________________
Videotutoriales de Drupal
  #6 (permalink)  
Antiguo 23/06/2011, 05:12
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: cambiar presentación de tipo de contenido en concreto

$content en page.tpl te carga el node.tpl sumado si agregaste algo con CCK.
La manera de poder cambiar como se imprimen los campos es lllamando directamente al mismo en tu node.tpl o en tu page.tpl.

Por ejemplo si creaste un campo textfield llamado titulo seria print $node->field_titulo[0]['view'] antes de usar esta llamada en la confguracion de como se muestra los campos debes dejarlo en exclude asi no te los imprime y solo lo va a hacer manualmante cuando lo llames.
__________________
Drupal Argentina
  #7 (permalink)  
Antiguo 23/06/2011, 06:09
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 10 meses
Puntos: 8
Respuesta: cambiar presentación de tipo de contenido en concreto

Cita:
Iniciado por NUCKLEAR Ver Mensaje
debes dejarlo en exclude
¿Como se deja en exclude?.
Por cierto sino es mucho preguntar, donde puedo ver (api o similar) la sintaxis para por ejemplo imprimir en page.tpl.php el título y el cuerpo que vienen por defecto (es decir los campos que vienen de "serie" sin los CCK).

Gracias por tu ayuda.
__________________
Videotutoriales de Drupal

Etiquetas: contenido, tipo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:27.