Изменить содержимое вложенного шорткода WordPress - PullRequest
0 голосов
/ 03 мая 2018

Я написал шорткод, который отлично работает для всех атрибутов. Однако я хочу, чтобы шорткод позволял мне корректировать содержимое списков в shortcode. Это потому, что мне нужно разметить расширенные фрагменты и в настоящее время делать это в HTML, но это теряется, когда я снова переключаюсь на визуальный редактор.

Ниже приведен пример того, что я хотел бы сделать. Это возможно? Или есть пример, где можно использовать для этого? Все shortcode examples, которые я могу найти, очень просты.

Input

[ReviewMg title="Test title" image="test.jpg"]
 [ul]
  [li]Point 1[/li]
  [li]Point 2[/li]
  [li]Point 3[/li]
 [/ul]
[/reviewMg]

выход

<h3>Key Points</h3>
<ul>
 <li itemprop="keyInfo">Point 1</li>
 <li itemprop="keyInfo">Point 2</li>
 <li itemprop="keyInfo">Point 3</li>
</ul>

1 Ответ

0 голосов
/ 03 мая 2018

Вот тривиальный пример включающего шорткода:

function caption_shortcode( $atts, $content = null ) {
    return '<span class="caption">' . $content . '</span>';
}
add_shortcode( 'caption', 'caption_shortcode' );

Поскольку $ content включен в возвращаемое значение без экранирования или кодирования, пользователь может включить необработанный HTML:

[caption]<a href="http://example.com/">My Caption</a>[/caption]

Что даст:

<span class="caption"><a href="http://example.com/">My Caption</a></span>

для получения дополнительной информации проверьте https://codex.wordpress.org/Shortcode_API#Enclosing_vs_self-closing_shortcodes

Вы также можете проверить плагин https://wordpress.org/plugins/nested-shortcodes/

...