勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

WordPressで記事毎に設定したバナー広告を表示させる方法

   2024/02/20  WordPress CMS

WordPressでGoogleアドセンスのようなクリック広告ではなく、商品を指定したアフィリエイト用のコードを設定し表示させたかった。また、表示位置は適宜入れ替える可能性があったので記事本文に追記するのではなく、カスタムフィールドを設けてそちらに設定したい。以下に方法をメモ。

 

カスタムフィールド設定

Advanced Custom Fieldsを使用する。今回の例としてフィールド名「rakuten」、フィールドタイプ「テキストエリア」と仮定する。

Advanced Custom Fields (ACF)

テンプレート側設定

表示させたい場所のテンプレートファイル(footer.phpとか)に以下を記述する。

<?php $rakuten = get_field('rakuten');?>
<?php if( $rakuten ){ //広告が設定されている場合のみ表示?>
    <div class="rakuten">
        <?php echo $rakuten; ?>
    </div>
<?php } ?>

 

ダッシュボードの記事一覧で広告設定状況を表示

広告が設定されているかどうか後から確認しやすいよう、functions.phpに以下を追記しておく。

function add_posts_columns( $columns ) {
    $columns['rakuten'] = 'rakuten';
    return $columns;
}
function custom_posts_column( $column_name, $post_id ) {
    if ( $column_name == 'rakuten' ) {
        $rakuten = get_post_meta( $post_id, 'rakuten', true );
        echo ( $rakuten ) ? '○' : '×';
    }
}

 - WordPress CMS

  関連記事

Advanced Custom Fieldsでチェックボックスの記事を取得

Advanced Custom Fieldsでチェックボックス設定しているカスタ ...

WordPressでカスタムフィールドとCSVファイル投稿する方法

WordPressでカスタムフィールド設定している環境に、CSVファイルアップロ ...

Advanced Custom Fieldsで設定した項目を条件に記事一覧を取得する方法

WordPressでAdvanced Custom Fieldsにて設定した項目 ...

Advanced Custom Fieldsでセレクトメニューを動的に生成する方法

WordPressでカスタムフィールド設定用のプラグインAdvanced Cus ...

Advanced Custom FieldsでGoogleMapの使用する方法

Advanced Custom FieldsでGoogleMapを使用したかった ...