WordPressテーマのための広告スロットを作成できます。
それぞれのポジションに登録された最新の広告が表示されます。
広告のスケジュールと表示を管理することができます。

テーマから

テーマ内でアクションフックを呼び出す:

<?php do_action( 'taro_ad_field', 'after-header', '<div class="after-header">', '</div>', 3 ); ?>

この場所に最新の広告が3件表示されます。
Taro Clockwork Post プラグインを利用すると、広告を自動的に無効にできます。

フックの引数

do_action( $hook_name, $slug, $before, $after, $number );>
  1. $hook_name: アクションフック名。常に taro_ad_field となります。
  2. $slug: ポジションのスラッグ
  3. $before: 広告ブロックの直前に表示される文字列です。広告がない場合、これは表示されません。
  4. $after: 広告ブロックのすぐ後に表示される文字列。
  5. $number: 広告を表示する数。初期値は 1 。
  6. $contexts: コンテキストの配列。コンテキストは広告を絞り込むためのタクソノミーです。詳細は Wiki をご覧ください。

ウィジェットから

また、広告フィールドウィジェットもあります。指定されたポジションの最新の広告がウィジェットに表示されます。

デフォルトのポジションを設定する

テーマ内にtaf_default_positionsフィルターフックを追加してください。
これらのタームは自動的に作成されます。

add_filter( 'taf_default_positions', function() {
    return [
        'after-header' => [
            'name' => 'After Header',
            'description' => 'Displayed just after header.',
        ],
        'after-content' => [
            'name' => 'After Content',
            'description' => 'Displayed just after content.',
            'mode' => 'iframe',
        ],
    ];
} );

デフォルトは空の配列なので、デフォルトのポジションはなしということになります。
上記のように、フィルターフックで新しいポジションを追加することができます。
配列の構造は下記のようになります。

[
  'slug_name' => [
    'name'        => 'Verbose Position Name',
    'description' => 'About where will be displayed(up to you)',
    'mode'        => 'iframe',
  ],
]

モードを ‘iframe’ に設定すると、このポジションは URL とシンプルなHTMLページを持つようになります。
管理画面のポジション一覧にある表示リンクから URL を取得できます。

この機能は Facebook Instant Article などの外部のプラットフォームに配信する場合に役立ちます。