WordPress短代码显示为纯文本

时间:2016-06-29 11:01:18

标签: wordpress plugins

我们在网站上使用插件超过一年但由于某种原因,短代码现在以纯文本形式输出,因此实际显示短代码本身。短代码应该产生一个产品滑块。

有问题的插件是:WPB WooCommerce产品滑块

网站是:https://londontopsoilcompany.co.uk/

整个页面是在WYWYG编辑器中创建的,包括短代码。不幸的是,我无法开始禁用插件以确定是否存在冲突。

我一直在寻找网络,我确实查看了包含witihn插件的shortcodes.php文件,我可以在那里看到:

add_shortcode('wpb-latest-product', 'wpb_wps_shortcode');

if( !function_exists( 'wpb_wps_shortcode' ) ):
    function wpb_wps_shortcode($atts){
        extract(shortcode_atts(array(
            'title' => __( 'Latest Products','wpb-wps' ),
        ), $atts));

        $return_string = '<div class="wpb_slider_area wpb_fix_cart">';
        $return_string .= '<h3 class="wpb_area_title">'.$title.'</h3>';
        $return_string .= '<div id="wpb-wps-latest" class="wpb-wps-wrapper owl-carousel '.wpb_ez_get_option( "wpb_slider_type_gen_lat", "wpb_wps_style", "grid cs-style-3" ).'">';

        $args = array(
            'post_type'         => 'product',
            'posts_per_page'    => wpb_ez_get_option( 'wpb_num_pro', 'wpb_wps_general', 12 )
        );

        $loop = new WP_Query( $args );

        if ( $loop->have_posts() ) {
            while ( $loop->have_posts() ) : $loop->the_post();
                global $post, $product;
                $return_string .= '<div class="item">';
                $return_string .= '<figure>';           
                $return_string .= '<a href="'.get_permalink().'" class="wpb_pro_img_url">';
                if (has_post_thumbnail( $loop->post->ID )){
                    $return_string .= get_the_post_thumbnail($loop->post->ID, 'shop_catalog', array('class' => "wpb_pro_img"));
                }else{
                    $return_string .= '<img id="place_holder_thm" src="'.woocommerce_placeholder_img_src().'" alt="Placeholder" />';
                }
                $return_string .='</a>';
                $return_string .='<figcaption>';
                $return_string .='<h3 class="pro_title">';
                if (strlen($post->post_title) > 20) {
                    $return_string .= substr(the_title($before = '', $after = '', FALSE), 0, wpb_ez_get_option( 'wpb_title_mx_ch', 'wpb_wps_style', 10 )) . '...';
                }else{
                    $return_string .= get_the_title();
                }
                $return_string .='</h3>';
                if( $price_html = $product->get_price_html() ){
                    $return_string .='<div class="pro_price_area">'. $price_html .'</div>';
                }
                $return_string .= '<div class="wpb_wps_cart_button"><a href="'.esc_url( $product->add_to_cart_url() ).'" rel="nofollow" data-product_id="'.esc_attr( $product->id ).'" data-product_sku="'.esc_attr( $product->get_sku() ).'" data-quantity="'.esc_attr( isset( $quantity ) ? $quantity : 1 ).'" class="button '. ($product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '') .' product_type_'.esc_attr( $product->product_type ).'">'.esc_html( $product->add_to_cart_text()).'</a></div>';
                $return_string .='</figcaption>';
                $return_string .= '</figure>';
                $return_string .= '</div>';
            endwhile;
        } else {
            echo __( 'No products found','wpb-wps' );
        }
        wp_reset_postdata();
        $return_string .= '</div>';
        $return_string .= '</div>';
        wp_reset_query();
        return $return_string;   
    }
endif;

我使用的短代码是[wpb-latest-product title=”Latest Product”]

我看到是否有其他人遇到过这个?或者诊断此类问题的最佳步骤是什么。

另外,我尝试在“文本”标签中添加短代码而不是“视觉”标签,但没有效果。

1 个答案:

答案 0 :(得分:1)

我只能帮助您进行短代码检查,因为您的错误数据未完整,请查看this link