サポート » 使い方全般 » 個別ページでの投稿者による条件分岐

  • 解決済 hoqto

    (@hoqto)


    はじめまして。
    この場に不慣れでして、もし失礼があればおわびいたします。

    投稿者が4人いるとして
    それぞれがブログを投稿したとします。

    質問の内容は、
    個別投稿ページ上、投稿者ごとにそれぞれが指定したURLへ飛ぶリンクを条件分岐で表示させたいというものです。

    解決の糸口が見えず、困り果てて投稿させていただきました。
    方法がわかる方へ、ぜひご教授願います。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • >個別投稿ページ上、投稿者ごとにそれぞれが指定したURLへ飛ぶリンクを条件分岐で表示させたい
    全く状況が見えないです。もう少し詳しくどうぞ。

    >manboさん

    ありがとうございます。

    投稿者Aが記事を投稿した場合、記事の最後にAが指定するURLにとぶバナーが表示され、
    投稿者Bが記事を投稿した場合、記事の最後にBが指定するURLにとぶバナーが表示される

    といった結果を求めています。

    すでに各ユーザーがアップした記事が数多くありますので、
    投稿者による振り分けができないかと考えています。

    テンプレートの表示したいところに以下のように書けば良いと思います。

    $post = get_post( get_the_ID() );
    if( $post->post_author === 'AのユーザーID' ) {
    	echo 'Aのバナー';
    } elseif( $post->post_author === 'BのユーザーID' ) {
    	echo 'Bのバナー';
    } elseif( $post->post_author === 'CのユーザーID' ) {
    	echo 'Cのバナー';
    } elseif( $post->post_author === 'DのユーザーID' ) {
    	echo 'Dのバナー';
    }

    もしくはfunctions.phpに以下のように書けば本文の最後に表示できると思います。

    function output_banner( $content ){
    global $post;
    $banner = '';
    if ( is_single() ) {
    	if( $post->post_author === 'AのユーザーID' ) {
    		$banner = 'Aのバナー';
    	} elseif( $post->post_author === 'BのユーザーID' ) {
    		$banner ='Bのバナー';
    	} elseif( $post->post_author === 'CのユーザーID' ) {
    		$banner ='Cのバナー';
    	} elseif( $post->post_author === 'DのユーザーID' ) {
    		$banner ='Dのバナー';
    	}
    }
    return $content.$banner ;
    }
    add_action( 'the_content', 'output_banner' );
    • この返信は3 ヶ月、 1 週前に  manbo さんが編集しました。

    >manboさん

    問題が解決しました!
    とても助かりました。ご回答ありがとうございます!

    コードを追加しましたが、ついでに
    >はじめまして。
    ではないようですね?
    過去の質問で解決されているのか否か、解決済ならクローズしておきましょう。

    >manboさん

    お伝えいただいてありがとうございます。
    利用方法がわからないまま、放置されていました。
    教えていただいて助かります。
    あらためて、ありがとうございました!

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • このトピックに返信するにはログインが必要です。