Hoe Ghost's ingebouwde AMP-ondersteuning te gebruiken

In deze tutorial zal ik je door alle belangrijke aspecten van het gebruik van Ghost's ingebouwde AMP-ondersteuning leiden.

Notitie: in dit artikel wordt ervan uitgegaan dat u al bekend bent met het maken van AMP-geldige pagina's, en als zodanig gericht bent op de details specifiek voor het samen gebruiken van Ghost en AMP. Als u nog geen ervaring heeft met AMP, bekijkt u het volgende:

  • AMP in 60 seconden
  • Up-to-date met AMP
  • Een basis AMP-pagina maken met Scratch
  • AMP-project: zal het uw sites sneller maken
  • Hoe u amp-img en amp-video kunt gebruiken om uw website sneller te maken

Ik ga er ook van uit dat je weet hoe je een typisch Ghost-thema kunt maken. Zo niet, dan kunt u leren hoe door het lezen van:

  • Update: Wat is er nieuw in Ghost-thema's
  • Bouw een Ghost Theme van Scratch
  • Ghost Theme Development: Beyond the Basics

Ghost's Ingebouwde AMP-ondersteuning

In feite heeft Ghost automatische AMP-ondersteuning zonder dat je een vinger hoeft op te tillen. De AMP-versie van een bericht kan alleen worden bezocht door toe te voegen / Amp / naar zijn URL. De reguliere versie van een bericht bevat ook automatisch een link in de sectie om Google te laten weten dat deze AMP-versie beschikbaar is.

Als gevolg van deze geautomatiseerde functionaliteit, als u een Ghost-bericht bezoekt met Chrome met de AMP Validator-extensie geïnstalleerd, ziet u een klein blauw koppelingspictogram dat aangeeft dat er een AMP-versie van de pagina is gedetecteerd.

Klik op het pictogram om naar de AMP-versie van de post te gaan. Op dat moment ziet u het pictogram groen worden om geldige AMP-code aan te geven.

Deze geautomatiseerde AMP-ondersteuning is echter alleen voor afzonderlijke berichten. Andere soorten inhoud zoals uw startpagina of tagpagina's hebben geen AMP-versies tenzij u uw hele thema handmatig ontwikkelt om volledig te worden opgebouwd uit AMP-compatibele code.

Een aangepaste AMP-sjabloon gebruiken

Standaard wordt de presentatie van AMP-berichten op Ghost beheerd door een interne sjabloon. Om te zien hoe deze sjabloon is samengesteld en een referentie te krijgen voor hoe AMP met Ghost werkt, vindt u deze standaardsjabloon in uw Ghost-installatie op /core/server/apps/amp/lib/views/amp.hbs

Als u liever uw eigen markeringen en opmaak gebruikt voor uw AMP-berichten, moet u een sjabloon maken met de naam "amp.hbs"in de hoofdmap van uw thema.

Uw AMP-sjabloon kan niet worden uitgebreid op de standaard "default.hbs" -sjabloon, zoals u gewoonlijk zou doen bij het maken van Ghost-themasjablonen. Het moet eerder worden gemaakt als een volledig zelfstandig HTML-document met een eigen HTML-document html, hoofd en lichaam elementen.

De reden hiervoor is dat je moet zorgen voor:

  1. U gebruikt de essentiele AMP-code in de opening tag en in de hoofd sectie
  2. CSS wordt op een AMP-geldige manier geladen
  3. Vereiste AMP-scripts kunnen door Ghost worden geladen
  4. Er wordt geen aangepaste JS geladen

Een "default.hbs" -bestand in een typisch Ghost-thema voldoet niet aan de bovenstaande vereisten, vandaar de noodzaak om een ​​op zichzelf staande "amp.hbs" te hebben.

CSS gebruiken

Er zijn een aantal dingen waar u rekening mee moet houden met CSS in uw AMP-sjablonen.

Ten eerste, als u laadt in een aangepast lettertype van een van de goedgekeurde bronnen, moet u dit op een AMP-geldige manier doen. Een Google-lettertype kan bijvoorbeeld worden geladen via een URL zoals //fonts.googleapis.com in uw "default.hbs" -sjabloon, maar om de validatie in uw "amp.hbs" -sjabloon over te dragen, moet u dat wijzigen in https://fonts.googleapis.com

De andere primaire overweging is dat u al uw aangepaste CSS inline moet hebben tags in de sectie, waarbij uw CSS maximaal 50 kb overschrijdt en geen AMP CSS-regels overtreedt.

Er zijn twee manieren om dit te doen:

  • Schrijf AMP-specifieke CSS en gebruik deze alleen op AMP-pagina's.
  • Schrijf CSS voor uw gehele site die de regels van AMP volgt en overal gebruikt.

Als je "gewone" site echt wat zwaardere CSS nodig heeft, dan heb je misschien de vorige optie nodig, maar anders zou je het gemakkelijker kunnen vinden om de laatste optie te gebruiken.

Het hele stylesheet onder de 50 kb houden lijkt misschien intimiderend, aangezien sommige populaire CSS-frameworks meer in de buurt van 120 kb - 150 kb liggen, maar als je met het 50 kb-doel in gedachten bent, is het redelijk haalbaar. De niet-gemarkeerde CSS van het Ghost-standaardthema Casper is bijvoorbeeld 45,5Kb.

Als u deze methode wilt gebruiken, kunt u een deelsjabloon met de naam "css.hbs" maken en de CSS-code van uw site rechtstreeks in de CSS-code plaatsen. Dan kunt u in uw "default.hbs" -sjabloon deze CSS laden met:

En gebruik in plaats daarvan in uw "amp.hbs" -sjabloon:

Om het meeste uit je CSS te persen, kun je het ook verkleinen voordat je het in dit deel plaatst. U kunt de bestandsgrootte van deze partitie controleren om een ​​redelijk goed idee te krijgen of u binnen de limiet van 50 kB bent.

Ghost Head and Foot Expressions

In het head-gedeelte van je "amp.hbs" -sjabloon moet je de expressie opnemen Amp_ghost_head in plaats van het gebruikelijke Ghost_head. Dit zorgt ervoor dat er geen JS wordt uitgevoerd in het hoofd, waardoor de AMP-validatie wordt verbroken.

En, in tegenstelling tot normale Ghost-sjablonen, moet u de Ghost_foot uitdrukking allemaal samen.

Toegang tot gegevens

Alle inhoud van een bericht kan worden weergegeven in de "amp.hbs" -sjabloon met behulp van de blokexpressie post ... / post. Tussen deze tags kunt u de volgende helpers gebruiken om inhoud uit te voeren:

  • titel
  • Url
  • schrijver
  • datum
  • uittreksel
  • Post_class
  • Labels

Je hebt ook toegang tot alle @blog globale gegevens vanuit de "amp.hbs" -sjabloon, zoals @Blog Titel en @ blog.url, of binnen of buiten de post ... / post uitdrukking.

AMP-elementen gebruiken

Zoals u weet, vereist AMP dat een aantal eigen aangepaste elementen worden gebruikt in plaats van normale HTML-elementen. Dit betekent dat er twee aspecten van uw Ghost-sites zijn, waarbij u ervoor moet zorgen dat de juiste AMP-elementen worden gebruikt:

  1. De inhoud van de post is afkomstig van de achterkant
  2. Uw code in uw "amp.hbs" -sjabloon

In je berichtinhoud kan Ghost automatisch afbeeldingen, iframes, gifs en audio-elementen detecteren en deze vervolgens in hun AMP-tegenhangers herschrijven.

Om dit in te schakelen, moet u opnemen Amp_components in je hoofdgedeelte, vlak voor de sluiting tag, die eventuele extra scripts zal uitvoeren die AMP's aangepaste elementen nodig hebben. Je zult ook moeten gebruiken Amp_content in plaats van inhoud dus de juiste opmaak voor aangepaste elementen wordt geproduceerd.

Wat betreft de code in uw "amp.hbs" -sjabloon, moet u echter alle vereiste AMP-elementen handmatig toevoegen. Als u bijvoorbeeld de aanbevolen afbeelding van de post wilt opnemen, gebruikt u:

Afsluiten

Dat omvat alle essentiële dingen om gebruik te maken van Ghost's in ingebouwde AMP-ondersteuning. Laten we een korte samenvatting van de belangrijkste punten:

  • AMP-functionaliteit werkt automatisch op afzonderlijke berichten.
  • Om de AMP-versie van een bericht-append te zien / Amp / naar zijn URL.
  • Als u de presentatie van AMP-berichten wilt aanpassen, maakt u een sjabloon met de naam "amp.hbs" in de hoofdmap van uw thema.
  • Zorg ervoor dat CSS op een AMP-geldige manier wordt gebruikt.
  • Overweeg de codering van AMP-geldige vormgeving voor uw gehele site en plaats deze in een gedeeltelijke sjabloon zodat deze kan worden gebruikt in zowel uw 'default.hbs'- als' amp.hbs'-sjablonen.
  • omvatten Amp_ghost_head in plaats van Ghost_head
  • Niet opnemen Ghost_foot
  • omvatten Amp_components vlak voor de sluiting label.
  • In de "amp.hbs" -sjabloon kunt u de gebruiken post ... / post blokkeer expressie en alles @blog globale gegevens.
  • Gebruik Amp_content om inhoud uit te voeren. Dit moet in de post ... / post blok.
  • Zorg dat alle elementen die in de "amp.hbs" -sjabloon zijn gecodeerd, waar nodig AMP-aangepaste elementen gebruiken.

Dat brengt ons bij het einde van deze snelle tutorial. Houd binnenkort een kijkje voor meer tips over het gebruik van AMP met andere platformen voor het maken van sites!

Verder lezen

  • Ghost's AMP-documentatie