Domanda

. (Nota: Ho originariamente pubblicato questo su drupal.org prima di ricordare che non ho mai ottenere una risposta laggiù Quindi, mi spiace per il cross-posting)

Ciao, c'è un modo (built-in o altro) per aggiungere funzioni di pre-elaborazione per particolari tipi di nodo CCK? Sto cercando di fare un po 'di pre-elaborazione di un campo all'interno del mio tipo di nodo CCK. Attualmente posso usare sia theme_preprocess_node e poi fare un interruttore sul> tipo $ node- o utilizzare una funzione di tematizzazione per un particolare nome di campo (e ancora fare un interruttore per assicurarsi che l'utilizzo attuale campo è all'interno del tipo di nodo che sto cercando per). Quello che sto suggerendo è quello di avere una funzione come questa ...

theme_preprocess_mynodetype(&$vars) {
    // Now I can preprocess a field without testing whether the field is within the target content type
}

... ma non riesco a capire se posso suggerire funzioni pre-elaborazione allo stesso modo posso suggerire file dei modelli

Grazie! Rob

È stato utile?

Soluzione

Credo che stai cercando questo post . Non c'è magia pre-elaborazione per-nodo, solo per motore tema / modello, ma si ha accesso al tipo di nodo in $ vars parametri in modo da poter accendere lì.

Speranza che aiuta!

Altri suggerimenti

Vedere questa funzione in content.module di CCK:


/**
 * Theme preprocess function for field.tpl.php.
 *
 * The $variables array contains the following arguments:
 * - $node
 * - $field
 * - $items
 * - $teaser
 * - $page
 *
 * @see field.tpl.php
 *
 * TODO : this should live in theme/theme.inc, but then the preprocessor
 * doesn't get called when the theme overrides the template. Bug in theme layer ?
 */
function content_preprocess_content_field(&$variables) {
  $element = $variables['element'];
...

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top