Расширенный синтаксис Markdown разметки блога на WordPress

Если Вы человек технический, пишете статьи или документация, но еще не знаете или не используете разметку Markdown — тогда сделайте это прямо сейчас и, уверен, отказаться от этого стиля Вы уже не сможете). Написание документации становится довольно простым и занимательным процессом. Некоторое время таки придется потратить на изучение синтаксиса, но в итоге Вы получаете простую и читабельную даже в простом текстовом формате документацию.

Сразу даю линк на демку

Текст

Жирный, или такнаклонный, и так тоже

**Жирный**, __или так__... *наклонный*, _и так тоже_

Клавиши и команды

Полезно выделять комбинации: Ctrl+Enter

Выделяем часть кода или команду

<kbd>Enter</kbd>
`часть кода` или `команда`

Заголовки

H1: headers
===========
H2: headers
-----------
### H3: headers
#### H4: headers

Ссылки

Автоматическая вставка ссылки:

</>
<[email protected]> // мыло захешируется

Ссылка с именем и тайтлом:

[text](/ "Тайтл, если нужно..")

Указываем ссылку через алиас:

Перед описанием алиасов ссылок Обязательно должна быть пустая строка!

[Name Link][1], [Yahoo][2]

[1]: https://google.com/        "Title"
[2]: https://search.yahoo.com/  "Yahoo Search"

Можно добавлять ссылкам имена, которые можно использовать в документации:

Лучшая [вики система][] доступна уже сайчас
[вики система]: /

Изображения

![alt text](https://path/to/img.png "Title")
![alt text](/server/path/to//img.png "Title")

..или так:

![alt text][screen#01] // ссылка на изображение
[screen#01]: /path/to/img.jpg "Title text"

Также я добавил short code для скриншотов: Посмотреть скрины

[SCREENSHOTS text="Посмотреть скрины "]
https://25.media.tumblr.com/tumblr_m7n0jyCDxT1rbl7rco2_1280.jpg  Описание скрина
[/SCREENSHOTS]

Списки

При работе со списками очень важно внимательно относится отступам — их наличию и количеству! Так, при вставке блока кода в элемент списка — нужно отступить на одну строку сверху от элемента списка и на N табов слева. N соответствует вложенности списка.
  • Не нумерованный список;

    • .. c несколькими уровнями и кодом внутри:

      echo "<pre><code>";
      echo "Код внутри списка должен отделяться пустой строкой";
      echo "</code></pre>";
      
  • Следующий пункт списка;
  • Это тоже пункт списка;

    • Вложенный пункт списка;

    С переносом текста на новую строку;

* Не нумерованный список;
    * .. c несколькими уровнями и кодом внутри:

        ~~~
        echo "<pre><code>";
        echo "Код внутри списка должен отделяться пустой строкой";
        echo "</code></pre>";
        ~~~
* Следующий пункт списка;
+ Это тоже пункт списка;
  - Вложенный пункт списка;

    С переносом текста на новую строку;

Цитаты

This is a blockquote.

This is the second paragraph in the blockquote.

> This is a blockquote.
> > This is the second paragraph in the blockquote.

Сноски

Сноски и примечания1 задаются так2:

Сноски и примечания[^1] задаются так[^2]:
// пустая строка обязательно
[^1]: Все сноски отображаются в конце страницы
[^2]: Просто не так ли?)

Аббревиатуры

Оббревиатуры доступны для всего документа. Например: «HTML разработан консорциумом W3C

*[HTML]: Hyper Text Markup Language
*[W3C]:  World Wide Web Consortium

Информационные блоки

Информационные блоки я использую для того, чтобы подчеркнуть важный текст в статье. Я решил использовать только 3 типа информационных блоков:

  1. Информация, которую не желательно пропускать:

    I — сокращенно от Info

    [I]I - сокращенно от Info[/I]
    
  2. Критично важная информация:

    W - сокращенно от Warning

    [W]W - сокращенно от Warning[/W]
    
  3. Ошибки:

    E - сокращенно от Error

    [E]E - сокращенно от Error[/E]
    

Спойлер

Показать »

Скрываем большие объемы текстовой и графической информации с помощью Advanced Spoiler, который уже 2 года не обновляется но работает на отлично.
[spoiler]тут текст[/spoiler]

Блок кода

Блок кода обрамляется 3-мя и более тильдами ~. Вначале или вконце строки строки с тильдами можно указать тип подсветки (php, sql, bash, etc..).

Есть некоторые косяки со экранированием HTML тегов внутри кода. Это касается только не официального расширения markdown-extend, которое позволяет задавать тип кода в блоках. В случае проблем - просто не указывайте тип кода. Если блок кода вложен в элемент списка - для отступа слева нужно использовать табуляцию в 4 пробела!

Highlight JS пытается сам определить тип кода, но у него не всегда получается).

<?php
if ( has_post_thumbnail() ) {
  echo "<p>";
  the_post_thumbnail(NULL, array('align' => 'left', 'style' => 'border: 4px solid #fff'));
  echo get_the_excerpt();
  echo "</p>";
} else {
  the_excerpt();
}
?>

Линии


* * *

***

*****

- - -

---------------------------------------

  1. Первое примечание 

  2. Ремарки опускаются вниз страницы