come posso ottenere il mio modulo per installare una vista?


8

Ho sviluppato un modulo in un ambiente di sviluppo. Ho creato una vista usando l'interfaccia utente. Ho esportato la vista, ma non so dove inserirlo in modo che anche un'installazione del modulo in un nuovo ambiente creerà la vista.

Come posso farlo correttamente?

Bonus: come posso disinstallare la vista dal modulo hook_uninstall?


Risposte:


10

Crea il file MODULENAME.views_default.inc (sostituisci MODULENAME con il nome del tuo modulo) e copia il codice esportato nell'implementazione della hook_views_default_views()tua scrittura in quel file.

Ad esempio, il modulo Viste implementa node_views_default_views()per il modulo Nodo. Le parti rilevanti per la vista della prima pagina sono le seguenti.

  $views = array();

  // Omissis

  $view = new view;
  $view->name = 'frontpage';
  $view->description = 'Emulates the default Drupal front page; you may set the default home page path to this view to make it your front page.';
  $view->tag = 'default';
  $view->base_table = 'node';
  $view->human_name = 'Front page';
  $view->core = 0;
  $view->api_version = '3.0';
  $view->disabled = TRUE; /* Edit this to true to make a default view disabled initially */

  // Omissis

  $views['frontpage'] = $view;

L'hook quindi restituisce il contenuto di $views.

Se la vista non è stata sovrascritta da un utente, non dovrebbe essere mostrata nell'elenco delle viste, una volta disinstallato il modulo che implementa l'hook.


2
Non dimenticare di implementare hook_views_apinel file del modulo principale. Vedi Visualizzazioni 3.8 hook_views_default_views () ha smesso di funzionare .
terzo
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.