Intereting Posts

Преобразовать shortcode в html-форму

Я хочу преобразовать этот короткий код.

[list-style="one"] a b c d [/list-style] 

Выйти так, как этот (html-форма)

 <ul class="one"> <li>a</li> <li>b</li> <li>c</li> <li>d</li> </ul> 

Solutions Collecting From Web of "Преобразовать shortcode в html-форму"

Во-первых, ваши короткие коды не отформатированы правильно для WordPress.

Вам нужно иметь тег для вашего короткого кода, а затем определять атрибуты отдельно.

Вместо [list-style="one"][/list-style] он должен быть чем-то вроде [list class="one"][/list]

Следующий код добавит два коротких кода к вашей установке WordPress. [list] и [li]

 // shortcode for the list function LIST_shortcode( $atts, $content ) { // get the options defined for this shortcode extract( shortcode_atts( array( 'class' => '', 'id' => '', 'type' => 'ul' ), $atts ) ); // output a list and do_shortcode for <li> elements return '<' . $type . ' class="' . $class . '" id="' . $id . '">' . do_shortcode( $content ) . '</' . $type . '>'; } add_shortcode( 'list', 'LIST_shortcode' ); // shortcode for the list items function LI_shortcode( $atts, $content ) { // get the options defined for this shortcode extract( shortcode_atts( array( 'class' => '', 'id' => '', ), $atts ) ); // return list element return '<li class="' . $class . '" id="' . $id . '">' . do_shortcode( $content ) . '</li>'; } add_shortcode( 'li', 'LI_shortcode' ); 

Затем вы использовали бы их так:

[list class="one"][li]A[/li][li]B[/li][li]C[/li][li]D[/li][/list]

Мой код также позволяет вам также ..

Определить атрибут ID: [list id="someid"]

Определите тип списка: [list type="ol"]

Чтобы этот код работал, добавьте его в файл functions.php вашей темы или создайте из него плагин.