Personalizzare flexinode

7 contenuti / 0 new
Ultimo contenuto
Personalizzare flexinode

Salve a tutti, ho un piccolo problema di visualizzazione con flexinode. in pratica ho definito delle tipologie di contenuti, che ovviemente sono caratterizzate dal campo "titolo" che è obbligatorio, e da altri campi (ho scelto due campi area testo). In pratica ho caricato una tipologia "artista" composta da
- titolo
- presentazione
- biografia
- galleria immagini

Vorrei restituire solo un'unia pagina con il titolo e la presentazione e la biografia non deveno essere anticipate dalla dicitura "presentazione" e "biografia". Alla riga 667 di taxonomy.module sotto la sezione "Implementation of hook_content()" sembra ci sia la funzione per stampare ma non riesco a personalizzarla... avete idee? é capitato a qualcun'altro?

Grazie

se usi un template che usa phptemplate, troverai un file node.tpl.php.
copialo come flexinode-x.tpl.php e personalizzalo.
La logica del template ti permette di personalizzare la lista 'breve' del nodo (quella che appare quando chiedi una lista di nodi) e quella dettagliata (di quando chiedi il dettaglio di un nodo.
Puoi sbizzarrirti.... senza toccare il modulo flexinode...

Matteo

intanto grazie matteo per la solerte risposta. Uso xtemplate, potrei migrarlo in phptemplate, però comunque aprendo node.tpl.php trovo questo:

<?php
 
if ($page == 0):
?>

<?php
 
print $node_url
?>
" rel="nofollow" title="Permanent Link to
<?php
 
print $title
?>
">
<?php
 
print $title
?>

<?php
 
endif;
?>

<?php
 
print $submitted
?>

<?php
 
print $content
?>

<?php
 
if ($links):
?>

Posted in
<?php
 
print $terms
?>
|
<?php
 
print $links
?>
»
<?php
 
endif;
?>

Il problema è che la riga che dice di stampare il contenuto del flexinode richiamato chiama questo:

<?php
 
print $content
?>

ma quello che vorrei levare è dentro $content !!! Infatti è là dentro che risiede l'intero contenuto del flexinode, nel mio caso composto di
due aree testo e del link alla galleria. Le due aree testo hanno un campo "field" che le descrive che viene stampato a video comunque e a livello di template non si può agire o mi sbaglio? Spero di essermi spiegato.

Un blog (anche) su drupal: http://podowsky.blogspot.com

$content è il contenut o preformattato, che viene anche inserito nel campo body del nodo per essere indicizzato.
Puoi usare i nomi dei campi ($flexinode_xx) nel template. E phptemplate te lo consiglio, inoltre sarà il motore di default della 4.7.

Eccoti un esempio funzionante. Cambia i nomi dei campi (quando crei un tipo di nodo, ogni campo ha un progressivo, e diventa flexinode_progressivo...

<!--- Announce --->
<div class="entry<?php print ($sticky) ? " sticky" : "";
?>">
<!--- Announce list --->
<?php if ($page == 0): ?>
<h2><?php print "<a
href=\"node/".$node->nid."\" rel=\"bookmark\"
title=\"Permanent Link to
".$node->title."\">".$node->title."</a></h2>"
?>
<div class="form-item"><?php print
substr($node->flexinode_27,0,600)
?>...</div></ br>
<!--- Announce detail --->
<?php else : ?>
<?php if ($node->flexinode_27) : ?>
<div class="form-item"><?php print
check_output($node->flexinode_27,$node->format)
?></div></ br>
<?php endif; ?>
<?php if ($node->flexinode_28) : ?>
<div
class="form-item"><label>E-mail:</label>
<?php print $node->flexinode_28
?></div></ br>
<?php endif; ?>
<?php if ($node->flexinode_29) : ?>
<div class="form-item"><label>Sito
Web:</label> <?php print
$node->flexinode_29 ?></div></
br>
<?php endif; ?>

<?php endif; ?>
<!--- Announce links --->
<p>
  <?php if ($terms): ?>
    <div
class="terms"><?php print $terms
?></div>
  <?php endif; ?>
  <?php if ($links): ?>
    <div
class="links"><?php print $links
?></div>
  <?php endif; ?>
<p>
</div>

Matteo

Ah ,la funzione check_output funziona sulla 4.6.x, ma potrebbe essere rinominata in 4.7 (bisogna vedere su www.drupaldocs.org se non funziona) . serve per formattare il contenuto de icampi in funzione de tipo di formato di input del nodo.

Gajardo, vero ????

Matteo

ma mi sto incartando qui http://drupal.org/node/22019 ... arrivo eh!

Un blog (anche) su drupal: http://podowsky.blogspot.com

Prima di diventare pazzo con la conversione, provalo su un qualsiasi tema phptemplate per vedere che faccia quello che ti serve....

Matteo