Menu

WordPress som extranät med forum och SSO

Vi älskar när vi ges möjligheten att göra saker som går emot mångas föreställningar om vad som är möjligt med WordPress som CMS. Unikums nya webbplatser är ett sådant projekt. Visste du att man kan använda WordPress som extranät med supportforum och kundinloggning via SSO?

Vi kände i alla fall inte till någon som gjort något liknande innan vi påbörjade detta projekt. Dock såg vi det mer som en utmaning än något avskräckande. Det är inställningen vi anammat för att inte mista vår position som en av de främsta på webbutveckling och WordPress.

För att börja i rätt ände kan det vara värt att berätta lite om vår uppdragsgivare. Unikum är Sveriges största webbtjänst för samarbete kring mål, planer, dokumentation och kvalitet i förskola och skola. Flera hundra tusen personer använder Unikum regelbundet, och det finns 10 000-tals planeringar och matriser i Unikum Skolbanken. Jobbar du med eller är förälder till barn som går i förskola eller skola är chansen stor att du redan hört talas om Unikum.

Uppdraget gick ut på att kunden ville ha både nya och uppdaterade webbplatser för marknadsföring, nyhetsförmedling och support av deras webbtjänst. Supporten de ville erbjuda är det som gjorde det här fallet intressant. Som användare av deras webbtjänst ville de att man inte bara skulle tillgå hjälpinformation som dokumentation och frågor och svar. Det skulle även finnas ett supportforum, delvis öppet och delvis begränsat för enbart inloggade, som man loggas in automatiskt till om man loggat in i deras webbtjänst. Forumet skulle dessutom dela information med webbtjänsten om den inloggade användaren för att synkronisera användarnas profiler, m.m. Vidare fanns ett gammalt forum som de ville migrera användare och foruminlägg ifrån.

Det hela skulle förverkligas genom inte mindre än fyra olika webbplatser; unikum.net för marknadsföring, nyheter.unikum.net för nyhetsförmedling, support.unikum.net för hjälpinformation och forum.unikum.net för forumet. Det skulle dock vara enhetlig design och sidorna skulle ha möjligheten att dela information med varandra för att undvika dubbelt redaktionellt arbete.

Lösningen vi tagit fram och som finns att betrakta på unikum.net idag ser ut som följer:

http://www.screenr.com/npD7

Mer konkret och som kanske inte framgår av klippet ovan består lösningen av:

  • WordPress Multisite med gemensamt huvudtema för alla webbplatser och underteman för webbplatsspecifika anpassningar
  • Redaktionellt innehåll strukturerat och hanterat av WordPress med hjälp av Custom Post Types, Custom Taxonomies och tillägget Simple Fields
  • Egenutvecklade widgets för cross-site publicering och/eller kontextuellt anpassat innehåll
  • BBPress som tillägg för publika forum med anpassat tema
  • Buddypress som tillägg för interna forum med anpassat tema
  • Search Everything som tillägg för sökningar med anpassad sökresultatsvy
  • Egenutvecklat tillägg för autentisering mot Unikums webbapplikation via oAuth
  • Egenutvecklade migreringsskript för import av användare och foruminlägg från kundens tidigare Jive-forum till BBPress

Mycket av detta kanske säger oss webbutvecklare mer än vad det gör för någon annan, men vi hoppas det ändå säger att det faktiskt är WordPress som ligger till grund för det hela och att vi ”bara” skapat kundanpassat tema, utökat funktionaliteten med färdiga tillägg (plugins) och utvecklat viss egen tilläggsfunktionalitet.

Det vill dock inte säga att det hela varit en enkel uppgift. Även med färdiga och öppna webblösningar som WordPress så är det en hel del jobb med att bara göra ett eget unikt mallramverk för uppdragsgivaren. Utöver det har vi för detta uppdrag behövt skapa ytterligare två mallramverk för de två forumtilläggen (BBPress & Buddypress), en särskild informationsarkitektur för att hantera ett flertal olika informationstyper, vårt eget oAuth-tillägg för SSO (Single-Sign-On) och migreringsskript för att importera användardata och foruminlägg från kundens tidigare Jive-forum.

Det är sådant som inte finns färdiga lösningar för, oavsett om vi tittar på lösningar belagda med licenskostnader eller ej. WordPress har dock fördelen att vara fritt tillgängligt, öppen källkod och gjort för att specialanpassas utan att man behöver vare sig betala eller fråga någon om lov. Därför räds vi inte att påstå att WordPress kan användas för vilken typ av webblösning som helst.