Wordpress: используйте скрипт PHP для вставки шорткода в div с классом - PullRequest
0 голосов
/ 21 февраля 2020

У меня есть этот PHP -скрипт, который рекламирует короткий код в верхней части моей страницы магазина wooCommerce.

add_action( 'woocommerce_archive_description',
     'woocommerce_archive_description', 15 );
function woocommerce_archive_description() {
    echo do_shortcode("[my-shortcode]");
}

Он работает так, как я ожидаю. Но если бы я хотел, чтобы шорткод появился в определенном div с определенным классом - или даже лучше: Добавьте его после определенного элемента с классом.

Этот код генерируется автоматически :

   <button class="button" data-selector="astra-off-canvas-sidebar-wrapper"><span class="astra-woo-filter-icon"></span><span class="astra-woo-filter-text">PRODUKTSØK</span></button> 

Так что я бы предпочел добавить шорткод на страницу после кнопки выше.

Как бы вы go об этом?

1 Ответ

1 голос
/ 03 марта 2020

Попробуйте это

Шаг 1: перехват страницы магазина woocommerce

add_action( 'woocommerce_archive_description',
     'woocommerce_archive_description', 15 );
function woocommerce_archive_description() {

    echo do_shortcode("[my-shortcode]");

    echo '<button class="button" data-selector="astra-off-canvas-sidebar-wrapper"><span class="astra-woo-filter-icon"></span><span class="astra-woo-filter-text">PRODUKTSØK</span></button>'; 
}

Шаг 1: также добавили пользовательский шорткод

function my_shortcode_function(){

    ob_start();

    ?>
    <div class="my-shortcode-container">
        Yor shortcode body
    </div>

    <script type="text/javascript">
        jQuery(document).ready(function(){ //alert('check');

            jQuery('.my-shortcode-container').insertAfter('.button');

        });
    </script>
    <?php
    return ob_get_clean();

}
add_shortcode('my-shortcode','my_shortcode_function');

Здесь я использую jquery для отображения короткого кода после кнопки.

...