From a3d336bb2790be1e17714a8b812495abe55c29bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20Zieli=C5=84ski?= Date: Sat, 16 May 2026 18:17:18 +0200 Subject: [PATCH] Handle strikethrough in MarkdownConsumer --- components/Markdown/Tests/MarkdownConsumerTest.php | 4 ++++ components/Markdown/class-markdownconsumer.php | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/components/Markdown/Tests/MarkdownConsumerTest.php b/components/Markdown/Tests/MarkdownConsumerTest.php index 1283d72f4..4969db51b 100644 --- a/components/Markdown/Tests/MarkdownConsumerTest.php +++ b/components/Markdown/Tests/MarkdownConsumerTest.php @@ -166,6 +166,10 @@ public static function provider_test_conversion() { 'markdown' => '**Bold** and *Italic*', 'expected' => '

Bold and Italic

', ), + 'Strikethrough text' => array( + 'markdown' => 'Keep ~~removed~~ text and continue.', + 'expected' => '

Keep removed text and continue.

', + ), 'A blockquote' => array( 'markdown' => '> A simple blockquote', 'expected' => '

A simple blockquote

', diff --git a/components/Markdown/class-markdownconsumer.php b/components/Markdown/class-markdownconsumer.php index c49a41459..97ffbeb8b 100644 --- a/components/Markdown/class-markdownconsumer.php +++ b/components/Markdown/class-markdownconsumer.php @@ -7,6 +7,7 @@ use League\CommonMark\Extension\CommonMark\Node\Block as ExtensionBlock; use League\CommonMark\Extension\CommonMark\Node\Inline as ExtensionInline; use League\CommonMark\Extension\GithubFlavoredMarkdownExtension; +use League\CommonMark\Extension\Strikethrough\Strikethrough; use League\CommonMark\Extension\Table\Table; use League\CommonMark\Extension\Table\TableCell; use League\CommonMark\Extension\Table\TableRow; @@ -234,6 +235,10 @@ private function convert_markdown_to_blocks() { $this->append_content( '' ); break; + case Strikethrough::class: + $this->append_content( '' ); + break; + case ExtensionInline\HtmlInline::class: $this->append_content( htmlspecialchars( $node->getLiteral() ) ); break; @@ -323,6 +328,9 @@ private function convert_markdown_to_blocks() { case ExtensionInline\Emphasis::class: $this->append_content( '' ); break; + case Strikethrough::class: + $this->append_content( '' ); + break; case ExtensionInline\Link::class: $this->append_content( '' ); break;