aws ライトセール whm & cpanel メールアカウントの作成から有効化まで

awsライトセールインスタンスとwh& cpanelを活用して自分のウェブサイトドメインアドレスでメールアドレスとメールサーバーを管理することができます。 awsライトセールインスタンスとcpanel & whm & whmを活用したemailアカウントの作成からメール管理サーバーの作成方法を確認することができます.awsメールアカウントの作成とメール作成順序は下記のように進みます。

awsライトセールwhm & cpanelのメールアカウントの作成から活性化する方法

必要な時間: 30 minutes.

awsライトセールのインスタンスwhm & cpanelメールアカウント作成及びサーバー登録方法

  1. awsライトセールでドメインとdnsレコードを設定します

    a レコード – mail.example.co.kr – > public ip (公共アイピー設定)
    mx レコード – > 優先順位 10 に設定、レコード名 example.co.kr を設定。次に、トラフィックルーティングmail.example.co.kr設定
    txtレコードは3つを設定します。

    txt値
    @.example.co.kr / spf1 応答キー設定
    _dmarc. : dmarc応答キープ設定
    efault._domainkey : dkim応答キー
    a 레코드 - mail.example.co.kr - > public ip (공공아이피 설정) 
mx 레코드 - > 우선순위 10 으로 설정, 레코드이름 example.co.kr 설정. 다음으로 트래픽 라우팅 mail.example.co.kr 설정
txt 레코드는 3가지를 설정합니다.

txt 값
@.example.co.kr /  spf1 응답키 설정 
_dmarc.  : dmarc 응답킵 설정
efault._domainkey : dkim 응답키

  2. aws 25、465,587,2096ポートを開いておく

    2096ポートを開いておかないとcpanelでウェブメールサーバー自体に接続することができず、25, 2465, 587ポートを開いておかないとメール自体の送受信ができません。
    Lightsailコンソールでネットワークタブに移動します。
    次のポートを追加で開きます:
    TCP 25 (SMTP)
    TCP 465 (SMTPS)
    TCP 587 (Submission)
    TCP 2096 (Webmail SSL)
    5.2.IPv6ファイアウォールルールの確認
    IPv6を使用している場合、重複したルールを削除してポートを開きます。 Lightsail 콘솔에서 네트워킹 탭으로 이동합니다.
다음 포트를 추가로 엽니다:
TCP 25 (SMTP)
TCP 465 (SMTPS)
TCP 587 (Submission)
TCP 2096 (Webmail SSL)
5.2. IPv6 방화벽 규칙 확인
IPv6를 사용하는 경우 중복된 규칙을 제거하고 포트를 열어줍니다.

  3. whm接続後、imap & pop 3の活性化を進めます

    ウェブブラウザでhttps://<Elastic_IP>:2087または example.com:2087 を入力して whm に接続します。
    home – > Service Configuration -> Mailserver Configuration に接続し、imap, pop3 を選択した後、ipv6の活性化を進めます。

    웹 브라우저에서 https://<Elastic_IP>:2087 또는 example.com:2087 입력 후 whm 에 접속합니다.
home - > Service Configuration ->  Mailserver Configuration 접속 후 imap, pop3 를 선택 후 ipv6 활성화를 진행합니다.

  4. whmサービスマネージャでexim mail serverとimap serverを有効化します。

    whm service configuration – > service manager – > exim mail server & imap enbledをクリックした後、有効にします。whm service configuration - > service manager - > exim mail server & imap enbled 를 클릭 후 활성화를 시켜줍니다.

  5. dkimやspf & dmarcの設定を確認します。

    whm -> email -> email deliverabilliy設定にアクセスしてvalidの内容を確認します。
    validに設定されていない場合は、aws light sail dnsゾーンでtxtレコードファイルを設定します。whm -> email -> email deliverabilliy 설정 접속 후 valid 내용을 확인합니다. 
valid 로 설정되어 있지 않다면, aws light sail dns 존에서 txt 레코드 파일을 설정합니다.

  6. whmのメールルーティングを設定する

    whmでdns設定したメールルーティングを設定します。 whm – > email routingでドメインを選択した後、local mail exchanerをクリックした後、ttl 14400、priority値は10、mx destisationはmail.example.co.krを設定します。whm 에서 dns 설정한 이메일 라우팅을 설정합니다. whm - > email routing 에서 도메인을 서택 한 후 local mail exchaner  클릭 후 ttl 14400, priority 값은 10 , mx destisation 은 mail.example.co.kr 을 설정합니다.

  7. cpanelでメールドメインのssl証明書をインストールする方法

    cpanel -> security -> ssl/tls status接続後、メールサーバーのドメインアドレスをssl証明書をインストールします。
    mail.example.co.krをクリックした後、run auto sslをクリックするとssl証明書がインストールされます。
    cpanel -> security -> ssl/tls status  접속 후 메일 서버의 도메인 주소를 ssl 인증서 설치를 진행합니다.
mail.example.co.kr 클릭 후 run auto ssl 클릭 시 ssl 인증서가 설치 됩니다.

  8. cpanel – > email account アカウントを生成してログインします。

    cpanelでemailアカウントを確認します。
    cpanelアカウントの作成時に基本的に生成されるメールアドレスは example@example.co.kr に設定されています。
    もし、メールアドレスを変更したい場合は、createボタンをクリックした後、前にユーザー設定によるメールアドレスを生成することができます。
    official@example.co.kr のようなメールアドレスで生成可能です。

    cpanel 에서 email 계정을 확인합니다. 
cpanel 계정 생성시 기본으로 생성되는 이메일 주소는 example@example.co.kr 으로 설정 되어 있습니다.
만약 이메일 주소를 변경하고 싶으시다면 create 버튼을 클릭 후 앞에 사용자 설정에 따른 이메일 주소를 생성할 수 있습니다.
official@example.co.kr 같은 이메일 주소로 생성 가능합니다.

  9. awsのメール送信制限解除を要請する

    awsライトセールの場合、メール送信に制限をかけましたが、メールは受信されますが、送信するためには別途にawsライトセール制限解除リクエストをする必要があります。

    ライトセールのメール制限解除リクエストは下記のショートカットを使ってできます。

    ライトセールのメール制限解除要請のショートカット

    ライトセールのメール制限解除要請サービスにアクセスし、回答を受けるメールアドレスを入力した後、メール使用事例の説明を作成します。
    IP情報はライトセールインスタンスのpublic IPアドレスである公開IPアドレスを入力します。
    逆方向DNSレコードはmail.example.co.krでメールサーバードメインアドレスを入力した後、[Submit]をクリックします。
    aws 라이트세일의 경우 이메일 발송에 제한을 걸어두었는데요. 이메일은 수신되지만 발송을 위해 별도로 aws 라이트세일 제하 해제요청을 진행해주셔야합니다.

라이트 세일 이메일 제한 해제 요청은 아래 바로가기를 통해 가능합니다.

라이트세일 이메일 제한 해제 요청 바로가기

라이트세일 이메일 제한 해제 요청 서비스에 접속 후 본인의 답변받을 이메일 주소를 입력 후, 이메일 사용 사례 설명을 작성합니다.
ip 정보는 라이트세일 인스턴스의 public ip 주소인 공공 아이피 주소를 입력 합니다.
역방향 dns 레코드는 mail.example.co.kr 로 메일 서버 도메인 주소를 입력 한 후 제출 하기를 클릭합니다.

  10. ウイルス検査のためのclam av plug inをインストールします。

    ホームページサーバーを利用する際、メールで来る場合、ウイルスが発生する可能性があります。ウイルス防止のためにclam avプラグインをインストールしてください。
    clam avプラグインは、whm – > plugin – > clam av installをクリックすると、プラグインがインストールされます。
    プラグインのインストール後、whm – > service manager – > clam av daemon enabled , monitorチェックボックスを選択し、有効にします。

awsライトセールwhm & cpanelのメールアカウントの作成から有効化までの方法を全部確認してみました。 もし、上の順番で進めてもメール受信ができなかったり、送信ができない場合は、ポート設定やdnsの設定内容をもう一度確認してみてください。

もし、メールサーバーの設定に苦労している場合は、サービスリクエストをすれば、所定の費用を受け取ってサーバーの設定を行います。

cpanel & whmメール設定時の注意事項

awsライトセールのインスタンスインストール後、2096ポートが開いてない場合がありますが、ライトセールインストール後、インスタンスに2096ポートを開いていただければwhmウェブメールログインが可能です。

2096ポートと25ポート、465、587を追加します。

2096ポートというのはexample.com:2096でログインする時、ウェブメールサーバーに接続できるように道を開いてくれる方式とみてください。 awsライトセールインスタンス生成時2096ポートが生成されず、2096ポートを開いてもらわないとメール登録ができません。

dns zoneではawsドメイン及びdnsゾーンcname、aレコードとwhm email deliveryタブと一致することを確認した後、valid表示が確認されたらdns設定が正しく行われます。

ハッキング防止のための2faログイン認証または主に使用するアドレスのipをホワイトリストに追加したり、ブルートフォースプロテクション(CPHulk Brute Force Protection)を設定することで、ハッキングから安全に保護することができます。

CGIアクセスvs.Shell(Shell Access)アプローチの違い及び適合性

CGIアクセスとShell Access(SSHアクセス)は、サーバー管理とサイト運営方法によって適合性が異なります。二つの特徴や用途、長所と短所を比較してみましょう。

1️⃣ CGIアクセスとは?

CGI(Common Gateway Interface)は、サーバーで外部プログラム(スクリプト)を実行できるようにするプロトコルです。ウェブブラウザからリクエストが来ると、CGIスクリプトを通じて動的にコンテンツを生成したり、データを処理します。

特徴

  • 運営方式:サーバーが特定のスクリプト(PHP、Perl、Pythonなど)を実行して結果を返す。
  • セキュリティ:Shell(SSH)アクセスなしでも動的コンテンツ生成が可能。
  • ホスティング制限:共有ホスティング環境では一般的にCGIアクセスが許可されます。
  • 複雑なコマンド実行不可:CGIアクセスだけでは、サーバーの詳細な設定変更が困難です。

メリット

  1. 初心者にやさしい:基本的に設定されており、追加の管理が必要ない。
  2. セキュリティリスクが低い:SSH権限なしで限られた範囲でのみ動作。
  3. ホスティングサポート:ほとんどの共有ホスティング環境でCGIが基本的に有効。

短所

  1. 限られた機能:サーバー全体を管理したり、高度な作業を行うことができない。
  2. 効率の問題:CGIはリクエストごとに新しいプロセスを生成するため、パフォーマンスが低下する可能性がある。

2️⃣ Shell(Shell Access)とは?

Shell Access(SSHアクセス)とは、サーバーに直接ターミナルからアクセスしてコマンドを実行できる権限を意味します。SSH(Secure Shell)は、暗号化された接続を通じてセキュリティを強化したプロトコルです。

特徴

  • 運営方式:ユーザーがサーバーに直接ログインしてコマンドを実行し、ファイル管理、サービス設定、デバッグなどの高度な作業が可能。
  • セキュリティ:強力なセキュリティ設定(例えば、公開鍵認証)が必要。
  • ホスティング制限:共有ホスティングでは、SSHアクセスが制限されるか、リクエストにより有効化する必要がある。

長所

  1. 専門家向けのツール:サーバーのすべての設定と管理作業が可能。
  2. 効率的な作業:サーバーの状態確認、ログの確認、スクリプトの実行など、高度な作業が可能。
  3. 自動化可能:Bashスクリプト、クロンジョブ(Cron Jobs)などを設定して自動化作業を実行。

デメリット

  1. セキュリティリスク:パスワードやキー管理が不十分な場合、サーバーがハッキングされるリスクがある。
  2. 学習が必要:初心者にはコマンドベースのインターフェースが難しい場合がある。
  3. エラーの可能性:間違ったコマンド実行時、サーバーを破損させる可能性がある。

3️⃣ 2つのアプローチの主な違い

基準CGIアプローチShell(SSH)アプローチ
使用目的動的コンテンツ生成及び制限された作業実行サーバー管理、ファイル編集、デバッグ、ログ確認など。
セキュリティリスク比較的低い管理方式により、セキュリティが脆弱になる可能性あり
権限制限的(スクリプト実行に限る)サーバー全体にアクセス可能
技術要件なし(初心者向け)基本的なコマンドとサーバー管理知識が必要
速度及び効率性リクエストごとに新しいプロセスを生成 → 非効率的継続的なセッションで迅速かつ効率的
ホスティングサポートの有無共有ホスティングで基本提供共有ホスティングでは制限されているか、リクエスト後に有効化する必要がある

4️⃣ どのような状況にどのようなアプローチが適しているか?

✅ CGIアクセスが適切な場合:

  • 共有ホスティング環境で運営中の場合。
  • サーバー管理ではなく、WordPress、ブログ、簡単なウェブサイト運営が必要な場合。
  • セキュリティを強化して、管理責任をホスティングプロバイダに任せたい時。

Shell(SSH)アクセスが適切な場合:

  • VPS(仮想プライベートサーバー)、専用サーバーやクラウドサーバーを運営する場合。
  • サーバーをカスタマイズしたり、高度な作業(例:ログ分析、サービスインストール)が必要な場合。
  • 自動化スクリプト(Bash, Cron Jobsなど)を使用したい時。
  • サイトのパフォーマンスを最適化するためにサーバー内部作業が必要な場合。

5️⃣ WHM環境での推奨設定

  • 共有ホスティング:CGIアクセスのみ有効にしてセキュリティを強化。
  • VPS/専用サーバー:Shell Accessを有効にし、公開鍵認証(SSH Key)を設定してセキュリティを維持。
  • Shell Accessの有効化方法(WHM):
    1. WHM → Manage Shell Accessに移動。
    2. ユーザーアカウントでJailed Shell(制限されたShell)またはFull Shell(完全Shell)権限を選択。
    3. 保存後、SSHクライアント(例えば、PuTTY)で接続テスト。

結論

  • CGIアクセス:簡単な作業(WordPressのインストール、プラグインの管理)だけが必要な場合は十分。
  • Shell(SSH)アクセス:VPSや専用サーバーで高度な作業(最適化、デバッグ、自動化など)のために必要。
  • セキュリティ面:Shell Access使用時、強力な認証設定(例えば、公開鍵、パスワード制限)を必ず適用。

推奨:WordPressとウェブサイトの基本的な運営にはCGIアクセスが十分ですが、サーバーの最適化や高度な作業が必要な場合は、SSHアクセスを使用してください🚀。

WP-Optimize vs. WP Rocket比較:どのようなプラグインがより良いか?

WP-OptimizeとWP RocketはすべてWordPress 速度最適化のためのプラグインですが、機能と目的が異なります
各プラグインの違いを比較し、どのような状況でどのようなプラグインを選択すればいいのか説明します。

1️⃣ WP-OptimizeとWP Rocketの主な違い

機能WP-Optimize🚀(WP-Optimize)WP Rocket🚀 🚀の主な目的
主な目的データベース最適化&キャッシュ機能提供キャッシュ&ページ速度の最適化
データベースの最適化✅ 強力なDBクリーニング機能❌基本的なDBクリーニング(自動最適化X)
ページキャッシュ✅ (無料版にはない、有料機能)✅高度なページキャッシュをサポート
画像の最適化✅基本的な画像圧縮機能を提供❌ (別途画像圧縮プラグインが必要)
CSS / JSファイルの最適化✅ミニファイル(最小化)をサポート✅ミニファイル、マージ、非同期ロード、遅延ロードをサポート
Lazy Load (遅延ロード)✅ サポート高度な機能をサポート
Gzip 圧縮をサポートありあり
CDNサポートなし (CDNを直接設定する必要があります)Cloudflareと様々なCDNをサポートします。
モバイルキャッシング❌なしあり ✅ あり
価格無料 & 有料 (プレミアムバージョンが必要)
プレミアムバージョン:
2つのドメイン : 49ドル
5つのドメイン : 99ドル
ドメイン無制限 : 199ドル
有料 (1年ライセンスが必要)
1ドメイン : 59ドル
3つのドメイン : 119ドル
ドメイン50個:299ドル

2️⃣プラグイン別詳細比較

✅ WP-Optimize:データベースの最適化に特化したプラグイン

WP-OptimizeはWordPress データベースの最適化、画像圧縮、および一部のキャッシュ機能を提供するプラグインです。

主な機能

  1. データベースの整理🛠
    • リビジョン(修正版)、トランザントキャッシュ、スパムコメント、ゴミ箱データを削除可能。
    • 不要なデータベースの負荷を減らしてサイトの速度向上。
  2. 画像圧縮📷
    • WebP変換とJPEG圧縮をサポート。
    • 別の画像最適化プラグインが不要。
  3. 基本的なキャッシュ機能(有料)
    • キャッシュ機能は有料版で提供。
    • ページキャッシュよりDB最適化中心。

WP-Optimizeおすすめ対象

データベースの最適化が重要なサイト
画像の最適化と基本的なキャッシュが必要な場合
無料で使いたい場合

✅ WP Rocket:速度最適化に特化したキャッシュプラグイン

WP Rocketは、高度なキャッシュ機能、CSS / JSの最適化と速度向上を目的とした有料プラグインです。

主な機能

  1. 高度なキャッシュシステム🚀
    • 静的なHTMLファイルを生成して、ページの読み込み速度を大幅に削減。
    • モバイルキャッシングのサポート→ モバイルページの読み込み速度向上。
    • キャッシュのプリロード機能→訪問者が初めてページにアクセスする時も高速。
  2. CSS&JS最適化🎨
    • CSS/JSファイルをマージしてHTTPリクエストを減らす。
    • JavaScriptの非同期ロード → ページ速度の改善。
    • Unused CSSを削除可能。
  3. Lazy Load(遅延ロード)サポート📷
    • ページがロードされるたびに画像を読み込むようにし、初期読み込み速度を改善。
  4. CDNとCloudflareをサポート🌍
    • 別途のCDNサービスがなくても、Cloudflareと連動してグローバルスピードを向上。

WP Rocket おすすめ対象

WordPress 速度最適化を最大化したい場合
専門的なキャッシュとパフォーマンスの最適化機能が必要な場合
CDNと連動してグローバル速度を上げたい場合

3️⃣ WP-Optimize vs. WP Rocket選択ガイド

使用目的おすすめプラグイン
データベースの最適化が最も重要WP-Optimize
無料で基本的な速度最適化が必要WP-Optimize
完璧なキャッシュ+最適化機能が必要WP Rocket
CSS/JS圧縮と読み込み速度の最適化必要WP Rocket
CDN連動によるグローバル速度向上WP Rocket

4️⃣WP-OptimizeとWP Rocketを 効率的に使用する

現在WP Rocketプラグインを購入する前なら、まずWP-Optimizeプラグインをインストールした後、wp rocketプラグインがサポートしていないデータベースの整理を行った後、wp rocketプラグインを使うことをお勧めします。

二つのプラグインの両方を使用する場合、プラグインの競合のためにサイトがエラーが発生したり、あるいはサイトの速度がもっと遅くなることがあります。下記の順番で2つのキャッシュプラグインを進めることができます。

  1. WP-Optimizeプラグインをインストールした後、最適化を進める(データベースを整理する)
  2. WP-Optimizeプラグインを無効にし、プラグインの削除
  3. WP Rocketプラグインをインストールする
  4. WP rocketプラグイン+ imagyiyプラグインをインストールする

WP-Optimizeのデータベースの最適化を行った後、WP-Rocketのキャッシュ機能を利用すれば、ウェブサイトの速度を大幅に改善することができます。さらに、cdnを利用する場合、サイトの速度を大幅に改善させることができます.する場合、サイトの速度が大幅に改善されるが、遠くの

wp optimize 데이터 베이스 정리하기

WP-Optimizeプラグインをインストールした後、データベースを整理する

WP Rocketホームページに アクセスした後、プランを選択した後、決済後、プラグインをダウンロードします。

ダウンロードされたwp rocketプラグインを WordPress – >新しいプラグインの追加 – >プラグインのアップロード – >ファイル選択でプラグインをアップロードした後、今すぐインストールをクリックすると、wp rocketプラグインがインストール完了します。

wp rocketプラグインのインストール後、有効化進行された後、wp rocketプラグインの設定で最適化設定を進めてください。 wp rocketプラグインの設定方法や機能の説明に関する記事は、別途説明し、この記事で詳細を確認することができます。

最終結論:どんなプラグインを選ぶべきか?

  • データベースの整理と軽い速度の最適化が必要な場合: WP-Optimize(無料使用可能)
  • 最高の速度最適化をしたい場合:WP Rocket(有料ですが、パフォーマンス最強)

💡おすすめ組み合わせ:
WP-Optimize(無料)+ LiteSpeed Cache(無料)の組み合わせ→パフォーマンス&無料最適化
WP Rocket(有料)+ imagify(無料)単独使用→強力なキャッシュと画像の最適化

予算とサイト運営目標によって適切なプラグインを選択することをお勧めします。

WordPress 多言語サイト制作方法総まとめ

WordPressで多言語サイトを制作するには、大きく3つの方法があります。

  1. プラグインの使用(推奨)– WPML, Polylang, TranslatePressなど
  2. サブドメイン or サブディレクトリ方式– 各言語ごとに別々のサイトを運営する
  3. マルチサイト(Multisite)設定– 一つの WordPressで複数のサイトの管理

各方法の長所と短所と設定方法を詳しく説明します。

1️⃣プラグインを使用した多言語サイトの構築(最も簡単な方法)

WordPressで多言語サイトを運営するには、通常、多言語プラグインを使用することが最も簡単で効果的です。

🚀おすすめプラグインの比較

プラグイン価格主な特徴
WPML有料 (約3〜10万ウォン/年)最も強力な多言語サポート、SEOの最適化に優れている
Polylang無料/有料無料版で基本的な多言語機能をサポート、使いやすい
TranslatePress無料/有料リアルタイム翻訳をサポート、AI翻訳(Google Translate)可能

💡 **WPML(WordPress Multilingual Plugin)**はSEOフレンドリーな多言語サイトを作るのに最適です。

インストールと設定

  1. WPMLプラグイン購入後、インストール(wpml.orgからダウンロード可能)
  2. WPML> Languagesで 追加する言語を選択
  3. WPML> String Translationで 翻訳する文字列を追加する
  4. WPML> Settingsで SEOの設定(URLの構造を変更可能)
    • mydomain.com/en/,mydomain.com/ko/, mydomain.com/fr/同じURL構造を設定可能
  5. 各ページ/ポストを翻訳して多言語コンテンツを追加する

📌メリット
✅ SEO最適化機能を提供(Google多言語検索をサポート)
✅WooCommerce(ショッピングモール)との完全互換性

📌デメリット
❌有料のプラグイン(年間$ 39〜$ 99)

方法2:Polylangプラグイン(無料使用可能)

💡Polylangは無料で使用できる多言語プラグインです。

インストールと設定

  1. プラグイン > 新規追加 > Polylangを検索し、インストールして有効にします。
  2. 設定 > 言語で 追加する言語を選択
  3. 既存コンテンツ(ページ、ポスト)に多言語翻訳を追加する
  4. メニュー設定で各言語のナビゲーションメニューを追加する

📌メリット
✅無料で使用可能
シンプルなサイトに最適

📌デメリット
❌ String Translation機能は有料(WPMLより翻訳オプションが不足している)

方法3:TranslatePressプラグイン(リアルタイム翻訳支援)

💡TranslatePressは Google翻訳APIを活用して、リアルタイム翻訳が可能なプラグインです。

インストールと設定

  1. プラグイン > 新規追加 > TranslatePressをインストールして有効にする
  2. 設定 > TranslatePressで 追加する言語を設定
  3. ページ編集モードで 翻訳するテキストを直接修正可能
  4. AI翻訳(Google Translate API)を使用可能

📌長所
✅リアルタイム翻訳機能を提供
翻訳編集UIが直感的

短所📌デメリット
❌自動翻訳の場合、追加費用が発生(Google API使用料)

2️⃣ サブドメイン/サブディレクトリ方式(別途サイト運営)

例示:

  • サブドメイン方式:en.mydomain.com,fr.mydomain.com
  • サブディレクトリ方式:mydomain.com/en /, mydomain. com/en/,mydomain.com/fr/

設定方法

  1. ドメイン設定
    • サブドメイン方式: en.mydomain.comを作成した後、別途 WordPress 設置
    • サブディレクトリ方式: mydomain.com/en/パスに新しいサイトを構築する
  2. 各言語別 WordPress サイト運営
  3. hreflangタグを追加してSEO最適化

📌メリット
✅ 完全に独立したサイト運営が可能
各言語ごとにSEO最適化が可能

📌デメリット
❌メンテナンスが難しい(言語別サイト別に管理する必要がある)

3️⃣ WordPress マルチサイト(Multisite)機能の活用

WordPressマルチサイトを設定すると、一つの WordPressで複数の言語サイトを運営することができます。

設定方法

  1. wp-config.phpファイルに次のコードを追加
    • define('WP_ALLOW_MULTISITE', true);
  2. WordPress 管理者でネットワーク設定を有効にする
  3. 各言語固有のサブドメインまたはサブディレクトリ方式でサイトを追加する
  4. プラグインMultilingualPressを使用して言語の接続

📌利点
一つの WordPressで複数の言語サイトを管理可能
✅プラグイン、テーマの共有が可能

📌デメリット
❌設定がやや複雑で、サーバーリソースの使用量が増加します。

最終選択ガイド(どの方法が一番いいのか?)

方法おすすめ対象主な特徴
WPML (有料)SEO最適化、WooCommerceの使用強力な多言語機能、翻訳管理しやすい
Polylang (無料)簡単な多言語サイト無料使用可能、WPMLより機能限定的な
TranslatePress(無料/有料)リアルタイム翻訳が必要Google Translate API使用可能
サブドメイン/サブディレクトリ完全に独立したサイト運営SEO強力、メンテナンスが難しい
マルチサイト (Multisite)多言語ブログ、ポータル一つの WordPressで複数の言語サイト運営

おすすめ組み合わせ: ✅WPML + SEOの最適化→専門的な多言語サイト
Polylang(無料)+キャッシュ最適化→小規模の多言語サイト
TranslatePress + AI翻訳→自動翻訳サイト構築

🔹 結論

WordPressで多言語サイトを制作する方法は様々ですが、プラグインを利用することが最も効率的です
SEO最適化&メンテナンスの利便性を考慮すると、WPMLプラグインが最もお勧めです。
しかし、**無料プラグイン(Polylang, TranslatePress)**を活用すれば、コストを削減しながら多言語機能を追加することができます。

💡どの方式が一番適しているか悩んでいるなら?シンプルなブログPolylang (無料)
ショッピングモール、企業サイトWPML (有料)
自動翻訳をサポートTranslatePress + Google Translate API

このように設定すると、多言語サイトの運営がもっと簡単になります!🚀 💪 🚀 💪 🚀 💪

WordPress サイト管理者ページやサイトの読み込みが遅いときの解決方法

WordPress 管理者(Admin)ページが遅くなる理由はいくつかあることがあります。サーバーの問題、プラグインの過負荷、データベースの最適化不足などが主な原因です。以下で可能な原因と解決方法を段階的にご案内します。

1️⃣ WordPress 管理者ページが遅くなる主な原因

1. サーバーのパフォーマンスの問題

  • PHPのバージョンが低い:PHP 7.4以下を使用すると、パフォーマンス低下が発生。
  • PHPメモリ制限不足:デフォルト(128M)が低いと、管理者ページが遅くなることがある。
  • CPUとサーバーリソース不足:低コストの共有ホスティングを使用すると、過負荷が発生する可能性があります。

2024年後半以降は、php 8.1以上のバージョンで行われるが。 phpのバージョン自体が遅い場合、サイトのパフォーマンスが低下することができ、phpのメモリ制限が低く設定されている場合、管理者ページ自体が遅くなることがあります。

2. プラグイン/テーマの過剰インストールとクラッシュの問題

  • プラグインの過剰インストール:必要ないプラグインが多い場合、管理者ページの読み込みが遅くなることがある。
  • 重いプラグインの使用:例)SEOプラグイン、セキュリティプラグイン、非効率的なキャッシュプラグイン。
  • テーマのパフォーマンスの問題:非効率的に作成されたテーマがパフォーマンス低下を引き起こす。
  • テーマとプラグインの競合:テーマと互換性のないプラグインの競合によるサーバーエラー。

使用していないプラグインが正しく削除されないか、重いプラグインが多くインストールされた場合、サイトの速度が遅くなり、既存のプラグインが削除が正常にされていなくて、既存のプラグインとの競合が引き起こす場合に発生する可能性があります。

WordPress テーマと互換性のないプラグインの競合のためにサイトの低下が発生する可能性があります。

3. データベースの過負荷

  • 古いリビジョン(投稿の修正)と一時的なデータ(transient)がデータベースを過度に占有。
  • wp_optionsテーブルにautoload設定されたデータが多い場合、管理者の速度低下。

4. AJAX過負荷(admin-ajax.php)

  • リアルタイム通知、WooCommerceダッシュボードデータなどAJAXリクエストが多い場合、過負荷が発生。

2️⃣ WordPress 管理者の速度を最適化する方法

1. PHP設定の最適化

  1. PHPのバージョンのアップグレード
    • PHP 8.0以上の使用をお勧めします。
    • cPanelまたはホスティング管理者ページでPHPのバージョンをアップグレードしてください。
  2. php-phm設定を変更する 変更する
    • php-fpm設定を変更する、php fpmは管理者ページの速度を改善するのに重要な役割をします。
  3. PHPのメモリ制限を増やす
    • cPanelでmemory_limitを 512Mまたはそれ以上に設定します。
    • wp-config.phpファイルに下記のコードを追加します。
define('WP_MEMORY_LIMIT', '512M'); define('WP_MAX_MEMORY_LIMIT', '512M');

2. プラグインとテーマの最適化

  1. 不要なプラグインを無効に
    • 現在有効化されてるプラグインを全部確認して使ってないプラグインを無効化します。
  2. 重いプラグインの交換
    • 問題になる可能性があるプラグインの例
      • Elementor: 重いページビルダープラグイン。
      • WooCommerce: 非効率的なAJAXリクエストが発生する可能性がある。
    • 代替: 軽量プラグインの使用。
  3. 基本テーマに変更テスト
    • 管理者ページの速度をテストするためにTwenty Twenty-Oneと generaterpressのような軽量テーマに変更後のパフォーマンスを確認します。
  4. WP-Optimizeプラグインを使用
    • WP-Optimizeプラグインをインストールして、データベースの最適化作業を行う:
      • 投稿リビジョンの削除。
      • 一時データ(transient)を削除。
      • ゴミ箱とスパムコメントの削除。
  5. 手動データベースの最適化
    • phpMyAdminで以下のクエリを実行して、有効期限が切れたデータと不要なデータを削除:sqlコピー編集DELETEFROM wp_options WHERE option_name LIKE '_transient_%'; DELETE FROM wp_options WHERE option_name LIKE '_site_transient_%';

3. AJAXリクエストを減らす

  1. Heartbeat Controlプラグインのインストール
    • WordPressのHeartbeat APIリクエストを制限してadmin-ajax.phpの負荷を減らします。
    • Heartbeat Controlプラグインのインストール → “Heartbeat Frequency”を減らすか、無効にします。
  2. WooCommerceダッシュボードを無効に
    • WooCommerce → 設定 → 詳細 → 「WooCommerceダッシュボード」を無効にします。

4. キャッシュプラグインの最適化

  1. WP Rocket設定の最適化
    • WP Rocketが有効になっている場合は、以下のオプションを確認:
      • CSS/ JS最小化無効:特定のプラグインやテーマとの競合が可能。
      • キャッシュプリロード制限:プリロードが過度に動作しないように設定。
    • WP Rocket → “キャッシュの削除”を実行。
  2. 他のキャッシュプラグインの競合防止
    • WP Rocketと一緒にLiteSpeed Cache、W3 Total Cacheなどの他のキャッシュプラグインを使用しないでください。

5. サーバーの性能確認

  1. ホスティングアップグレード
    • 低コストの共有ホスティングで低コストのホスティングを利用する場合、cpuやRAMの使用量が不足してホスティングサーバー自体をアップグレードする必要があります。
  2. Query Monitorプラグインを使用
    • Query Monitorプラグインをインストールして、管理者ページで実行されるクエリを分析します。
    • 非効率的なクエリを誘発するプラグインやテーマを把握した後措置。

3️⃣ 追加チェックリスト

  1. ブラウザのキャッシュとクッキーの削除
    • 管理者ページが遅い場合、ブラウザのキャッシュとクッキーを削除して再テストしてください。
  2. CDN設定を確認
    • CDN(例:Cloudflare)を使用している場合、管理者ページが遅い場合は、CDNキャッシュ設定を確認してください。
  3. サイトの状態を確認
    • WordPress → “ツール → サイトの状態”に移動し、サーバーとプラグインに関する推奨事項を確認。

結論

  1. PHP設定の最適化、不要なプラグインの無効化、データベースの最適化を優先的に実行してください。
  2. Query MonitorとWP-Optimizeのようなプラグインを活用してパフォーマンスを分析し、最適化作業を繰り返してください。
  3. 継続的に問題が解決されない場合は、サーバー環境をアップグレードしたり、専門家の助けを受けることも検討してください。

whm&cpanelを活用した WordPress 速度向上:PHP-FPM設定

PHP-FPM(FastCGI Process Manager)は、WordPressの管理者ページの速度を改善するために重要な役割を果たします。PHP-FPMはPHPリクエストを効率的に処理して、サーバーのパフォーマンスを向上させ、管理者ページが遅くなる問題を解決することができます。以下でPHP-FPMの設定を変更する方法をご案内します。

いつPHP-FPMを使うべきか?

PHP-FPMは下記のような状況で使用を検討する必要があります:

  1. トラフィックが多いウェブサイト
    • 一日に数千件以上の同時リクエストを処理しなければならない高トラフィックサイトでは、PHP-FPMはボトルネックを減らし、応答速度を改善します。
  2. リソースが制限されたサーバー環境
    • PHP-FPMはメモリとCPUリソースを効率的に管理するため、限られたサーバー環境でも性能向上を提供します。
  3. WordPress 管理者ページが遅いとき
    • 管理者ページは一般的なページより多くのPHPリクエストを生成するので、PHP-FPMの最適化で速度を改善することができます。
  4. PHPリクエストが過負荷を引き起こすとき
    • 既存のPHPの設定では、同時要求を十分に処理できず、504 Gateway Timeoutエラーが発生したときにPHP-FPMを適用すると、問題を解決することができます。

PHP-FPMの主な設定説明と推奨値

PHP-FPMの性能を最適化するために重要な設定項目と推奨値を下記のようにまとめました。 各項目は、 WordPress 管理者ページのような動的なウェブサイトの要求処理性能に影響を与えます。

1️⃣ pm.max_children

  • 説明
    • 同時に処理できる最大リクエスト数を定義します。
    • PHP-FPMが一度に処理できるリクエストの最大値を設定し、これを超えるとリクエストは待機状態になります。
    • この値はサーバーのメモリ容量によって決定されます。
  • 推奨値:
    • 10~50: 小規模のウェブサイト。
    • 50~150: 中トラフィックのウェブサイト。
    • 150~300: 高トラフィックのウェブサイト。
    • (例:RAM 1GBあたり約20個のmax_childrenが可能)

2️⃣ pm.start_servers

  • 説明:
    • PHP-FPMが起動時に準備するプロセス数です。
    • 初期リクエストを処理するために準備された状態で待機するプロセスの数を設定します。
    • 設定値が低すぎると、初期リクエスト時の待ち時間が長くなる可能性があります。
  • 推奨値:
    • pm.min_spare_servers と pm.max_spare_servers の値の間で設定します。
      • 例)pm.min_spare_servers=5で、pm . max_spare_servers = 10の場合、pm. start_servers=7に設定。

3️️⃣ pm.min_spare_servers

  • 説明:
    • リクエストを待ってる間、常に維持されなければならない最小プロセス数を定義します。
    • この値よりプロセス数が少ない場合、PHP-FPMは新しいプロセスを生成します。
  • 推奨値:
    • 小規模サイト:2~5
    • 高トラフィックサイト:5~10

4️⃣ pm.max_spare_servers

  • 説明:
    • リクエストを待機するために作成できる最大プロセス数を定義します。
    • 設定値を超えるプロセスは削除されます。
    • この値が高すぎると、メモリの浪費を引き起こす可能性があります。
  • 推奨値:
    • 小規模サイト:5~10
    • 高トラフィックサイト:10~20

5️️⃣ pm.max_requests

  • 説明:
    • 各PHP-FPMプロセスが処理できる最大リクエスト数を設定します。
    • この値はメモリリークを防止するため、プロセスを周期的に再生成する役割をします。
    • 値が低すぎると、頻繁にプロセスを再生成して性能低下が発生する可能性があり、高すぎるとメモリリークで問題が発生する可能性があります。
  • 推奨値:
    • 500~1000: 安定的なリクエスト処理。
    • 高トラフィックのウェブサイトでメモリに問題がなければ、1000~2000まで可能。

6️⃣ pm=dynamic or static

  • 説明:
    • PHP-FPMのプロセス管理方法:
      • dynamic: リクエストの数によってプロセスを動的に増加/減少させる。
      • static: 固定された数のプロセスを維持します。
  • 推奨値:
    • dynamic: ほとんどのサイトに適しています。
    • static: 非常に安定的で固定的なリソース割り当てが必要なサイト。

最終設定例

サーバーのメモリとトラフィック状況に応じて設定を適用した例は下記の通りです:

中程度のトラフィック(RAM 4GB基準)

pm = dynamic
pm.max_children = 50
pm.start_servers = 10
pm.min_spare_servers = 5
pm.max_spare_servers = 15
pm.max_requests = 1000

高トラフィック (RAM8GB基準)

pm = dynamic
pm.max_children = 150
pm.start_servers = 20
pm.min_spare_servers = 15
pm.max_spare_servers = 30
pm.max_requests = 2000

PHP-FPM設定変更で管理者ページを最適化する方法

1️⃣ PHP-FPMの設定が必要な理由

  1. 同時リクエスト処理の向上
    • PHP-FPMはマルチプロセスを管理し、WordPressのような動的なウェブサイトのパフォーマンスを大幅に改善します。
  2. リソース効率の向上
    • PHPリクエストを効率的に処理するため、CPUとメモリ使用量が減少します。
  3. 特に、管理者ページの速度改善
    • 管理者ページはより多くのPHPリクエストを生成するので、PHP-FPMの性能最適化が重要です。

2️⃣ cPanelでPHP-FPMの有効化と設定変更

  1. cPanelにログイン
    • ホスティング管理ツールにログインしてPHP設定ページに移動します。
  2. PHP-FPMを有効にする
    • ソフトウェア → MultiPHP Managerを選択。
    • WordPressサイトに使用されるドメインに対してPHP-FPMが有効になっていることを確認し、有効になっていない場合は有効化(Enable)ボタンをクリックします。
  3. PHP-FPMの設定を変更
    • ソフトウェア → MultiPHP INI Editorに移動。
    • PHP-FPM関連設定を下記のように調整します:

設定の説明:

  • pm.max_children: 同時に処理できる最大リクエスト数。(高く設定するほど、より多くの同時リクエストを処理可能)
    • 推奨値 :
  • pm.start_servers: 初期プロセス数。
  • pm.min_spare_servers: 最小待機プロセス数。
  • pm.max_spare_servers: 最大待機プロセス数。
  • pm.max_requests: 1つのプロセスが処理できる最大リクエスト数。(500~1000推奨)
pm = dynamic pm.max_children = 20 pm.start_servers = 4 pm.min_spare_servers = 2 pm.max_spare_servers = 8 pm.max_requests = 500

3️⃣ PHP-FPM設定ファイルを直接変更する

ホスティング環境がcPanelでない場合、SSHでサーバーに接続して直接PHP-FPM設定ファイルを修正することができます。

  • PHP-FPM設定ファイルを開きます
    SSHでサーバーに接続後、PHP-FPM設定ファイルを開きます。 php-fpm設定ファイルはshell接続後、下記のコードを入力します。
sudo nano /etc/php/7.x/fpm/pool.d/www.conf
  • 設定修正します
    下記のように主な項目を調整します。
pm = dynamic pm.max_children = 30 pm.start_servers = 5 pm.min_spare_servers = 3 pm.max_spare_servers = 10 pm.max_requests = 1000
  • PHP-FPMを再起動します
    設定変更後、PHP-FPMサービスを再起動します。
sudo systemctl restart php7.x-fpm


4️⃣ 管理者ページの最適化追加作業

PHP-FPM設定変更以外にも、WordPress管理者ページの速度を最適化するには、次の作業を一緒に実行してください:

  1. Heartbeat API制限
    • Heartbeat Controlプラグインをインストールして、管理者ページのAJAXリクエストの頻度を制限します。
  2. キャッシュプラグインの設定
    • WP Rocket、W3 Total Cacheのようなキャッシュプラグインを活用して、管理者ページのパフォーマンスを向上させます。
  3. データベースの最適化
    • WP-Optimizeプラグインを使って古いリビジョン、一時データなどを整理します。
  4. PHPバージョンのアップグレード
    • PHP 8.0以上を使うと性能が大幅に改善されます。

5️⃣ PHP-FPMの最適化結果確認

  1. サイトのパフォーマンスチェック
    • 管理者ページの速度が改善されたか確認します。
    • 必要に応じてQuery Monitorプラグインでクエリ処理時間を分析します。
  2. サーバーリソースの使用量チェック
    • cPanelまたはサーバー管理ツールでCPUとメモリ使用量を監視します。

🚀 結論

PHP-FPMの設定を適切に調整すると、WordPressの管理者ページの速度を大幅に改善することができます。さらに、Heartbeat制限、キャッシュの最適化、データベースのクリーンアップなどを並行すると、より大きな効果を見ることができます。

PHP-FPMは、パフォーマンスとリソース管理の両方を改善するPHP実行環境で、特にトラフィックが多いサイトや WordPress 管理者ページの速度の問題を解決するのに役立ちます。正しく設定すると、ウェブサイトのパフォーマンスを大幅に向上させることができ、効率的なプロセス管理を通じて安定したサービスを提供します。

PHP-FPMが提供する機能と設定方法を介して WordPress パフォーマンスの問題を解決することができる具体的な手順に移ります。😊(笑)

WordPress 多言語サイトを簡単に作成する方法 🚀 🌍 WordPress多言語サイトを簡単に作る方法

WordPressで多言語(多言語)サイトを作成する方法はいくつかあります。一つのウェブサイトで複数の言語をサポートし、訪問者が好きな言語でコンテンツを見ることができるように設定を進めることができます。

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

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

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

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

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

プラグイン価格特徴
WPML有料最も強力な多言語プラグイン(SEOサポート)
Polylang無料/有料シンプルで軽いプラグイン
TranslatePress無料/有料リアルタイムのフロントエンド翻訳が可能
Weglot有料AI自動翻訳をサポート

最も簡単な方法: TranslatePressまたはPolylangを使用🚀。

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

特徴📌特徴:

  • 無料版でも強力な機能を提供
  • 使い方が簡単で、言語スイッチャー(切り替えボタン)を提供します。
  • 翻訳するコンテンツを手動で入力する必要がある

インストールと設定

1️⃣WordPress プラグインを追加→Polylang検索後インストール
2️⃣設定 → 言語の追加

  • 設定→言語で希望の言語を追加(例:韓国語🇰🇷、英語🇺🇸、日本語🇯🇵、日本語🇯🇵など)
    3️⃣翻訳するコンテンツを追加します
  • ページ → 新しい記事を作成した後、既存のページをコピーして翻訳を作成します。
    4️⃣言語スイッチャー(切り替えボタン)追加
  • ウィジェット→言語セレクタを追加(メニューまたはサイドバーに配置可能)
    5️⃣SEO設定
  • Yoast SEOまたはRankMathと一緒に使用して、多言語SEOの最適化することができます。

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

特徴📌特徴:

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

インストールと設定

1️⃣WordPress プラグインの追加→TranslatePress検索後インストール
2️⃣設定 → 言語の追加

  • 設定→TranslatePressで基本言語+追加言語を設定します。
    3️⃣サイトのリアルタイム翻訳
  • 上部バーで「Translate Site」をクリックした後、直接翻訳
    4️⃣自動翻訳(オプション)
  • Google Translate API接続時に自動翻訳をサポート
    5️⃣言語スイッチャーの追加
  • 設定 → 言語スイッチャーからメニューまたはウィジェットに追加

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

📌特徴:

  • 最も強力な多言語プラグイン(企業向けおすすめ)
  • WooCommerce(ショッピングモール)多言語対応
  • SEO機能が優れている

📌インストールと設定 1️⃣WPMLプラグインの購入とインストール
2️⃣設定 → 言語の追加
3️⃣コンテンツの翻訳

  • 手動翻訳または翻訳マネージャー機能を活用
    4️⃣SEOの最適化
  • Yoast SEO、RankMathと一緒に使用する。

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

多言語サイトを運営する場合、SEO最適化が重要です。

URL構造設定 (SEO最適化)

  • サブディレクトリ方式(推奨):example.com/en/,example.com/en/, example.com/ko/
  • サブドメイン方式en.example.com, en .example.com, ko.example.com
  • 別ドメインの使用:example.kr,example.com

hreflang タグの追加

検索エンジンが正しい言語のページを認識するようにhreflangタグを追加する必要があります。

例です:

htmlコピー編集<link rel="alternate" hreflang="en" href="https://example.com/ko/" /> <link rel="alternate" hreflang="en" href="https://example.com/en/" /> <link rel="alternate" hreflang="en" href="https://example.com/en/" />

SEOプラグインを使う

  • Yoast SEOまたはRankMathプラグインで多言語SEO最適化機能を提供します。

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

多言語サイトは翻訳されたページが多くなり、速度が遅くなることがあります。
次の方法を使用して速度を最適化しましょう。

1️⃣キャッシングプラグインの使用→ LiteSpeed Cache, WP Rocket
2️⃣CDN(Content Delivery Network)適用→Cloudflareを使用する。
3️⃣画像の最適化→ SmushまたはShortPixelプラグイン
4️⃣不必要なプラグインを削除します

5️⃣ 多言語サイトを構築する際の推奨方法

おすすめ方法説明おすすめ対象
Polylang簡単な無料プラグイン、直接翻訳が必要個人的なブログ、小規模なサイト
TranslatePressリアルタイム翻訳をサポート、AI翻訳が可能翻訳が簡単な企業向けサイト
WPML強力な機能、WooCommerceをサポート大規模ビジネス、ショッピングモールに最適

最も簡単な方法👉 TranslatePress + Google Translate API🚀 🔹 🔹 🔹 🔹大規模ビジネス、ショッピングモール

最終まとめ

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

🚀これで簡単に多言語サイトを作ることができます!🌍 🚀 🌍 🌍

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サイトが作れます! 🌍