WordPress шорткод с многострочными параметрами - PullRequest
5 голосов
/ 12 февраля 2020

Как вставить шорткод с большим количеством параметров и многострочным на страницу WordPress? Backsla sh раньше работал как разделитель строк:

[my_shorcode parameter_1=10 \
   parameter_2=20 \
   parameter_3="test"]

Но он не работает в последней версии WordPress. Я хочу использовать больше строк для лучшей читабельности кода.

Ответы [ 2 ]

6 голосов
/ 17 марта 2020

Спасибо за @ Арвинду К. за совет

Это не очень хорошая идея, поскольку она нарушает нормальное поведение пост-редактирования. Скорее вы должны попытаться сделать шорткоды короткими

Я решил эту проблему, кстати

1. У меня есть использовал шорткод таким образом [my-shortcode id="1"]

2. Я создал тип записи Мои шорткоды

3. The id для шага 1. - это Мои шорткоды сообщение id

4. In ACF ( Пользовательские поля) Я создал поля для Мои шорткоды

(Поле - это параметр шорткода)

5. Тогда вы можете использовать ваш пост Мои шорткоды для получения полей.

add_shortcode( 'my-shortcode', function ( $atts, $content ) {    
    $custom_shortcode_id = $atts['id'];

    $parameter_1 = get_field( 'parameter_1', $custom_shortcode_id );
    $parameter_2 = get_field( 'parameter_2', $custom_shortcode_id );

    return "Your shortcode content $parameter_1, $parameter_2";
} );
0 голосов
/ 16 марта 2020

Я удалил 2 фильтра WordPress, и теперь он работает нормально.

remove_filter( 'the_content', 'wpautop' );                                                                                                                              
remove_filter( 'the_excerpt', 'wpautop' );
...