Вывести вывод оператора switch в тег span в php wordpress - PullRequest
0 голосов
/ 23 января 2020

Я хочу отобразить результат оператора switch в теге span. После применения условий переключения, когда я использую echo в теге span, он ничего не отображает. Но когда я использую echo только после условий переключения, отображается результат.

Как я могу отобразить результат оператора switch в пределах определенного тега span?

public static function woocommerce_template_after_single_rating() {
    global $product;

    switch (    $stock_status = $product->get_shipping_class()) {
       case 'immediate':
           $stock_status = 'In Stock';
           break;

       case 'custom':
          $stock_status = 'Bespoke product';
          break;

       case 'international':
         $stock_status = 'special product';
         break;

       default:
         $stock_status = 'unknown';
   }
   ?> 
    <div class="woocommerce-product-details__stock">
        <span class="stock" <?php echo $stock_status; ?></span>
    </div>
</div>

1 Ответ

0 голосов
/ 23 января 2020

Проблема в этой строке (вы забыли закрывающий > для тега span):

            <span class="stock" <?php echo $stock_status; ?></span>

Это на самом деле будет производить что-то вроде ..

<span class="stock" In Stock</span>

Исправить добавив его в промежуток:

<span class="stock"><?php echo $stock_status; ?></span>

Кроме того, я бы посоветовал не изменять переключаемую переменную внутри оператора switch - это не совсем чистый код.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...