2012-02-27 18 views
0

変数が一致するかどうかに応じて、2つのPHP変数を比較して表示するか、表示しないようにするのが苦労しています。これは私が持っているものです。Wordpressで2つの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を比較したいと、彼らが一致した場合であれば内ものを行います。どこが間違っていますか?

私はWordpressでhttp://www.advancedcustomfields.comプラグインを使用しています。

更新日: 最初に、2つの変数がURLであることを忘れてしまった。現時点では、私が望むページで同じ2つのURLをエコーアウトしていますが、2つのURLが一致しない場合は、「show news articles」もエコーしています。

twitterプロフィールの下に - http://www.mediwales.com/v3/members/mediwales/は、同じ2つのURLを示しています。しかし、あなたがこのページに行くときhttp://www.mediwales.com/v3/members/3m/それはまだ2つの異なったURLを "show news articles"を示しています。あなたはWordpressののネイティブ機能に注意する必要が

+0

このコードが実行されるときに何が起こるか、間違って行くかを知るために良いでしょうか? ... –

+0

は '$ company'のパーマリンクですか? The Loop?では '$ link = the_permalink();'となっていますか? – JKirchartz

+0

@JKirchartzうん、それはパーマリンクであり、ループ内にあります。これは私が取り組んでいるページです - http://www.mediwales.com/v3/members/mediwales/それはTwitterのプロフィールの下のビットです。 – Rob

答えて

0

はちょうどそれを解決:

<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; ?> 
3

the_permalink()パーマリンクをエコー(documentation examplesを参照)

get_permalink()戻りそれが変数として(documentation examplesを参照)

ので、あなたは使用する必要があります:

$title = get_permalink(); 
+0

これを試してみましたが、現在では、どちらのページでもそれぞれが一致しないと言っています。 – Rob

+0

get_permalink()が返すと思われるものが返されていますか?それをエコーし​​てdie()を使って、あなたが望む文字列を配送しているかどうかを確認してください。そうでない場合は、変数として投稿のIDを含めるか、ループに含めるようにしてください。 – hohner

+0

私はこの行を持っています:

現在のページのパーマリンク:<?php $ link = get_permalink();エコー$リンク; ?>

Rob

関連する問題