Сравните две переменные php в Wordpress - PullRequest
0 голосов
/ 27 февраля 2012

Я изо всех сил пытаюсь сравнить две переменные php для отображения или не отображения некоторого текста в зависимости от того, совпадают ли переменные или нет.Вот что у меня есть:

<?php $link = the_permalink();?>
<?php $portfolioloop = new WP_Query( array( 'post_type' => 'news' ) ); ?>
    <?php while ( $portfolioloop->have_posts() ) : $portfolioloop->the_post(); ?>                           
        <?php while(the_repeater_field('featured_companies')): ?>
            <?php $company = the_sub_field('featured_company'); ?>
            <?php  if ($link == $company) { ?>
                show news articles
            <?php } else { ?>
                don't show news articles
            <?php } ?>
        <?php endwhile; ?>
    <?php endwhile; // end of the loop. ?>

Я хочу сравнить $link и $company, и, если они совпадают, то выполнить все в if.Где я ошибаюсь?

Я использую плагин http://www.advancedcustomfields.com в Wordpress, если это помогает.

ОБНОВЛЕНИЕ: Во-первых, забыли упомянуть, что две переменные являются URL-адресами.В настоящий момент он отображает 2 одинаковых URL на странице, которую я хочу, но также выводит «показывать статьи новостей», когда эти 2 URL не совпадают.

Под профилем твиттера - http://www.mediwales.com/v3/members/mediwales/ показывает те же два URL.Но когда вы переходите на эту страницу http://www.mediwales.com/v3/members/3m/, она показывает два разных URL-адреса, но показывает "показывать статьи новостей".

Ответы [ 2 ]

3 голосов
/ 27 февраля 2012

Вы должны быть осторожны с собственными функциями Wordpress:

the_permalink() выводит постоянная ссылка (см. примеры документации )

get_permalink() возвращает в виде переменной (см. примеры документации )

Так что вам нужно использовать:

$title = get_permalink();
0 голосов
/ 28 февраля 2012

Только что решил:

<h2>Latest News</h2>    
<?php $link = get_the_title(); ?>
<?php $portfolioloop = new WP_Query( array( 'post_type' => 'news' ) ); ?>
<?php while ( $portfolioloop->have_posts() ) : $portfolioloop->the_post(); ?>  
    <?php $post_link = get_post_permalink(); ?>                        
        <?php  if (get_field('featured_companies') != "") { ?>
            <?php foreach(get_field('featured_companies') as $post): ?>
                <?php $company = get_the_title($post_object->ID); ?>
                <?php if ($company == $link) { ?>
                    <a href="<?php echo $post_link; ?>">News item 1</a>
                <?php } ?> 
            <?php endforeach;?>
        <?php } ?>
<?php endwhile; ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...