Расширенное настраиваемое поле индивидуального значения для отдельного поста в WordPress

Я пытаюсь показать премиум-тег рядом с сообщением, для которого выбрано значение "да" в расширенном настраиваемом поле с именем "ispremium". По сути, в поле ispremium radiobutton есть два значения: "да" и "нет". Я хочу, чтобы для сообщения было выбрано значение "да", тогда рядом с заголовком будет отображаться тег "премиум".

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

 <?php
        $posts = get_posts(array(
        'numberposts' => -1,
        'post_type' => 'post',
        'meta_key' => 'ispremium',
        'meta_value' => 'yes'
        ));

          if($posts)
             {echo '<span class="scriptolution-express"> Premium </span>';}
 ?>

1 ответ

Решение

Если вы хотите только список сообщений premiun:

$posts = get_posts(
        array(
            'numberposts' => -1,
            'post_type' => 'post',
            'meta_query' => array
            (
                array
                (
                    'key' => 'ispremium',
                    'value' => 'yes',
                )
            )
        )
    );

Однако, если вы хотите перечислить ВСЕ сообщения и показать Premium текст только для премиум постов, тогда сделайте это:

    $posts = get_posts(
        array(
            'numberposts' => -1,
            'post_type' => 'post', 
        )
    );
    if($posts)
    {
        ...
        ...
        if(get_field('isPremium') == 'yes')
            echo '<span class="scriptolution-express"> Premium </span>';
        ...
        ...
    }
Другие вопросы по тегам