php woocommerce if оператор с атрибутами не работает - PullRequest
0 голосов
/ 31 мая 2018

Я использую следующий код на странице моего магазина woocommerce.

function uit_productie_badge() {
   global $product;
    $beschikbaarheid = $product->get_attribute('pa_beschikbaarheid');
    echo '<span class="sold-out">' . $beschikbaarheid . '</span>';
    if ($beschikbaarheid = "dsgdfsg"){
        echo "Hello World!";
    }
}
add_action( 'woocommerce_before_shop_loop_item_title', 'uit_productie_badge');

span со значком отображается со значением атрибута, однако оператор if не работает.dsgdfsg - это просто случайный текст, и его там быть не должно, однако каждый продукт показывает Hello World!.Как я могу решить это?

1 Ответ

0 голосов
/ 31 мая 2018

Проблема, с которой вы столкнулись, заключается в этой строке;

if ($beschikbaarheid = "dsgdfsg"){

Использование одинакового равенства - это присвоение переменной, которое применяется для проверки соответствия, если вы используете 2, это сработает, поэтому это исправит;

if ($beschikbaarheid == "dsgdfsg"){

Например, если у вас есть следующая функция:

function AssignTo()
{
    if (isset($_SESSION['variable']) && $_SESSION['variable'] == true)
    {
        return true;
    }
    else
    {
        return false;
    }
}

Вы можете сделать следующее;

if ($a = AssignTo())
{
    // The function returned true, so the check is true and $a is set to true
}
else
{
    // The function returned false, so the check fails and $a is set to false
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...