WordPress多言語サイトdeep L aiとPolylangプラグインと連動して自動翻訳システムを構築するための講義

こんにちは!😊今日はワードプレス(WordPress)サイトで既存の記事と新しい記事を自動で翻訳して、SEOの最適化まで行うシステムを構築する方法を学びます。

この講義ではDeepL API、Polylangプラグイン、Yoast SEOを活用し、一度設定したら、翻訳が自動で行われる環境を作ります🚀。

ちなみに、deep l apiは月に500,000文字まで無料で利用することができます。

📌講義の目標

1️⃣既存に作成された全ての韓国語投稿を英語と日本語に翻訳する
2️⃣今後作成される投稿も自動的に翻訳します
3️⃣翻訳された投稿のHTML構造を維持して壊れないように処理します
4️⃣SEO(検索エンジン最適化)設定を適用して検索露出を最大化
5️⃣重複翻訳を防止し、すでに翻訳された投稿は再翻訳しない。

💡 1.プロジェクトの準備

まず、プロジェクトを準備する必要があります。以下の作業が必要です。

📌必須インストール

WordPressサイト
Polylang プラグイン(多言語対応)
Yoast SEOプラグイン(検索最適化)
DeepL APIキー発行(翻訳API使用)

📌 DeepL APIキー発行

DeepL 翻訳APIを使用するには、APIキーが必要です。
1️⃣ DeepL APIのウェブサイトに移動します
2️⃣ 会員登録後、APIキーを発行します。
3️⃣APIキーをコピー(YOUR_DEEPL_API_KEYの部分に入力)

💡 2.コード作成:自動翻訳システムの構築

次はfunctions.phpにコードを追加して翻訳システムを構築してみます。

2-1.既存投稿の自動翻訳コード

まず、既に作成された全ての投稿を自動翻訳するコードを作ってみます。

すでに翻訳された文であることを確認する関数(重複翻訳を防止) function is_already_translated($post_id, $lang) { $translations = pll_get_post_translations($post_id); return isset($translations[$lang]); // 該当言語の翻訳が存在するかどうかを確認する } //既存のすべての投稿を翻訳する関数(一度だけ実行) function auto_translate_existing_posts() { $languages = ['en' => ['prefix']]; } //既存のすべての投稿を翻訳する関数(一度だけ実行) function auto_translate_existing_posts()
        'en' => ['prefix' => 'en', 'sep' => '-', 'sitename' => get_bloginfo('name')], 'ja' => ['prefix' => 'ja', 'sep' => '-', 'sitename' => get_bloginfo('name')], ]; $args = [
        'post_type' => 'post', 'post_status' => 'publish', 'posts_per_page' => -1, ]; $posts = get_posts($args); foreach ($posts as $post) { if (pll_get_post_language($post->ID) !== 'ko') continue; foreach ($languages as $lang => $settings) { if (is_already_translated($post->ID, $lang)) { continue;// 既に翻訳された場合はスキップ } $translated_title = deepl_translate_with_html($post->post_title, $lang); $translated_content = deepl_translate_with_html($post->post_content, $lang); $translated_slug = $settings['prefix'] .' ' . sanitize_title($translated_title); $seo_title = $translated_title . ' ' . $settings['sep'] .' ' .$settings['sitename']; $translated_post_id = wp_insert_post([[ .
                'post_title' => $translated_title, 'post_content' => $translated_content, 'post_status' => 'publish', 'post_type' => $post->post_type, 'post_author' => $post->post_author, 'post_name' => $translated_slug, 'post_category' => wp_get_post_categories($post->ID), 'meta_input' => [ .
                    '_yoast_wpseo_title' => $seo_title, ], ]); pll_set_post_language($translated_post_id, $lang); pll_save_post_translations([ 'ko' => $post->ID, $lang => $translated_post_id, ]);
        } } } } //既存の記事翻訳を実行(一度だけ実行) add_action('admin_init', function () { if (isset($_GET['run_translation']) && $_GET['run_translation']) && $_GET['run_translation'])=== '1') { auto_translate_existing_posts(); wp_die('Translation for all existing posts completed.'); } });

今ブラウザで以下のURLを実行すると、既存のすべての記事が翻訳されます

(your-site.comを 私のサイトのドメインに変更する必要があります。)

https://your-site.com/wp-admin/?run_translation=1

📌 2-2.新しい記事の自動翻訳コード

今、新しい記事が作成されるときに自動的に翻訳されるように設定します。

function auto_translate_and_seo_publish($ post_id) { $ original_post = get_post($ post_id); if ($ original_post-> post_status !== 'publish') return; $languages = [ 'en' => ['prefix' => 'en', 'sep' => '-', 'sitename' => get_bloginfo('name')], 'ja' => ['prefix' => 'ja', 'sep' => '-', 'sitename' => get_bloginfo('name')], ]; if (pll_get_post_language($post_id) !== 'ko') return; foreach ($languages as $lang => $settings) { if (is_already_translated($post_id, $lang)) { continue; // 既に翻訳されている場合はスキップ } $translated_title = deepl_translate_with_html($original_post->post_title, $lang);
        translated_content = deepl_translate_with_html($original_post->post_content, $lang); $translated_slug = $settings['prefix'] .' ' . sanitize_title($translated_title); $seo_title = $translated_title . ' ' . $settings['sep'] .' ' .$settings['sitename']; $translated_post_id = wp_insert_post([[ .
            'post_title' => $translated_title, 'post_content' => $translated_content, 'post_status' => 'publish', 'post_type' => $original_post->post_type, 'post_author' => $original_post->post_author, 'post_name' => $translated_slug, 'meta_input' => [ .
                '_yoast_wpseo_title' => $seo_title, ], ]); pll_set_post_language($translated_post_id, $lang); pll_save_post_translations([[...
            'ko' => $post_id, $lang => $translated_post_id, ]); } } // 新しい記事が公開されるときに自動翻訳を実行 add_action('publish_post', 'auto_translate_and_seo_publish');

🚀 最終まとめ

既存のすべての記事を翻訳するには?

  • 一度だけ実行 : https://your-site.com/wp-admin/?run_translation=1

新しい記事を翻訳するには?

  • 新しい記事を作成した後、自動翻訳される。(追加作業不要)

翻訳された文章を再作成したい場合は?

  • 既存の翻訳文を削除した後、再実行。

💡これでWordPressで完全に自動で多言語コンテンツを運営することができます!🚀もっと気になることがあれば、いつでも質問してください!😊📌追加確認事項

📌実行後、追加で確認すべき事項

  1. 翻訳された投稿が生成されたか確認
    • WordPress 管理者 → “すべての記事”で英語(en)、日本語(ja)に翻訳された記事があるか確認してください。
  2. URLを確認
    • 韓国語文: https://example.co.kr/올림픽-일정/
    • 英語記事: https://example.co.kr/en/olympic-schedule/
    • 日本語の記事https://example.co.kr/ja/オリンピック日程/
  3. 翻訳された文がPolylangで正しく接続されていることを確認
    • WordPress 管理者 →Polylangで翻訳関係を確認。

📌既存記事の翻訳が終わったら、もう実行する必要はありません。

✅既存の記事を一度翻訳すると、このURLを再実行する必要がありません
その後、新しい記事を作成すると、自動的に翻訳されます

📌追加質問

Q1.このURLを複数回実行してもいいですか?

すでに翻訳された記事は再翻訳されないので、複数回実行しても問題ありません。
重複翻訳を防止するコード(is_already_translated())が含まれているからです。

Q2.既存の記事を再翻訳するには?

既存の翻訳を削除して再実行する必要があります。
既存の翻訳された文章を削除して、https://your-site.com/wp-admin/?run_translation=1を再実行してください。

Q3.自動的に翻訳が行われない場合は?

❌実行しても翻訳ができない場合は、以下を確認してください。

  1. functions.phpにコードが正しく追加されたか確認。
  2. DeepL APIキーが正しく設定されているかどうか確認。
  3. Polylangプラグインが有効になっているか確認。
  4. WordPress 管理者 →設定 → 一意のアドレス(パーマリンク)を保存ボタンをクリックした後、再実行。

SEO講義案内:WordPressとAdSenseのためのSEOマスタークラス

📢 韓国で行われるSEO講義SEO(Search Engine Optimization(検索エンジン最適化、検索エンジン最適化)は、今日のオンラインでの成功を達成するための必須要素です。 特に WordPressと AdSenseを運営する方のためにカスタマイズSEO講義を準備しました。 実質的な技術と戦略を学び、検索エンジンでトラフィックを増やしてください!

📌講義概要 講義のテーマ:
  • ワードプレスサイトのSEO最適化
  • WordPressサイトのSEO最適化
  • アドセンス収益最大化のためのSEO戦略
  • 対象:
      ブログや WordPress サイト運営者。
    • ブログと WordPress サイト運営者
    • AdSenseの広告収入を増やしたい方 SEOを初めて接する初心者から中級者まで。
    講義の場所:
      ソウル市江南区鶴洞駅周辺(地下鉄7号線鶴洞駅3番出口から徒歩5分)
        便利なオンラインZoom講義も提供
    • 便利なオンラインZoom講義も提供します。
    講義スケジュール:
      時間: 毎週月/水/金、午後8時 ~ 9時 期間: 4週間、計12回実施
    講義の費用: 1時間あたり3万ウォン (合計12回:36万ウォン)
      講義教材及び実習資料を含む
  • 教材と実習資料が含まれています。
  • 📚 講座カリキュラム SEO基礎(1~3回目): <! -- wp:list-item -->
  • 検索エンジンの動作原理
  • 検索エンジンの仕組み
  • キーワードリサーチ方法 ワードプレスのプラグインを活用した基本的なSEO設定 ワードプレスSEO最適化(4~6回目): Yoast SEO、Rank Mathプラグインの深化活用法 SEOフレンドリーな記事作成とポスティング戦略 内部リンクと外部リンクの最適化 アドセンスとSEO(7~9回目):
  • 高収益キーワードの分析と活用
  • CTR(クリック率)を高めるコンテンツ戦略 グーグル AdSense 広告の最適化方法 SEO深化戦略(10~12回目): バックリンク構築とツール活用
  • backlink building and tools utilization
  • SEO 性能測定 (Google Analytics, Google Search Console)。 最新のSEOトレンドとアルゴリズムの変化に対応する方法 🎓講師紹介

    キムSEO講師:

    :

      SEO専門コンサルタント歴10年
    • ワードプレスと AdSense ブログ運営経験多数 グーグルアナリティクス(GA)及び検索コンソール活用講義の専門家
    💡講義の特徴 実習中心: 講義中、リアルタイム WordPressと AdSense 設定実習。
  • 受講生サイトに直接適用し、実習を進行。
  • 실습 진행.
  • 小規模カスタマイズ講義:
      1回最大10人に限定された小規模の講義。
    • 1回最大10人までの少人数制。 個別のフィードバックとQ&Aセッションを提供。
  • 個別フィードバックとQ&Aセッションを提供します。
  • 様々なサポート資料: SEOチェックリストとキーワードリサーチツール活用ガイドを提供。 講義後、録画を提供(オンライン講義参加時)。 📞 お問い合わせと登録
      전화: 010-2462-3443
    1. 전화: 010-2462-2463
    2. 電子メール: contentflow@contentflow.co.kr
    . 📌今すぐ登録しましょう!

    WordPressとAdSenseを正常に運営するには、SEOは選択ではなく、必須です。基礎から実務まで完璧に準備された講義を通じて、検索エンジンであなたのコンテンツが際立つように作ってみてください。 🚀

    🌍 簡単に作る!WordPress多言語サイト 🚀

    WordPressで多言語(マルチランゲージ)サイトを作成する方法はいくつかあります。
    ユーザーが好きな言語でコンテンツを閲覧できるように設定できます。

    1️⃣ 多言語サイトを作る3つの方法

    WordPressで多言語サイトを作成する代表的な方法:

    方法説明おすすめ対象
    プラグインを使用最も簡単な方法、自動翻訳機能あり🔹 手軽に作りたい場合
    マルチサイト機能を使用言語ごとに独立したサイトを運営可能🔹 完全に独立した翻訳が必要な場合
    手動翻訳(サブドメイン/サブディレクトリ)言語ごとに個別のページを作成🔹 SEOとパフォーマンスを最大化したい場合

    2️⃣ プラグインで多言語サイトを作成する(最も簡単な方法)

    💡 おすすめプラグイン:
    WordPressには強力な多言語プラグインがいくつかあります。

    プラグイン料金特徴
    WPML有料最も強力な多言語プラグイン(SEO対応)
    Polylang無料 / 有料シンプルで軽量なプラグイン
    TranslatePress無料 / 有料フロントエンドでリアルタイム翻訳可能
    Weglot有料AI自動翻訳対応

    🚀 最も簡単な方法:TranslatePress または Polylang

    ✅ 方法1: Polylang(無料)で多言語サイトを作る

    📌 特徴:

    • 無料版でも強力な機能を提供
    • シンプルで使いやすい
    • 翻訳は手動で入力する必要あり

    📌 インストール&設定 1️⃣ Polylangをインストール

    • WordPress管理画面 > プラグイン > 新規追加
    • Polylang を検索し、インストール&有効化

    2️⃣ 言語を追加

    • 設定 > 言語 で追加したい言語を設定(例:日本語 🇯🇵、英語 🇺🇸、韓国語 🇰🇷)

    3️⃣ 翻訳コンテンツを追加

    • 投稿 > 新規追加
    • 既存ページをコピーして翻訳を作成

    4️⃣ 言語スイッチャーを追加

    • ウィジェット > 言語スイッチャーを追加
    • メニューやサイドバーに配置

    5️⃣ SEO設定

    • Yoast SEORankMath を使用して多言語SEOを最適化

    ✅ 方法2: TranslatePress(無料)で多言語サイトを作る

    📌 特徴:

    • フロントエンド(サイト画面)でリアルタイム翻訳可能
    • AI翻訳(Google Translate API対応)
    • 初心者でも簡単に使用可能

    📌 インストール&設定 1️⃣ TranslatePressをインストール

    • WordPress管理画面 > プラグイン > 新規追加
    • TranslatePress を検索し、インストール&有効化

    2️⃣ 言語を追加

    • 設定 > TranslatePress で基本言語と追加言語を設定

    3️⃣ サイトでリアルタイム翻訳

    • 上部メニューから 「Translate Site」 をクリック
    • 画面を見ながら直接翻訳

    4️⃣ 自動翻訳(オプション)

    • Google Translate API を接続すると自動翻訳が可能

    5️⃣ 言語スイッチャーを追加

    • 設定 > 言語スイッチャー でメニューやウィジェットに追加

    ✅ 方法3: WPML(有料)で多言語サイトを作る

    📌 特徴:

    • 最も強力な多言語プラグイン(企業向け)
    • WooCommerce(ECサイト)の多言語対応
    • SEO機能が優秀

    📌 インストール&設定 1️⃣ WPMLを購入&インストール

    • WPML公式サイトで購入し、WordPressにインストール

    2️⃣ 言語を追加

    • 設定 > 言語 で多言語設定

    3️⃣ コンテンツ翻訳

    • 手動翻訳または WPML翻訳マネージャー を使用

    4️⃣ SEO最適化

    • Yoast SEORankMath と連携可能

    3️⃣ 多言語SEO最適化(検索エンジン対策)

    多言語サイト運営ではSEO最適化が重要です。

    おすすめURL構造(SEO最適化)

    方式おすすめ度
    サブディレクトリexample.com/en/, example.com/ja/✅ 最適なSEO
    サブドメインen.example.com, ja.example.com⚠️ ドメイン設定が必要
    独立ドメインexample.jp, example.com✅ 各市場向けに最適

    hreflangタグを追加
    検索エンジンが正しい言語ページを認識できるようにする。

    📌 例:

    <link rel="alternate" hreflang="ja" href="https://example.com/ja/" />
    <link rel="alternate" hreflang="en" href="https://example.com/en/" />
    

    SEOプラグインを活用

    • Yoast SEO または RankMath で多言語SEOを最適化

    4️⃣ 多言語サイトのパフォーマンス最適化

    多言語サイトはページ数が増えるため、速度低下を防ぐことが重要です。

    1️⃣ キャッシュプラグインを使用LiteSpeed Cache, WP Rocket
    2️⃣ CDN(コンテンツ配信ネットワーク)適用Cloudflare
    3️⃣ 画像最適化Smush, ShortPixel
    4️⃣ 不要なプラグインを削除

    5️⃣ 目的別おすすめ方法

    おすすめ方法説明最適な対象
    Polylangシンプルで無料、手動翻訳が必要🔹 個人ブログ、小規模サイト
    TranslatePressリアルタイム翻訳、AI翻訳対応🔹 簡単に翻訳したい企業サイト
    WPML高機能、WooCommerce対応🔹 大規模ビジネス、ECサイト

    👉 最も簡単な方法: TranslatePress + Google Translate API 🚀

    🔥 最終まとめ

    一番簡単な方法: Polylang または TranslatePress
    自動翻訳が必要なら? TranslatePress + Google API
    完璧な多言語サイトを作るなら? WPML
    SEO対策: hreflangタグ追加、SEOプラグイン活用
    速度最適化: キャッシュ、CDN、画像圧縮を適用

    🚀 これで簡単に多言語WordPressサイトが作れます! 🌍