首页 > 解决方案 > Wordpress:使用 PHP 脚本将短代码插入带有类的 div

问题描述

我有这个 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> 

所以最好在上面的按钮之后将短代码附加到页面上。

你会怎么做呢?

标签: phpwordpresswoocommercewordpress-shortcode

解决方案


试试这个

第 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 在按钮后显示短代码。


推荐阅读