勉強したことのメモ

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

  関連記事

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

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

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

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

WordPressにてAdvanced Custom Fieldsを用いて連載(シリーズ)記事機能を実装する方法

先日「Series」プラグインで連載(シリーズ)記事機能の実装方法をメモしたが、 ...

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

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

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

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