キーワードに関連ページや外部リンクを自動付与する方法

記事内の特定キーワードに自動で関連ページや外部リンクを付与する方法を紹介します。投稿記事を手動で編集する手間を減らし、内部リンクの最適化や外部リンクへの誘導に便利です。

実装のポイント

  • キーワードとリンクURLを配列で設定
  • 記事本文に自動でリンクを挿入
  • 既存リンク内には適用しないように工夫
  • 簡単なカスタムCSSでリンク装飾も可能

functions.php にコードを追加



// 記事本文の特定キーワードに自動リンクを付与
function auto_link_keywords($content) {
    $links = array(
        'WordPress' => 'https://wordpress.org/',
        'PHP'       => 'https://www.php.net/',
        'テーマ'    => 'https://ja.wordpress.org/themes/'
    );

    foreach ($links as $keyword => $url) {
        // 単純置換(既存リンク内は非対応)
        $content = str_replace(
            $keyword,
            '<a href="' . esc_url($url) . '" target="_blank" class="auto-link">' . $keyword . '</a>',
            $content
        );
    }

    return $content;
}
add_filter('the_content', 'auto_link_keywords');

    
補足:
- 既存のリンク内には対応していません。安全に実装する場合はDOM操作で置換してください。
- target="_blank" によって外部リンクは新しいタブで開きます。
- class="auto-link" にCSSを当てることで装飾可能です。

汎用CSS


/* 自動リンク装飾 */
.auto-link {
    color: #0073aa;
    text-decoration: underline;
}
.auto-link:hover {
    color: #005177;
    text-decoration: none;
}
    

テーマ別サンプルCSS

Lightning用


/* Lightning用 自動リンク装飾 */
.auto-link {
    color: #ff9800;
    font-weight: bold;
}
.auto-link:hover {
    color: #e65100;
}
    

Cocoon用


/* Cocoon用 自動リンク装飾 */
.auto-link {
    color: #90caf9;
    border-bottom: 1px dashed #42a5f5;
}
.auto-link:hover {
    color: #1e88e5;
    border-bottom: 1px solid #1e88e5;
}
    

代用プラグイン

手動管理せず自動でリンクを付与する場合、「Auto Post Link」などのプラグインを使う方法もあります。

まとめ

  • 特定キーワードに自動でリンクを付与可能
  • 内部SEOや外部リンク誘導に便利
  • CSSで装飾して目立たせることもできる
  • 安全に実装するならDOMベースの処理がおすすめ