Jumat, 17 June 2022

Integrasi Markdown dengan Laravel: Tutorial Lengkap

Dalam artikel ini kita akan bahas bagaimana merender markdown dengan menggunakan laravel dengan tidak menggunakan third-party package

Dalam artikel ini kita akan bahas bagaimana merender markdown dengan menggunakan laravel dengan tidak menggunakan third-party package. Jadi disini, jika kalian install laravel, itu langsung ada markdown package yang dibawanya. Sehingga kita hanya tinggal menggunakannya saja.

Pertama Anda bisa menggunakan Markdown dari bawaan Mail seperti berikut.

use Illuminate\Mail\Markdown;

Kemudian, jika kita lihat class Markdown tersebut, ada terdapat metode yang namanya parse, yang akan merubah markdown syntak ke html.

Berikut ini adalah function nya

public static function parse($text)
{
    $environment = new Environment([
        'allow_unsafe_links' => false,
    ]);

    $environment->addExtension(new CommonMarkCoreExtension);
    $environment->addExtension(new TableExtension);

    $converter = new MarkdownConverter($environment);

    return new HtmlString($converter->convert($text)->getContent());
}

Yang oleh karena itu, bisa kita manfaatkan untuk merender string ke dalam html string dengan cara seperti ini.

use Illuminate\Mail\Markdown;

$markdownString  =  '

# Hello world

  

* One
* Two
* Three  

```php

echo "Hello world"

```md
Markdown::parse($markdownString)->toHtml()

Ada cara lain ? Ada dong, jadi selain kita pakai teknik yang di atas, alternatif nya, kita bisa menggunakan class Str seperti berikut.

use Illuminate\Support\Str;
Str::markdown($markdownString);

Atau jika ingin lebih singkat, kita bisa pakai function dari pada class Str nya seperti berikut.

str($markdownString)->markdown();

Dengan itu, output dari markdown di atas, kira kira akan jadi seperti ini.

<h1>Hello world</h1>\n

<ul>\n
<li>One</li>\n
<li>Two</li>\n
<li>Three</li>\n
</ul>\n

<pre><code class="language-php"> echo &quot;Hello world&quot;\n

</code></pre>\n

Jadi, dari pada kita capek cari package untuk render markdown syntax nya, baik kita gunakan saja bawaan yang diberikan oleh laravel.

Jika kalian ingin belajar bagaimana mengimplementasikan markdown di laravel lebih dari sekedar apa yang di render oleh laravel. Maka bisa lihat tutorialnya disini: Blog like a Pro.

Semoga artikel ini bermanfaat ya, share jika kalian suka 🙂

Karteil
Destinasi Utama Belajar Online dengan Format Tulisan yang Elegan
Kunjungi Sekarang

Irsyad A. Panjaitan

Let's start living like no one can help us in any event, so that when we are helped in certain times, it becomes a plus in itself.

Go to Irsyad A. Panjaitan profile
Support me
SaweriaGithub