Три других в Wordpress l oop - PullRequest
0 голосов
/ 16 апреля 2020

в моем коде ниже, у меня есть возможность вызвать одно из двух настраиваемых полей (swf или swf2), в зависимости от моих потребностей:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>



<?php if ( get_post_meta($post->ID, 'swf', true) ) { ?>

<?php $values = get_post_custom_values("swf"); echo $values[0]; ?>

<?php } else { ?>

<?php $values = get_post_custom_values("swf2"); echo $values[0]; ?>
<?php } ?>


<?php endwhile; else: ?>
<?php endif; ?>  

У меня вопрос, как мне добавить третье настраиваемое поле (swf3)? пример:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>



<?php if ( get_post_meta($post->ID, 'swf', true) ) { ?>

<?php $values = get_post_custom_values("swf"); echo $values[0]; ?>

<?php } else { ?>

<?php $values = get_post_custom_values("swf2"); echo $values[0]; ?>

<?php } else { ?>

<?php $values = get_post_custom_values("swf3"); echo $values[0]; ?>
<?php } ?>



<?php endwhile; else: ?>
<?php endif; ?>  

Когда я добавляю настраиваемое поле "swf3", я получаю сообщение об ошибке кода. Как исправить этот код?

Ответы [ 2 ]

1 голос
/ 16 апреля 2020

В состоянии if должен быть только один else.

Ваш код должен выглядеть следующим образом:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <?php if ( get_post_meta($post->ID, 'swf', true) ) { ?>
        <?php $values = get_post_custom_values("swf"); echo $values[0]; ?>
    <?php } else if ( get_post_meta($post->ID, 'swf2', true) ) { ?>
        <?php $values = get_post_custom_values("swf2"); echo $values[0]; ?>
    <?php } else { ?>
        <?php $values = get_post_custom_values("swf3"); echo $values[0]; ?>
    <?php } ?>
<?php endwhile; else: ?>
<?php endif; ?>  
0 голосов
/ 16 апреля 2020

Измените свой код так, чтобы он работал
Используйте elseif вместо второго else

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>



<?php if ( get_post_meta($post->ID, 'swf', true) ) { ?>

<?php $values = get_post_custom_values("swf"); echo $values[0]; ?>

<?php } else if { ?>

<?php $values = get_post_custom_values("swf2"); echo $values[0]; ?>

<?php } else { ?>

<?php $values = get_post_custom_values("swf3"); echo $values[0]; ?>
<?php } ?>



<?php endwhile; else: ?>
<?php endif; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...