WordPress WooCommerce шорткод - PullRequest
       7

WordPress WooCommerce шорткод

0 голосов
/ 09 февраля 2020

Я получаю сообщение об ошибке этой функции, когда мы запрашиваем этот короткий код

function salex_func( $atts ){
   global $product;
if($product->is_on_sale()){
        echo '<span class="onsale soldout">';
    echo __( 'SALE!!!!', 'hello');
    echo '</span>';
}   
}
add_shortcode('saletex', 'salex_func');

Ответы [ 2 ]

0 голосов
/ 10 февраля 2020

Вам не нужно отображать эхо внутри функции шорткода.

Вы можете попробовать этот код:

function salex_func( $atts ){
    global $product;
    if($product->is_on_sale()){ 
        ob_start(); ?>
        <span class="onsale soldout"><?php __( 'SALE!!!!', 'hello'); ?></span>
        <?php return ob_get_clean();
    }   
}
add_shortcode('saletex', 'salex_func');
0 голосов
/ 09 февраля 2020

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

function salex_func( $atts ){
   global $product;
    if($product->is_on_sale()){
        $output = '<span class="onsale soldout">';
        $output .= __( 'SALE!!!!', 'hello');
        $output .= '</span>';
     }
    return $output;   
}
add_shortcode('saletex', 'salex_func');
...