Kristoffer Qvists blogg om allt möjligt

Etikett: CMS

När ska man använda Drupal?

Ofta har man kanske läst om det, att Drupal lämpar sig väl till vissa projekt. Som verktyg är det väldigt anpassningsbart, och man behöver inte kunna koda även om det är fördelaktigt. Ibland kanske man bör undvika att använda Drupal medan andra gånger ska man köra på. Jag kommer gå igenom när Drupal passar just ditt projekt.

0. Ha en färdig kravspec

Förmodligen givet för de flesta, men tyvärr inte alla. För det första, innan man bestämmer sig att använda något verktyg, är det väldigt viktigt att ha en kravspecifikation. Drupal skulle jag gärna vilja likna vid ett ramverk, som man ”klipper och klistrar” ihop till en sajt. Utan en given kravspecifikation kan det nämligen bli väldigt svårt att komma igång och faktiskt grotta ned sig i sajtbygget.

1. Du bygger en sajt för många

Drupal skiner igenom när man skapar en sajt för flera användare med olika roller. Exempel på tillämpningsområden kan vara om man använder ett system för intra- och extranät. Då kan förstås integration med LDAP vara viktigt, och kanske Single Sign-On (SSO). Här kan jag nämna projekten LDAP samt Webserver Auth.  Används de senare rekommenderar jag att man använder Drupal 7, eftersom båda inte har fullt stöd ännu för Drupal 8.

Råkar du ha en webbredaktör kan du även behöva Linkit för att förenkla deras jobb.

2. Du behöver en anpassningsbar, modulär lösning

Ibland är man i behov av en lösning som fixas på 5 minuter, men som inte behöver anpassas mycket därefter. Drupal kräver drygt en halvdag för att lägga till och anpassa moduler som krävs i sajten.

3. Var inte rädd för att söka hjälp

Stöter man på patrull är det bra att känna till att Drupal har forum där man kan ställa frågor. Drupal har även en egen subdomän på Stackexchange. Mitt viktigaste verktyg är däremot en sökmotor. Vill man använda sig av en privat sökmotor kan jag tipsa om Startpage.com. Mig veterligen är det den enda som är granskad av tredje part att bejaka besökarnas sekretess.

Moduler för Drupal som (jag tycker) är viktiga

Moduler för Drupal är definitivt en viktig fråga. Men först en jämförelse av både WordPress och Drupal, bara för skojs skull. Kanske finns det någon läsare som undrar ”varför ska jag välja x över y”? Tanken med inlägget är att ge svar i den frågan.

Jag kanske har nämnt det tidigare, att jag gillar Drupal trots att det är något komplext. Jag gillar kommentaren som jag såg, förmodligen på en sida på Drupal.org, där olika webbpubliceringsverktyg jämfördes. Jag parafraserar kommentaren nedan, då jag inte kommer ihåg den exakt:

WordPress är som en smörkniv, medan Drupal är en Schweizisk armékniv.

Innebörden är ungefär den, att WordPress är byggd för att fungera för de flesta. Vill man specialisera sidan, så lär det genast bli svårare för den som äger sidan. Fördelen är dock att WordPress är väldigt enkelt att lära sig, eftersom sajtägare behöver kanske fem minuter innan man har en fullt fungerande (om än tom) webbsajt. Drupal å andra sidan gör inga antaganden av vilken typ av sida du vill ha. Istället ges du verktyg att anpassa sidan till mycket högre grad i jämförelse med WordPress.

Nackdelen med Drupal är dock den, att det kräver mer kunskap av webbsajtens innehavare. Olikt WordPress så tar det inte fem minuter att få en fullt fungerande sida. Lite skämtsamt skulle jag nog säga fem timmar, eftersom man ofta vill ha diverse moduler och kanske anpassa utseendet. Man märker också på communityt att det är rätt anpassat för programmerare, för man uppmanas att använda verktyg som webbprogramerare använder. Jag kan dock ta det i ett annat inlägg, eftersom jag nedan kommer presentera de viktigaste modulerna (enligt mig).

Viktiga moduler för Drupal

Modulerna som presenteras nedan har jag kategoriserat efter vad de gör, eller har för funktion. De hjälper sidans användbarhet. Alla moduler är i skrivande stund aktiva och aktuella för Drupal 8.

Utseende

Pathauto är en modul som skapar specialiserade URL:er automatiskt. Standardinställningen i Drupal genereral länkar som ser ut som www.example.com/node/123. Med Pathauto kan man istället skapa länkar med sidans rubrik, eller datum för skapande. Det finns förstås fler sätt, och dessa kan läsas i modulens konfiguration.

Pathauto kräver även modulerna Token och Chaos Tools (ctools).

Om man även vill modifiera administrativa gränssnittet är temat Adminimal. Till det bör man installera modulerna Admin Toolbar, som används av Adminimal Admin Toolbar.

Säkerhet

Drupal kommer inte med ett spamfilter, utan det får man lägga till i efterhand. Bland moduler som motverkar spam kan jag nämna Honeypot och Antibot. Deras approach skiljer sig åt något; Honeypot skapar ett gömt fält, som spambottar gärna fyller med data. Därav kan modulen bestämma vilka som är människor och vilka som är spambottar.

Antibot å andra sidan använder javascript för att filtrera bort spambottar. De flesta spambottar kör nämligen inte javascript och kan således inte registrera sig eller skriva kommentarer.

Inaktiva moduler som kanske behövs

Tänker man köra en blogg, eller nyhetssida, kan man eventuellt vara intresserad av att visa arkiv för månader och år. I skrivande stund har Drupal stöd för att visa arkiv, men denna funktion är inte påslagen som standard.

När modulen är aktiverad kanske man också vill lägga till ett ytterligare kriterium för blocket. Vanligtvis listar den nämligen vanliga sidor och inlägg skapta ett visst år och månad. Om man går till <drupals installationsmapp>/admin/structure/views/view/archive så får man lägga till Content: Innehållstyp (= Artikel) under ”Filterkriterier”.

Vidareutveckla sajt

För att verkligen bli ett ess med Drupal gäller det att lära sig. En resurs på nätet som jag stött på och är tacksam för är Webwash. Där kan man exempelvis lära sig att skapa en blogg med Drupal. Annars är förstås Drupals sajt också en nyttig resurs på webben. Om du vill lägga till ytterligare funktionalitet kan du antingen söka efter moduler för Drupal eller utveckla dem själv.

Åter till gammal trotjänare

Som ni säkert har noterat på sistone har jag modifierat min hemsida rätt mycket. Jag har testat både databaslösa innehållshanteringssystem och andra med databas också. Misstänker att man av ”gammal vana” återvänder till en gammal trotjänare som man använt sedan tidigare. Därmed inte sagt att nytt är sämre än gammalt och beprövat. Som ny på marknaden gäller det även att komma över vissa bekvämlighetströsklar.

Grav och Bludit

Jag har tidigare provat på databaslösa system, såsom Grav och Bludit. Båda har lite olika approach; Grav är rätt modulärt med flera tillägg som man kan installera. Installationen av tilläggen sker antingen genom att man skriver kommandon i kommandoraden, eller att man laddar ned .zip-filer i rätt katalog. Bludit kommer med rätt mycket färdigt, och man kan vid behov även här installera tillägg. I Bludit kan man enbart ladda ned nya tillägg i rätt katalog.

Vad gäller användargränssnitt är dessa också väldigt annorlunda bland dessa två.  Grav har inte ett administrativt användargränssnitt i grundpaketet. Däremot finns det möjlighet att ladda ned detta från projektets hemsida med baspaketet. Själva administrativa gränssnittet är väldigt rent och snyggt enligt mitt tycke (ja, nu är jag helt och hållet ”objektiv”)*. Bilder och dokumentation finns tydligt framlagt på deras hemsida, så när som på om man vill modifiera lite efter eget tycke.

Bludit kommer från start med ett administrativt gränssnitt. Vissa delar kan man direkt känna igen från WordPress medan andra inställningar kanske inte är lika tydliga. Bludit kan provas på deras demosida.

Båda är bra på sina sätt men i slutändan vinner enkelheten av att använda systemen för mig. Ja, det går att modifiera en sajt så att man är väldigt nöjd med den. För mig når WordPress det väldigt fort medan det tar avsevärt längre tid med Grav och Bludit.

WordPress – min gamla trotjänare

WordPress har sina för- och nackdelar också. Dock så vinner den  genom att det går fort att skapa en sida och även börja skriva med. Det gick även fort med de tidigare två nämnda programmen, men de behövde modifieras efter mitt tycke när jag använde dem. Tiden som gick åt att modifiera dem tog längre tid än att göra samma med WordPress. Det kan också ha att göra att jag faktiskt länge har suttit med WordPress, men det är en annan femma…

*Jag tycker mig vara väldigt tydlig när jag är sarkastisk, men ibland finns det några läsare som tror att jag är gravallvarlig. I meningen var jag sarkastisk – som jag vill förtydliga för dessa läsare.

Grav, plugins med mera

Grav är ett CMS som jag tycker är ett väldigt intressant verktyg. Att med verktyget slippa använda databaser och istället använda filer för att visa hemsior känns väldigt bra då databaser har vissa svagheter och kräver att man ständigt använder sig av defensiv programmering. Dock måste jag säga att Grav ändå inte lämpar sig för en novis inom webbsfären. Det krävs, enligt mig, kunskap inom javascript, YAML, PHP, Twig och HTML. Orsaken till att man inte bör vara novis är att man nästintill är tvungen att använda kommandoraden för att installera plug-ins. För mig, som ändå är någorlunda bekväm med de tidigare nämnda teknikerna upplever systemet som relativt enkelt, men jag skulle däremot ha svårt att tänka mig en person med grundläggande tekniskt kunnande använda Grav.

Installation av plug-ins

För att exemplifiera kan jag nämna när man skall installera plug-ins, enligt den officiella dokumentationen: grav-root/bin/gpm install pluginnamn, alternativt ladda ned plug-ins till grav-root/user/plugins och därefter eventuellt modifiera plug-in:et. Visst, det finns ett administrativt gränssnitt som hjälper väldigt mycket, men då måste man som användare även vara införstådd med hur systemet fungerar, vilka menyer man skall använda med mera. Men av någon anledning tycker jag trots all ”krångel” om systemet ändå.

Communityt

Communityt är litet och man märker rätt tydligt av att det är många webbprogrammerare som utvecklar systemet. Behöver man hjälp får man det även om jag ibland kan uppleva lite ”RTFM-mentalitet”. Jag ser att systemet ändå har potential. Och det är bra att det finns personer, som inte är aktiva utvecklare som också lägger upp guider vilket lyfter betyget för Grav något för mig. Ett exempel på sådant är Bszyman, som på sin blogg skrev om hur man integrerade en arkiv-sida i sin installation av Grav. Jag blev förstås inspirerad av detta i mitt tidigare inlägg, och gjorde en något mer grundlig genomgång. Men det är klart, inlägget kan förmodligen förbättras ännu mer.

Alternativ till Grav

För både noviser och de som vill göra det enkelt för sig skulle jag nog ändå rekommendera att använda WordPress. Drupal har en s.k. distribution (samlade paket/plug-ins med kärn-Drupal) som också verkar väldigt lovande, vid namn Varbase. Dock har jag inte använt det såpass mycket att jag kan säga definitivt att nybörjare kan eller inte kan använda systemet. Men utifrån det jag sett så verkar ändå det ta bort en stor del av mödan att skräddarsy sajter.

Vidare läsning

För den som är intresserad finns det intressanta jämförelser av olika innehållshanteringssystem som är databaslösa. Nedan jämförelser är dock skrivna på engelska.

Äntligen ombyte!

Jag har tidigare främst använt mig av WordPress som innehållshanteringssystem för min blogg. Det har visserligen fungerat bra ett bra tag för mig, men det har under årens lopp också medfört vissa bekymmer. Dock har jag ändå lärt mig mycket utav detta, dels vikten av att faktiskt ha en god lösning vad gäller cache men också hur pass länge jag kunde använda det systemet med väldigt begränsade resurser. Jag kommer att migrera de flesta inlägg till denna sajt så småningom.

Idag har jag förstås något bättre resurser och (förhoppningsvis) även ett lättare innehållshanteringssystem, vad gäller resursanvändningen. I slutändan handlar det om att kunna göra det man själv vill inom de ramar som man har. Jag själv tycker att det är en rolig utmaning att faktiskt kunna ”klämma ut” så mycket kräm som möjligt ur så få resurser som möjligt.

En gång i tiden var faktiskt denna hemsida i en Raspberry Pi modell B (precis, den innan B+), men det var för ungefär fyra år sedan. Dock är denna inte kvar på den maskinen, som jag för övrigt har kvar. Men med den ”ledig” så kan jag hålla på med andra projekt som jag finner roliga, även om Raspberry Pi modell B version 2 eller senare har fler stödda operativsystem.

Nu är det alltså dags att använda ett system som inte använder en traditionell databas. I stället använder jag mig av vad man i engelskan kallar för ”Flat file database”, vilket betyder att data sparas i textfiler. Den främsta orsaken är att jag driver en mindre blogg som egentligen inte kräver en stor databas med flera användare.

© 2024 qvi.st

Tema av Anders NorenUpp ↑