Skriv för webben med Markdown och formattera till HTML med PHP
Efter att länge sökt efter det ultimata sättet att skriva texter för webben så ramlade jag över Markdown och nu behöver jag inte längre leta. Markdown är en syntax för att skriva text som går att läsa i en vanlig textfil och som via en programvara formateras om till HTML.
Nyare artikel finns
Du läser en uppdaterad variant av denna artikel på “Skriv för webben med Markdown och formattera till HTML med PHP (v2)”.
Markdown-syntax och en PHP-parser för att formatera texten till HTML, är nu en del av mitt vardagliga arbetssätt. I stort sett all text på webbplatsen dbwebb.se är skriven enligt syntaxen i Michel Fortin’s PHP Markdown Extra.
Markdown syntax och dess första konverteringsverktyg i perl togs fram av John Gruber som också beskriver syntaxen på ursprungssidan för Markdown. Målet var att få texten så läsbar som möjligt i sitt orginalformat. Michel Fortin portade konverteringsverktyget till PHP och gjorde lite tillägg med ytterligare formateringsfunktioner och paketerade detta som PHP Markdown och PHP Markdown Extra.
PHP Markdown och PHP Markdown Extra finns på GitHub, förpackade i ett och samma repository.
git clone git://github.com/michelf/php-markdown.git
För att förenkla din egen kod så kan du samla anropen till PHP Markdown i en funktion. Det ger ett renare API mot koden för PHP Markdown och det blir lättare om den byter sitt gränssnitt.
use \Michelf\MarkdownExtra;
/**
* Format text according to Markdown syntax.
*
* @param string $text the text that should be formatted.
* @return string as the formatted html-text.
*/
function markdown($text) {
require_once(__DIR__ . '/php-markdown/Michelf/Markdown.php');
require_once(__DIR__ . '/php-markdown/Michelf/MarkdownExtra.php');
return MarkdownExtra::defaultTransform($text);
}
Testa ett exempelprogram som visar hur du kan jobba med PHP Markdown.
Nu kan du börja skriva dina texter för webben enligt Markdown syntax, inklusive de utökningar som finns i PHP Markdown Extra. Det blir text som är lätt att läsa i sitt orginalformat, smidig att skriva och skapar bra HTML. Du kan inkludera HTML-element om du behöver mer avancerade konstruktioner som inte stöds i Markdown.
Testa och du kommer troligen bli fast likt jag.
Dagens tips, lär dina kollegor att skriva i Markdown och bli av med den skräpiga HTML-kod som ofta genereras av WYSIWYG-editorerna.