Pregunta

Tengo una visión simple que agarra 4 campos, básicamente se agarra los campos de un tipo de contenido específico. Los campos son los siguientes:
clase CSS (texto plano)
Imagen (imagen)
título
Cuerpo

Bastante cosas simples. Tengo la vista creada, pero necesito cosas salida de una manera especializada y no puedo determinar cómo este material se descompone en conjunción con mi marcado personalizado a partir de mi construcción. Necesito para envolver cada fila en un recipiente y cada fila se descompone en ella los propios contenedores, echar un vistazo al siguiente código.

   <div id="homepage-folio-portlets">
    <div class="homepage-folio-portlet [CSS class]">
     <div class="homepage-folio-portlet-image"><img src="[Image]" width="450" height="330" alt="" class="[CSS class]-image" /></div>
     <div class="homepage-folio-portlet-text">
      <strong>[Title]</strong>
      <p>[Body]</p>
     </div>
    </div> <!-- /homepage-folio-portlet -->
   </div> <!-- /homepage-folio-portlets -->

Así que tengo un contenedor, Página de inicio-folio-portlets , y en el interior de lo que quiero para repetir vistas creando un nuevo contenedor utilizando la clase página de inicio-folio-portlet para cada fila devuelta incluyendo la clase CSS de la fila.

Mi mayor obstáculo es encontrar la manera de construir cualquiera de mis archivos .tpl o mis funciones temáticos en template.php. Entiendo las convenciones de nombres, pero una vez dentro, no se sabe muy bien qué hacer. Tengo la sensación de que voy a necesitar hacer un poco de magia en template.php de cualquier manera para asegurarse de que mi salida de fila es consciente de la clase CSS del contenido, pero quién sabe. Cualquier ayuda y la dirección es apreciado.

¿Fue útil?

Solución

Después de ver el antes mencionado vídeo se hizo un poco más claro cómo llevar a cabo lo me puse a hacer. El mayor "ajá" fue que el código predeterminado para la plantilla "salida de estilo Fila" era confuso para mí porque del bucle foreach. No reconocí que yo podría simplemente salida de cada campo de cualquier modo que crea conveniente en este archivo sin el bucle. El video mostró cómo se puede hacer referencia a los campos de forma individual con los siguientes campos $ taquigrafía [ 'Identificación de campo'] -> contenido. Para obtener el 'ID de campo' es como desplazarse más allá de la "salida de pantalla", "Salida de Estilo", y "salida de estilo Fila" enlaces en el panel de opción de "información tematización" de su punto de vista específico.

He utilizado la "información de tema" que se encuentra en la pantalla de edición de mi vista para determinar la .tpl más específica de "salida de estilo de fila" para crear y creó, en este caso, vista-vista-campos - mi-vista -nombre -. default.tpl.php

vista-vista-campos - mi nombre-vista-- default.tpl.php - Fila de salida de archivo .tpl
(ya no está haciendo uso de la foreach por defecto porque en lugar de bucle a través de los campos Sé que los campos que quiero y puedo simplemente salida de ellos, de todos modos me consideran necesario)

   <div id="homepage-folio-portlets">
    <div class="homepage-folio-portlet <?php print $fields['CSS_class']->content ?>">
     <div class="homepage-folio-portlet-image"><img src="<?php print $fields['Image']->content ?>" width="450" height="330" alt="" class="<?php print $fields['CSS_class']->content ?>-image" /></div>
     <div class="homepage-folio-portlet-text">
      <strong><?php print $fields['Title']->content ?></strong>
      <p><?php print $fields['Body']->content ?></p>
     </div>
    </div> <!-- /homepage-folio-portlet -->
   </div> <!-- /homepage-folio-portlets -->

Después de eso, hice un poco de recursividad en la "salida de Estilo" y "Mostrar la salida" archivos .tpl para deshacerse de todo lo que el marcado adicional de Drupal añade. Tenga en cuenta que todo lo que realmente importaba era imprimir $ fila (con su bucle foreach) en .tpl estilo y $ filas en la pantalla TPL. Está emitiendo exactamente lo que yo quiero y no podría estar más feliz. Por último, se trata de hacer algún sentido. Espero que esto ayuda a un montón de otras personas.

Sólo como referencia ...

vista-vista-sin formato - mi nombre-vista-- default.tpl.php - Estilo .tpl archivo
(quieren mantener el bucle foreach aquí que cada fila se da salida)

<?php foreach ($rows as $id => $row): ?>
 <?php print $row; ?>
<?php endforeach; ?>

vista-vista - mi nombre-vista-- default.tpl.php - archivo .tpl Display

<?php print $rows; ?>

Mediante la eliminación de todo el margen de beneficio adicional que estoy perdiendo importancia específica cosas para vistas como enlaces de administración y tal, pero para mis propósitos que está bien.

Otros consejos

En la ficha Editar para su opinión, según los ajustes básicos, busca "Tema:" y haga clic en el enlace "Información". Luego, en el "Default: Tematización información" sección, los nombres de archivo en negrita son los que se utilizan actualmente para el tema de una sub-sección particular de esa vista. Los otros nombres son "sugerencias" que se pueden utilizar para anular los valores predeterminados y que están ordenados de menor a mayor parte específica específica.

En su caso, para empezar, parece que desea anular el "estilo de salida de fila":

  1. Haga clic en el enlace "Fila de salida de estilo", copia el código de la plantilla por defecto.
  2. Seleccione uno de los nombres de archivo sugerido usar para el estilo fila, en función de si desea que este estilo que se utilizará para todos los puntos de vista, este punto de vista, una pantalla particular de este punto de vista, etc.
  3. Pegar el código copiado en el paso # 1 en el nombre de archivo elegido en el paso # 2
  4. Editar el código según sea necesario, para agregar las clases específicas
  5. Haga clic en "Volver a examinar los archivos de plantilla" para reconstruir la plantilla caché
  6. Repetir los pasos 1-5 para cualquier sub-plantillas adicionales que desee personalizar.

¿Ha intentado utilizar los archivos de plantilla para las filas? Debería ver que en el módulo de puntos de vista (en la administración). Al hacer clic en "Información" en el cuadro inferior en el lado izquierdo cuando se crea la vista. Usted tendrá que actualizar la caché de plantilla (verá un botón para hacer esto).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top