Presentera innehåll/sidor baserat på en sidas position i sajtstrukturen

Events happening in the community are now at Drupal community events on www.drupal.org.
davva's picture

Hej,
Jag har två nybörjarfrågor kring hur man förhåller sig till innehållsstrukturen på en sajt, och hur man kan hämta/presentera innehåll/sidor baserat på en sidas position i sajtstrukturen.

  1. Min primary navigation har tre nivåer.
    Jag vill att sidorna på varje nivå ska ha teasers till "sina undersidor". Dvs, sidorna på nivå ett ska förutom ett eget innehåll även ha teasers för sina nivå 2-sidor. På samma sätt ska alla sidor på nivå 2 ha teasers sina undersidor (som alltså är nivå 3).
    Hur löser jag detta?

  2. Alla sidor har samma innehållstruktur (rubrik, bild, text), men layouten ska vara olika beroende på vilken nivå sidan är i menystrukturen. Hur löser man detta? Innehållet är alltså det samma, men det ska se olika ut beroende på om sidan är en "nivå 1-sida" resp. "nivå 2-sida". På nåt sätt antar jag att man skulle vilja skapa tre template-filer, typ page-level1.tpl.php, page-level2.tpl.php och page-level3.tpl.php. Hur hade ni löst detta?

Comments

Har endast tid att skriva ett

johankasperi's picture

Har endast tid att skriva ett kort svar, säg till om du vill att jag skall förklara mer detaljerat...

  1. Detta skulle jag ha löst med Views och Panels, först skapa en View för respektive nivå med alla teasers inkluderade. Sedan skapa en page (i panels) för varje nivå där du lägger in ett fält med din View för alla teasers i nivån under. Om du inte kan Views eller Panels så är det bara att googla, det finns jättemånga tutorials och screencasts!

  2. Vad menar du med layout? Olika "classes" (färger, typsnitt med mera) eller olika placering av fälten? Oavsett så skulle jag använda Panels och Views för det också. I både Panels och Views (i Views måste du ha Semantic Views installerat) så kan du lägga in egna taggar, t.ex. en div-tagg.
    Lycka till!
    /J

Hur hämta undersidor i views?

davva's picture

Tack för svaret!

Två frågor:

1. Hur filtrerar jag i en view ut undersidorna baserat på menystrukturen? Under "filter" kan jag inte hitta något passande..

2. Sidorna skiljer sig på följande sätt: Fälten är placerade på olika platser/sätt på sidan. Varje sida har t ex en huvudbild, men denna bild är större och täcker hela sidan på nivå 1. På nivå 2 är bilden mindre och ligger i en kolumn med text under. Jag skulle vilja använda imagecache för att kunna ladda upp en stor bild, som sedan kan skalas ner om sidan ligger på nivå två. Jag använder samma content type för båda nivåerna.

Jag hittar ingen bra modul

johankasperi's picture
  1. Jag hittar ingen bra modul för det, du kan prova den här http://drupal.org/project/menu_node_views. Jag har dock ingen erfarenhet av den och de är endast i alphastadiet. Det bästa vore om du hade flera content types och sedan haft ett "Node reference"-field (CCK) för nivå 2 och 3. Alltså att t.ex. sidan "Taxar" i nivå 2 har en referens till "Hundar" i nivå 1. Om du gör en hemsida om hundar :)

  2. Placering samt mängd av fält gör du i Panels och med CSS. När det gäller din bild så hade det även här hade det varit toppen med flera content types, då hade du kunnat haft olika Image Caches i ditt CCK-fält.

Om du vill fortsätta med endast en content type så finns det andra sätt att lösa det på, men enligt min mening så blir det enklare på detta sätt. Framförallt eftersom det är lätt att sätta olika content types-argument i både views och panels, även i Context för den delen.

Lycka till!

Vad menar du med en

Leiph Berggren's picture

Vad menar du med en undersida? Det finns ingen given hierarki mellan sidorna i Drupal, det finns inget givet filsystem med mappar etc. Om du vill ha hierarkier måste du ange det manuellt på något sätt.

Ett sätt är att använda taxonomi, du kan skapa hierarkier mellan olika termer. En nivå heter 'Hundar', under den finns 'Taxar' och 'Pudlar', under 'Taxar' kan du ha 'Korthårig' och 'Strävhårig', osv.. . Då kan du använda de vanliga funktionerna i Views för att filtrera och skapa block som visas på sidorna.

Men om du vill ge dig ut på de djupa vattnen så kan jag också (som Kasberry) rekommendera VievsAttach och NodeReference. (Se instruktionsvideon Views Attach with Nodereference URL.)

Sweden

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: