Esportazione delle impostazioni di blocco in una caratteristica (Drupal 7)


13

Sto cercando di imparare a creare un flusso di lavoro ragionevole tra un sito di sviluppo e un sito di produzione e ho deciso di utilizzare il modulo Funzionalità per aiutare a realizzare questo compito.

Sulla mia prima pagina ho un paio di blocchi che mostrano i contenuti appena aggiunti e più votati. Ho usato le funzionalità per esportare queste viste ma non vedo comunque all'interno del modulo Caratteristiche per esportare le mie impostazioni di blocco. Ho impostato i nuovi progetti e i blocchi più votati da mostrare nella sezione dei contenuti di una pagina. Lo filtro per mostrarlo solo in prima pagina all'interno della vista.

Come esportare queste impostazioni di blocco all'interno della mia funzione, quindi non ho bisogno di riconfigurarle su ciascun sito?

Risposte:


13

Puoi esportare molto di più usando Feature insieme a Strongarm e Features extra .

Strongarm offre ai costruttori di siti un modo per sovrascrivere i valori delle variabili predefinite forniti da Drupal core e dai moduli forniti. Non è uno strumento per l'utente finale, ma uno strumento di sviluppo e di creazione di siti che fornisce un'API e un'interfaccia utente limitata.

Supporta extra : vocabolari; nodequeues (definizioni); Impostazioni di blocco; blocchi personalizzati (scatole).

Inoltre, l' integrazione delle funzionalità UUID fornisce un meccanismo per esportare contenuto (nodi, tassonomia, campi) in un modulo di funzionalità.


1
Consiglierei anche di usare drush e git per gestire il flusso di lavoro.
Refineo

1
Fantastico, è esattamente quello di cui avevo bisogno. Stavo pensando di far funzionare git una volta che avessi capito come usare le funzionalità un po 'meglio.
Mike2012,

Fantastico! Come Mike, è semplicemente incredibile!
Jean-Rémy Revy,

4

È possibile utilizzare il modulo Scatole come da Esportazione di blocchi per funzionalità .

Se preferisci non installare moduli aggiuntivi e hai a che fare con un blocco Views (dove hai semplicemente bisogno delle impostazioni di configurazione del blocco), un'altra opzione è farlo a livello di codice con un'implementazione hook_update_N () in un modulo personalizzato file di installazione. Vedi sotto per un esempio.

/**
 * Configure block settings.
 */
function my_module_update_7101() {

  // Enable blocks
  db_update('block')
    ->fields(array(
      'status'     => 1,
      'region'     => 'content',
      'visibility' => 1,
      'pages'      => 'node/999',
      'title'      => 'My Block Title',
      'css'        => '',
      'js'         => '',
    ))
    ->condition('delta', 'BLOCK_ID')
    ->execute();
}

0

Un'alternativa è utilizzare mini-pannelli invece di blocchi personalizzati come suggerito qui . Funzionano allo stesso modo e i pannelli sembrano essere meglio supportati dalle funzionalità. Se hai già in programma di utilizzare i pannelli, questo risparmia anche alcuni moduli extra.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.