ID.nl logo
Huis

Blog maken met Ghost als basis

Ghost groeide in relatief korte tijd uit tot een aantrekkelijk blogplatform, dat al veel gebruikers van WordPress wist over te halen. Maar ook grote bedrijven omarmen het. Versie 2.0 is mede dankzij de nieuwe editor nóg krachtiger en gebruiksvriendelijker. We laten zien een blog maken met Ghost werkt.

WordPress groeide van platform voor bloggers uit naar een volwaardig cms voor websites. John O’Nolan, oprichter en ceo van Ghost, was hier zelf lange tijd bij betrokken. Met het opensource Ghost, begonnen als Kickstarter-project in 2013, bouwde hij een platform dat weer puur op bloggen is gericht. Het wist niet alleen bloggers aan zich te binden, ook grote bedrijven als Apple, Tinder, OpenAI, Mozilla en DuckDuckGo omarmden het. Kijk maar eens op de blog van DuckDuckGo om een indruk te krijgen.

Het bedrijf Ghost is een non-profit organisatie die inkomsten genereert uit (prijzige) hosting. Maar je kunt het ook zelf hosten. Ghost is geschreven in javascript en werkt op node.js. Je installeert het met hulp van Node Package Manager (npm).

Lees ook:CMS kiezen: Waar kun je zoal op letten?

Ghost binnen Docker

Voor deze masterclass installeren we Ghost binnen docker, een snelle en populaire optie. Handig voor experimenten maar ook geschikt voor een productieomgeving. Heb je Docker geïnstalleerd, dan kun je de image opsporen met:

docker search ghost

De officiële heet gewoon ghost en haal je binnen met:

docker pull ghost

Je kunt alle gedownloade images inzien met:

docker images

Ghost werkt intern op poort 2368. Wij gaan lokaal gewoon poort 80 gebruiken. Als url voor Ghost gebruiken we het ip-adres van de machine waarop Ghost draait (in ons geval 10.0.0.71). Het commando om Ghost te starten wordt in dat geval:

docker run -d -p 80:2368 -e url=http://10.0.0.71 --name
ghostdemo --restart always ghost

Na een korte wachttijd is Ghost gestart. Dat kun je controleren met:

docker ps ghostdemo

Je voorbeeldblog staat nu ook al klaar. Gaat er wat mis, gebruik dan dit commando voor statusinformatie:

docker logs ghostdemo

Configuratie van je blog

©PXimport

Je blog staat klaar op (in ons voorbeeld) http://10.0.0.71. Zet hier /ghost achter om de configuratiepagina te openen. Klik daarin op Create your account om je gebruikersaccount voor de blog op te zetten. Vul een titel in voor je blog, samen met een naam, e-mailadres en wachtwoord. De stap om teamleden uit te nodigen kun je overslaan, dit kun je altijd op een later moment doen.

Je komt nu in het overzicht met al je berichten waar al veel voorbeeldcontent staat. Handig om te experimenteren, maar als je er vanaf wilt verwijder je onder Team gewoon de standaard Ghost-gebruiker. Je kunt daar ook aangeven wie er nog meer berichten mogen posten of beheren.

Na het openen van een bericht kom je in de editor die met versie 2.0 een flinke update kreeg en niet meer standaard met Markdown werkt, al kun je dat eventueel nog steeds gebruiken. Je ziet nu veel beter hoe het bericht er in het echt uitziet. Eenvoudige opmaak zoals vet of schuingedrukt pas je simpel toe en ook het invoegen van een enkele foto, galerij of andere content zoals een tweet of YouTube-filmpje gaat gebruiksvriendelijk.

Rechtsboven zie je een icoontje voor de instellingen van het bericht, zoals de gewenste url, publicatiedatum, tags, een korte samenvatting en metagegevens voor onder andere zoekmachines. Zoals je ziet staat het schrijven helemaal centraal.

©PXimport

Thema's en templates

Het standaardthema van Ghost heet Casper, maar je kunt op meerdere websites andere thema’s vinden, zoals de marketplace van Ghost (waarvan sommige gratis) en op Envato Market. Het aanbod is wel kariger dan bij WordPress. Gelukkig staat daar tegenover dat het makkelijker is om zelf thema’s te maken of een bestaande aan te passen.

Voor het grootste deel bestaan de thema’s uit templates met html, css en javascript. Daarin voeg je met de hulp van templatetaal Handlebars verwijzingen toe naar de bijbehorende content. Om een goed beeld te krijgen van de structuur voor templates is het handig het standaardthema Casper te downloaden. Het thema is goed gedocumenteerd en daardoor een goede referentie. Het wordt dan ook vaak als basis gebruikt voor zelfontwikkelde thema’s en templates.

Open je de index.hbs van Casper dan zie je de opmaak en Handlebars voor de homepagina. De post.hbs dient voor individuele berichten. Je zult doorgaans nog wat meer templates hebben, maar deze twee zijn verplicht. Een speciale template is default.hbs. Daarin zijn in feite de header en footer van je website opgenomen die doorgaans voor elke pagina gelijk zijn.

Hierin zijn onder andere metagegevens opgenomen, verwijzingen naar css-bestanden en scripts en soms ook een algemeen navigatiemenu. Alles in post.hbs wordt in feite in de body van default.hbs ingevoegd. Bij veel andere templates zoals author.hbs en page.hbs gebeurt hetzelfde. De Handlebars-code zie je terug in bijvoorbeeld de regel in post.hbs:

<h1 class="post-full-title">{{title}}</h1>

Daarmee wordt in feite de titel van je bericht ingevoegd met de verwijzing

{{title}}

Ghost verwijderen

Ghost is erg gebruiksvriendelijk, maar ook krachtig, zeker met de komst van versie 2.0. Zo kun je een website bijvoorbeeld redelijk eenvoudig in meerdere talen aanbieden. Dat is nog steeds wel wat werk, maar er zijn goede voorzieningen voor. Vertaalde zinnen voor je template bied je gewoon via een apart json-bestand aan. Je bent ook al lang niet meer beperkt tot één stroom aan berichten, maar kunt flexibel structuur aanbrengen met routes en bijvoorbeeld content verdelen over secties. Ben je uitgespeeld met Ghost? Dan kun je de container stoppen met:

docker stop ghostdemo

Of eventueel verwijderen met:

docker rm -f ghostdemo
▼ Volgende artikel
Forza Horizon 6-video toont de gevarieerde omgevingen
Huis

Forza Horizon 6-video toont de gevarieerde omgevingen

Microsoft en Playground Games hebben een nieuwe video van het aankomende Forza Horizon 6 uitgebracht die zich helemaal richt op de gevarieerde omgevingen in het spel.

Zoals al bekend was, speelt het zesde deel in de speelse racefranchise zich af in Japan. Dat levert zowel beeldschone natuur als indrukwekkende stedelijke omgevingen op. De onderstaande trailer richt zich vooral op natuurlandschappen, van besneeuwde gebergten tot uitgestrekte velden en de kust.

Watch on YouTube

Over Forza Horizon 6

Spelers arriveren in Forza Horizon 6 in Japan als toerist, en werken zich langzaam maar zeker omhoog in de racewereld door mee te doen aan festivals. Natuurlijk mogen auto's niet ontbreken in de game. Er zitten meer dan 550 wagens in de game op release. Elke wagen reageert zo realistisch mogelijk op de weg en het weer.

Er zijn verschillende aanpasbare garages te vinden in de spelwereld. Spelers bepalen zelf het uiterlijk van deze garages en kunnen hier hun auto's showen. Daarnaast is er de Estate, een uitgebreid landschap waar spelers gedurende het spel hun eigen thuishaven kunnen opbouwen.

Op 19 mei komen zowel de standaard editie als een deluxe editie van de game uit, zo werd onlangs aangekondigd. Mensen die de laatstgenoemde editie aanschaffen, ontvangen op 15 mei al toegang tot de game. De standaard editie gaat 69,99 euro kosten. De game komt op de bovengenoemde datum uit voor Xbox Series-consoles en pc, en later dit jaar ook voor PlayStation 5.

De Forza Horizon-reeks

In de Forza Horizon-games kunnen spelers naar hartenlust rondscheuren in mooie bolides. De games spelen zich af in open werelden, waarbij men de mogelijkheid heeft om aan diverse racefestivals mee te doen. Het betreft een subreeks van Forza Motorsport – dat zijn serieuzere racegames ten opzichte van de wat speelsere Horizon-titels. De populariteit van de Horizon-subreeks is die van Forza Motorsport inmiddels voorbijgestreefd.

De ontwikkelaar van de Forza Horizon-reeks is Playground Games. Zij werken ook aan de nieuwe Fable, die onlangs tijdens de Xbox Developer Direct werd getoond.

▼ Volgende artikel
WhatsApp-berichten inplannen wordt misschien mogelijk
© Ascannio - stock.adobe.com
Huis

WhatsApp-berichten inplannen wordt misschien mogelijk

Het wordt wellicht mogelijk om straks berichten op WhatsApp in te plannen, zodat je ze kunt timen en in de toekomst kunt versturen.

De functie is al beschikbaar in de bèta van de chatapp, zo meldt WABetaInfo - het is dus goed mogelijk dat het uiteindelijk voor iedereen uitgerold wordt. Het gaat daarbij om iOS-versie 26.710.72 van de app.

De ingeplande berichten verschijnen daarbij in een apart gedeelte binnen het informatiescherm van een chat of groepschat, en worden logischerwijs op het centrale chatscherm getoond wanneer ze verstuurd worden. Tot die tijd kan de schrijver van het bericht aanpassingen maken aan het bericht of hem verwijderen.

Veel andere chatapps hebben de mogelijkheid al om berichten in te plannen, zoals Slack en Signal, maar WhatsApp dus nog niet. Dit zou in de nabije toekomst dus kunnen veranderen. Dit kan bijvoorbeeld handig zijn om een bepaalde herinnering te sturen voor een (groeps)chat, of een felicitatie in te plannen.

Meta blijft WhatsApp sowieso continu aanpassen. Onlangs is de optie er bijgekomen om nieuwe groepsleden oudere berichten uit de groepschat te laten lezen. Het kan hierbij tot maximaal honderd berichten gaan.