Az előző bejegyzés írásánál még nem tudtam hogyan lehetne ezt megvalósítani, de az élet rákényszerített egy project kapcsán ahol sok nézetet kellet csinálni és iszonyú lassú volt a szerver egyébként is a site mögött, plusz lehetőség volt verziókezelésre.
Fontos itt az elején leírni, hogy bár létezik Drupal 6-os verzióra a Views 3 én ezt Drupal 7 alatt készítettem el és ahhoz készültek a példakódok is.
Tehát ha a felületen összekattingattuk a nézetünket amit szeretnénk kódban tárolni akkor írni kell egy saját modult amelyben megvalósítjuk a hook_views_api függvényt.
Az example.module fájl tartalma:
<span style="color: #000000"><span style="color: #0000BB"><?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">example_views_api</span><span style="color: #007700">() {<br /> return array(<br /> </span><span style="color: #DD0000">'api' </span><span style="color: #007700">=> </span><span style="color: #0000BB">3</span><span style="color: #007700">,<br /> );<br />}<br /></span><span style="color: #0000BB">?></span></span>
Ha modult írunk az info fájl sem maradhat le:
name = example<br />description = "Take the views into code"<br />package = Views<br />core = 7.x
És most jön a varázslat. Mivel a modulunkba meghívtuk a hook_views_api függvényt ezért a modul könyvtárában automatikusan megkeresi a Views a MODULNEVE.views_default.inc fájlt, ami jelen esetben az example.views_default.inc lesz, amelyben egyetlen függvényt kell meghívni a hook_views_default_views-t:
<span style="color: #000000"><span style="color: #0000BB"><?php<br /></span><span style="color: #007700">function </span><span style="color: #0000BB">archimon_views_default_views</span><span style="color: #007700">() { <p></p></span><span style="color: #FF8000">//Ide beillesztjuk a views felületén megkapott exportálandó kódot <p></p></span><span style="color: #0000BB">$views</span><span style="color: #007700">[</span><span style="color: #DD0000">'fooldal'</span><span style="color: #007700">] = </span><span style="color: #0000BB">$view</span><span style="color: #007700">; </span><span style="color: #FF8000">// Itt megadjuk a nézet nevét és átadjuk a $view-nak.<br />// Ezt a lépést a függvényen belül annyiszor végezhetjük el ahány nézetet szeretnénk exportálni kódba. <p></p></span><span style="color: #007700">return </span><span style="color: #0000BB">$views</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?></span></span>
Az exportálandó kódot erre a linkre kattintva tudjuk elérni:
A modul engedélyezése után csak vissza kell állítani a nézeteket a Views felületén (/admin/structure/views) és kész.
Remélem hasznos volt és valakinek segített. :)