Egyetlen egy nézet oldal kiiaratása egy üres "lapra"

vidra képe

Van egy nézetem és van benne egy blokk nézet.

Szeretném ezt a blokk tartalmat kiírni egy teljesen üres lapra, úgy hogy az oldalhoz tartozó egyéb templetek ne jelenjenek meg (menü,blokkok stb). Tehát nem a contant részbe.

Hogyan tudnám ezt megoldani? Hol keresgéljek?

Drupal 6.-os alatt ezt a kíírási módszert használtam:

$view = views_embed_view('nezet', $display_id = 'blokk-nev');  print $view;

Működik ez még 7-es alatt?

Drupal verzió: 
Fórum: 
csakiistvan képe

d7 alatt én így printeltem ki:

<?php print views_embed_view('front_slideshow', 'block_1'); ?>
1
0

Drupal full-stack developer at Wunderman Thompson Budapest

vidra képe

ezt kipróbálom.

És arra tudnál valami megoldást mondani, hogy hogyan irjam ki úgy, hogy csak ez az egyetlen egy blokk látszódjon a lapon semmi más?

0
0
vidra képe

Készítettem egy külön tartalomtípust, majd ebből a felesleges mezőket kitöröltem, mert úgyse lesz rá szükségem (egyenlőre).

A template.php-ba beszúrtam ezt a függvényt:

  function typebased_process_page(&$variables) {
  // Add theme suggestion for all content types
  if (isset($variables['node'])) {
    if ($variables['node']->type != '') {
    $variables['theme_hook_suggestions'][] = 'page__node__' . $variables['node']->type;
    }
  }
}

Majd az adott tartalomtípus nevével készítettem egy template fájlt: page--node--tartalomtípusneve.tpl.php

És végül így kiirattam a tpl-ben a az adott nézet adott blokkját:

<?php print views_embed_view($name = 'nezetneve', $display_id = 'blokknev');?>

Igaz ez csak egy egyedi oldalhoz jó, de ez nekem pont elég most.

0
0
pp képe

Meg lehet kérdezni, hogy miért csinálod ezt?

Én nagyon úgy érzem, hogy nem a legjobb megoldást találtad meg. Ha erre azért volt szükség, mert egy szolgáltatást nyújtasz az oldalon akkor nagyon nem jó ezt a logikát szanaszét szórni. Van egy kis rész a sminkben, van egy kis rész a tartalom típusoknál és van egy kis rész a view beállításoknál. Hosszú távon ez nagyon nehezen menedzselhető.

Én egy pici modult javasolnék, amiben három függvény lesz: Egy hook_view ami a kiexportált view-t tartalmazza. Egy hook_menu, mely összerendeli az útvonalat és a harmadik függvényt. Végül egy függvény amiben a print szerepel.

Ekkor ez a funkcionalitás egy helyen található csak meg a rendszeredben, ráadásul a moduloknál egy kis jelölőnégyzettel ki-be kapcsolható. Szemben a másik megoldással, aminél hákolnod kell egy csomót, ha el akarod távolítani/átalakítani és bármit is csinálsz biztos lehetsz benne, hogy valahol hagysz egy kis szemetet majd.

pp
btw miért blokk, ha oldal?

1
0
scorchio képe

Nem tudom, hogy pontosan mi miatt szeretnéd ezt csinálni, de egy korábbi tapasztalatom miatt bevillant a következő ötlet:

Lehet, hogy érdemes lenne csinálni egy sminket/gyermeksminket az aktuálisból (amiből persze minden "szemét" ki van hajítva) és a megfelelő Views oldal(ak) esetén erre a sminkre átváltani ThemeKey segítségével mondjuk. Hogyha nem csak egy ilyen oldal lesz, akkor ez sokat egyszerűsíthet később a dolgodon.

0
0

Adamek Zoltán aka Scorchio | http://zoltanadamek.com