Markdown плагин для WordPress 3.4.1

Обзор, установка и настройка Markdown плагина для WordPress.

Markdown QuickTags

Markdown QuickTags 0.8.2 — этот плагин полностью заменяет встроенный редактор WP, что лично мне не очень понравилось. Полноэкранный режим существенно уступает «родному», при этом тултипы для кнопок прячутся за верхний край экрана. В полноэкранном режиме нет кнопки «Сохранить».

В кириллической раскладке, вместо запятой вставляется 2 угловые скобки — жесть.

Позволяет менять шрифты, хотя для Markdown разметки более уместно использовать моноширинные шрифты.

И самое не практичное /бл**! Снова запятую не могу поставить!/ это то, что Markdown разметку в итоге нужно конвертировать в HTML. Есть и обратное преобразование, но лучше бы это было фоном.

Не зачёт.

Markdown on Save Improved

Markdown on Save Improved 2.2 — тут уже интересней.. Остается родная панель редактирования, конвертировать вручную ничего не нужно. При редактировании, в панели справа появляется дополнительный блок с 2-мя чекбоксами:

Панель управления конвертирования Markdown to HTML

Интересно, что после деактивации (удаления) плагина в исходном коде написанной с Markdown-разметкой статьи остался валидный HTML код. Т.е. преобразование разметки в HTML происходит не на этапе рендеринга, а при сохранении статьи. Таким образом при сохранении статьи сохраняется 2 копии текста — исходный для редактирования и преобразованный в HTML для отображения на сайте.

Заметил одну интересную особенность — если править статью с включенным плагином, после выключить плагин, изменить статью в базовом редакторе, а потом снова включить плагин — то вы увидите последнюю версию документа, отредактированного с включенным плагином. Последние изменения, которые вносились при отключенном плагине не будут доступны. Это происходит, опять же, из-за того, что сохраняется 2 копии документа.. Да есть свои лишения.

Ну и провозился я с этим плагином, пока нормально настроил рендеринг и подсветку кода..

Вкратце, нужно выполнить 2 действия:
1. Добавить возможность задавать тип кода после 3-х тильд.
Для этого подменим расширенную версию (позволяет использовать тильды для оборачивания кода) библиотеки markdown-extra.html"https://raw.github.com/coreyworrell/php-markdown/e90b9127ab79f78a4359a87757d5221ffd6c77e5/markdown.html">эту, она же здесь на гитхабе. Это пулл, который еще не вошел в официальный репозиторий библитотеки php-markdown.

Но markdown-extra.html"php">$content = get_the_content(); $content = apply_filters('get_the_content', $content);

Добавим хук в functions.html"php">add_filter('the_content', 'my_escape_code_block', 11); function my_escape_code_block($content) { return preg_replace_callback( '/( < pre><code[^>]*>)\n*(.+?)\n*(<\/code><\/pre>)/si', create_function('$match', 'return $match[1] . htmlentities($match[2], ENT_NOQUOTES, "utf-8", false) . $match[3];'), /*function ($match) { // PHP 5.3 return $match[1] . htmlentities($match[2], ENT_NOQUOTES, 'utf-8', false) . $match[3]; },*/ $content ); }

Наслаждаемся))

Советы

  1. Можно включить «визуальный» режим и Wysiwig редактор, закомментировав 2 строки в файле плагина «:
// add_action( 'load-post.html', array( $this, 'load' ) );
// add_action( 'load-post-new.html', array( $this, 'load') );
Автор предупреждает! Использование визуального режима вместе с Markdown плагином может доставить много головной боли, и просит воздержаться от этого!

Документация

Документация расширенной версии здесь, мануал по базовому синтаксису разметки Markdown тут.