WordPress で独自ドメイン・Ｅメールアドレスを使う（GoogleDomains+Xserver）

※2019年4月更新：独自ドメインのＥメールアドレスも使いたいし、サブドメインも使いたい、そういう欲張りさんでも、難なく設定できるように構成と内容を一部修正しました。

# WordPress で独自ドメインとＥメールアドレスを使う・・・そのためにGoogleDomains＋Xserver を使う
　WEBで情報を発信したりサービスを提供したりするなら、最初からブランディングのために独自ドメインを取得しておきたいはずです。更にサブドメインも使ってテスト環境も作っていきます。

　ついでに。Xserver はひとつのサーバー契約で複数ドメイン・サブドメインでポコポコいくつも親子関係のある WordPress をリリースできるし、その操作も簡単なので楽しいです。

- Google Domains のＥメール転送設定も画面わかりやすくて楽
- サブドメインの WordPress も使うなら Xserver にＵＲＬをさばいてもらう「カスタムネームサーバー」の設定をすべきだけど、そうすると一旦 Google Domains に設定する「Ｅメール転送」が機能しなくなる
- それもちゃんと DNSレコード編集で解決

　楽しいのです。やっていきます。
　

## 実現すること
1. WordPress の URL を「yourdomain.com」とかにする
2. WordPress が配信するメールの送信者を「support@yourdomain.com」とかにする
3. 「（何かの文字）@yourdomain.com」宛のメールは自分のメールに転送する

ついでに。
好きなツリー構造にできます。

例１：
親 yourdomain.com
　子　test.yourdomain.com
　子　tokyo.yourdomain.com
　子　osaka.yourdomain.com

例２：
親１　yourdomain.com
　子　test.yourdomain.com
親２　mydomain.com
　子　test.mydomain.com

もちろんツリーにしない人も同じ。

## やること：概要
### 1. 独自ドメインを用意／Google Domains
- 基本的に１ドメイン 1,400円/年（.com とか）
- 必要な数をポコポコ取得、すごく楽、わかりやすい
- 管理画面がシンプルでわかりやすい、DMも来ない、好き
- しがらみがないので、「サーバーと抱き合わせで１年無料にしてもらったけど、サーバー引っ越したいなあ、ドメインどうする？」みたいな「ドメインどうする問題」に後日苦しまない予感が満点
- ワールドワイド感がある！

### 2. WordPress を用意／Xserver
- １年間利用なら、初期3,000円＋1,000円/月×12ヶ月＝15,000円
- これひとつで複数ドメイン・複数WordPress管理可
- 日本国内向けの WordPress を置くだけなら Xserver にしておけば「サーバーどうする問題」に後日苦しまない予感が満点
- WordPress を使った「本当にやりたいこと」に集中できる！

### 3. DNS設定（超簡単バージョンでお届け）
- 独自ドメインのＵＲＬで Xserver の WordPress 表示
- 独自ドメインのメールアドレス宛Ｅメールの転送先設定／Gmail

### 4. WordPress の自動メール配信・送信元アドレスを設定／SMTP、Gmail
- WordPress がＥメールを送信する仕組みを入れる
- サーバーによってはトラブるので安心な方法でお届け

　いつもの Google アカウントで全部やりたい感じです。


※注意点１：
　ひとつの WordPress だけじゃなく、独自ドメインとその子供にあたるサブドメインとの組み合わせでいくらでもツリー構造に WordPress をポコポコ作成することが出来るので、本番用とテスト用、本社用と支店用、趣味ブログ１と趣味ブログ２、あれこれポコポコ楽しめます。
※注意点２：
　既に Xserver で WordPress を簡単インストール済みの場合、独自ドメインに切り替えるには引越しが必要、ということになっています。DNSの鬼になれば乗り越えられる気もしますが、「ＦＴＰで全部ダウンロードして新しい箱に全部アップロードしてね」と言われています。人によっては再構築したほうが早いかもしれません。そういう場合はモチロンそれでもＯＫ。
※参考：
　https://www.xserver.ne.jp/support/faq/faq_service_hp_wp.php#08

　よーしって気分になったところで、どんどんいきます。

# 1. 独自ドメインを用意／Google Domains
- Google Domains でドメインを買う
- Googleアカウントを持ってる前提
- 個人的なアカウントしか無い場合は別人格で取得しておくと良いかも
- 支払い方法は Googleアカウント の設定で確認できる（Google Domeins内からも行ける）
- <a href="https://pay.google.com/payments/u/0/home#paymentMethods" target="_blanc">Google お支払いセンター</a>
- Google Domains に Google アカウントでログイン
- ドメインを考える
    - 参考：<a href="https://support.google.com/domains/answer/6388481?hl=ja" target="_blanc">効果的なドメイン名を選択する - Google Domains ヘルプ</a>
    - 考えすぎるのは健康に良くない
    - ブランド名、サービス名を考えてそれにすれば良い
    - アドレスを目で見た人がブランドを認知できると良い
    - 日本語は使わずアルファベットで
    - 渋々使って最悪ハイフンだけ
    - ２つの単語を組み合わせた短い言葉、すぐにサービス内容がイメージできる言葉、他と被らない・発音しやすい言葉、っていうのがヒットの秘訣らしい
    - その文字列と、間違えそうな似た文字列で入念に検索をして競合を確認
    - 綴り間違いに注意
    - 「.jp」に憧れる場合は「.jp」の独自ルールを理解してから決断
- ドメインを取得
    - Google Domains にログイン
    - 左上の「新しいドメインを取得」をクリックしてドメイン検索
    - または　<a href="https://domains.google.com/m/registrar/search" target="_blanc">＞＞ここから</a>
    - マジで綴り間違いには注意してね…！
    - カゴマークで購入に進めば購入完了
    - 改めて「マイドメイン」で取得したドメインを確認
    - リサイクルマークみたいな矢印が出ていれば、自動更新が設定されている

※注意点：
　普通に進めば大丈夫なはずとはいえ、心配な場合はWhoisが非公開になっていることをこの段階でも確認しておくと良いかも。.jpじゃないなら。

# 2. WordPress を用意／Xserver
## 2-1. 申し込み
とっとと契約します。

- サーバーＩＤはカッコつけたブランド名や単純な英単語にせず、誰かに偶然タイプされてしまわないような、記号的な英数字の配列が望ましい
- とはいえ完全に意味不明なのもツライので自分はポケベル打ち数字を英語アルファベットの隙間に入れて作ってみた
- ポチポチ申込進行
- 「インフォパネル」にログインした状態で「契約情報」で状態を確認
- 「詳細」で内容確認
- 「サーバー管理」でサーバー管理メニュー「サーバーパネル」へ

## 2-2. ドメイン設定
WordPress を入れる箱を用意していきます。

- 「サーバーパネル」を開くまで
    - 「インフォパネル」と「サーバーパネル」は違うので注意
    - Ｅメールアドレスでログインするのは「インフォパネル」
    - 「インフォパネル」からは上記手順で「サーバーパネル」に入る
    - 「サーバーパネル」へのログインではＩＤ・パスワードが違う！
- 「サーバーパネル」を開いたら
- 画面右上の「ドメイン設定」を開く
- 初期ドメイン（＝サーバーＩＤ）確認
- 取得したドメインを設定
    - タブ「ドメイン設定追加」をクリック ＞ ドメイン名入力
    - 例：yourdomain.com、ここではwww.は不要
- サブドメインを設定
    - 「サーバーパネル」右上の「サブドメイン設定」をクリック
    - ドメインを確認
    - 「選択する」＞「サブドメイン設定追加」
    - 例：yourdomain.com にサブドメインを追加する
        - test.yourdomain.com
        - この「test」部分も、テスト環境なら本当は偶然タイプされない文字列が良い
- ドメイン、サブドメインを必要な構造で設定し終えたら、箱は完成

## 2-3. WordPressをインストール
各ドメイン・サブドメインの箱にWordPressインストールしていきます。

- 「サーバーパネル」左下の「WordPress簡単インストール」
- ドメイン、サブドメインを選択し、全部にインストールしていく
    - 参考：Xserver　<a href="https://www.xserver.ne.jp/manual/man_install_auto_word.php" target="_blanc">簡単インストール WordPress 日本語版</a>
    - キャッシュ自動削除はデフォルトのＯＮでＯＫ
    - データベースはデフォルトの自動作成でＯＫ
    - インストール先の「index.html」は消えてＯＫ
    - 最後に表示される情報をコピーして控える
- 上記を繰り返し、必要なドメイン・サブドメインに WordPress インストールし終えたら、WordPress のインストールは完了

　Xserver の画面を開いたまま、３へＧＯ！

# 3. DNS設定（超簡単バージョンでお届け）
WEBを表示させたいだけならこちら。
一番簡単なルートです。

## 3-1. Xserver のＩＰアドレス確認
- 「サーバーパネル」画面左上の「サーバー情報」をクリック
- ネームサーバーの情報を確認　または　<a href="https://www.xserver.ne.jp/manual/man_domain_namesever_setting.php" target="_blanc">＞＞ここから</a>
- そのままブラウザを開いておけばＯＫ

## 3-2. Google Domains のネームサーバー設定
- ここで世間の多くの説明どおり「カスタムネームサーバーを設定」
- するとまず Google Domains 上の画面に「ばか、元に戻せ」みたいな文章がギラギラ表示されて落ち着かないけど耐える
- ついでにここで一旦Ｅメール転送の機能が失われるけど落ち着く
- Xserver のネームサーバーの設定を入力
    - １行ずつ入力
    - 「＋」をクリックして行を追加
    - 最後に追加して終了

#### ※補足　上記「超簡単バージョン」のメリット・デメリット：
　メリットは、設定がこれだけで終わって楽なところ。メインのドメインの下にサブドメインがあっても、Xserver のネームサーバーを使っているので、勝手にどのサブドメインのＵＲＬも正しく表示してくれます。
　デメリットは、Google Domains 側のＥメール転送の設定とか、G suite を使いたい時、更に作業が発生してしまうところ。

　この設定をすると、「Google Domains に ”カスタムネームサーバーを使う” という設定をして、アクセスをさばく仕事は Xserver のネームサーバーに丸投げしている状態」なので、この作業を終えた時点では Google Domains のＥメール関連のサービスは一度機能しなくなります。
　これは Xserver が、Ｅメールアドレスへのアクセスについては何をどうすれば良いのか知らないのが原因です。

#### ※補足１　Ｅメール系の解決策１（よく紹介されるやつ／でも Google Domains ユーザーには実はおすすめじゃないやつ）
　Xserver 側でDNS設定をして、Ｅメールの仕事が来たら Google にパスしてくれるように設定します。これを開いて、「MX」の設定（DNSレコードを５行追加）すればＯＫです。
　
　参考：Xserver　「G Suite(旧Google Apps)をお使いいただく場合」
　https://www.xserver.ne.jp/manual/man_domain_dns_setting_google_apps.php

　Xserver 側にネームサーバーの仕事を丸投げした後、更に Xserver 側の DNSレコードに MX を登録してＥメールに関する仕事だけ Google 側にさらに投げ戻すように設定するわけです。Ｅメールに関する仕事は Google 側に投げ返されるので、Ｅメールの転送機能などが復活します。

　ただこの方法だと、せっかく Google Domains を使っているのに、一度 Xserver に丸投げしてＥメールの仕事だけ Google に投げ返して、なんかスマートじゃない感じがします。そこまでやるなら最初から下記の方法でいけばよし。

#### ※補足２　Ｅメール系の解決策２（Google Domains ユーザーにはこっちがおすすめ！）
　最初から「Google Domains のネームサーバーを使う」を選択します。
　すっきり。

　メリットは、Google Domains の中にあるのＥメール転送の設定や、G suite をそのまま使う設定になるところ。サーバーを変えてもこれは変わらないので安心です。
　デメリットは、少し設定が発生するので、Ｅメール関連のサービスを一切利用しないなら不要というところ。独自ドメインによるＥメール関連のサービスを一切利用しない人は最初の「DNS設定（超簡単バージョン）」、つまりカスタムネームサーバーを使う設定にして、Xserverのネームサーバーを使えば良いと思います。

#### ※補足２の「Google Domains のネームサーバーを使う」にしたい人

- Google Domains 管理画面の DNS に入る
- 「ネームサーバー」は「Google Domains のネームサーバーを使用する」を選択
- 画面を一番下までスクロールして「カスタム リソース レコード」へ
- １行目（yourdomain.comの設定）
    - 「＠」には何も入力しない（素のドメインについて設定したいため）
    - 「タイプ」は「A（アドレス）」
    - 「TTL」の「1H」には何も入力しない（デフォルトで1hになるのでそれで良い）
    - 「IPv4アドレス」には Xserver の「サーバーパネル」画面左上の「サーバー情報」をクリックして確認した自分の IPアドレス を xxx.xxx.xxx.xxx という数字で入力
    - 「追加」をクリック
- ２行目（www.yourdomain.comの設定）
    - 「＠」には「www」を入力（www.yourdomain.comについて設定したいため）
    - 「タイプ」は「A（アドレス）」
    - 「TTL」の「1H」には何も入力しない（デフォルトで1hになるのでそれで良い）
    - 「IPv4アドレス」には１行目と同じ自分の IPアドレス を xxx.xxx.xxx.xxx という数字で入力
    - 「追加」をクリック
- ３行目（サブドメインの設定／Xserver のネームサーバーを使ってみる）
    - 「＠」にはサブドメインを入力（tokyo.yourdomain.com なら tokyo）
    - 「タイプ」は「NS（ネームサーバー）」
    - 「TTL」の「1H」には何も入力しない（デフォルトで1hになるのでそれで良い）
    - 右側の「＋」を使って行を増やしながら、Xserver のネームサーバーを入力
    - <a href="https://www.xserver.ne.jp/manual/man_domain_namesever_setting.php" target="_blanc">＞＞例のこれ</a>
    - 最後に「.」が必要だが自動的に付加されるので「ns＊.xserver.jp」でＯＫ
    - 「追加」をクリック

　これで、素のままのドメインも、Xserver 側で気ままにポコポコ気軽に生み出したサブドメインも、全部表示されるようになり、Ｅメール系のサービスも Google Domains 側の操作をすればスッキリ使えるようになります。

# 3-3. 独自ドメインＥメールの転送先を設定
　独自ドメインを使ったＥメールアドレス宛のメールをどのメールアドレスに転送するかという設定をします。ここではいつもの Gmail に転送します。

- Google Domains で設定したいドメインの「管理」に入る
- 左メニューの「メールアドレス」をクリック
- 一番下の「メール転送」までスクロール
- サブドメインと転送先を設定
    - どんな文字列が来ても全部ひとつのＥメールに転送するなら「メール転送」の「＠」の左側に「*」を入力
    - 転送先Ｅメールアドレスをひとつ入力
    - 「追加」
    - これで　support @abc.com　も　pr @abc.com　も何でも届く
- 細かく設定したい場合は、転送元・転送先を真面目に入力して、追加していく
- 設定した「転送元」アドレスを宛先にしてテストＥメールを送信
- 「転送先」アドレスにＥメールが届くか確認

※注意点：
　転送先に設定したGmailアドレスが「Google Domains のログインに使っているアドレス」か、「Google Domains で他のメールアドレスの転送先に既に使っているアドレス」なら、これで完了です。それ以外のアドレスを設定した場合は、届いたＥメールを見てメール転送を有効にする作業をして完了となります。

※注意点：
　テストメールは可能な限り、転送先に指定しているものとは別のＥメールから送信したほうが良いです。自分から自分に送信すると、受信トレイじゃなくて送信トレイに入っていてびっくりするので要注意。
　普段のアドレスからＥメールを発信 → 独自アドレスに到着 → かと思いきや転送されて普段のアドレスに到着、つまり自分から自分に送った様子になります。

# 4. WordPress のメール配信・送信元アドレス設定／SMTP、Gmail
　WordPress のシステムからＥメールを配信するような時、独自ドメインのＥメールアドレスが送信者になるようにします。会員登録すると自動的にＥメールが送信されるような WordPress を作る場合など。

## 4-1. Gmail の仕組みを使わせるように設定
- 自分のGmailアドレスで「２段階認証プロセス」を有効にする
- Googleドメインに対する「[アプリパスワード](https://support.google.com/accounts/answer/185833?authuser=1#generate)」を作成
    - アプリパスワードメニューに入り、２段階認証を使ってログイン
    - アプリを選択　＞　その他（名前を入力）　＞　ドメインを手入力
    - パスワードをテキストとかにコピーしておく

## 4-2. WordPress からＥメールを送信する設定／WP Mail SMTP
- WordPress 単体はＥメールサーバーではないので、Xserver に乗せた WordPress の純粋なメール送信機能はサーバーの機能に依存します。人によっては上手く動かなかったりするみたいです。
- 色々な環境があると思うので、無難にＥメールのSMTP送信ができる設定をします。メールソフトを使う時の設定と気分は一緒です。

※注意点：
　送信元にも「いつものＧメールアドレス」の機能を使って大丈夫ですが、例によって「自分から自分に送信している感じ」になるので、意識をしっかり持って気を確かにお願いします。
　耐えられない人は「独自ドメインのＥメールアドレスを発信するためには、いつものＧメールを利用」、「独自ドメイン宛のＥメールアドレスの転送先には、別のメールを利用」という設定にしておけば大丈夫です。もちろん逆でも良いですが。

いろいろ WordPress の初期設定もあると思うけどひとまず。

- WordPress のダッシュボードに入る
- プラグイン「WP Mail SMTP（a wpforms company）」をインストール
- 有効化
- 設定　＞　一般　＞　一応独自ドメインのＥメールアドレスを設定しておくか
- 届いたＥメールから承認作業が必要なのでやっておく
- 設定　＞　WP Mail SMTP　に入る　プラグインから入ってもＯＫ
- 「送信元アドレス」に独自ドメインのＥメールアドレスを入力
- 「Force From Email」にチェックして、他のプラグインとかで何を設定しても全部無視して常にこのアドレス設定が全メール配信に適用されるようにする
- 「送信者名」にサービス名とか好きな名前を入力
- 「Force From Name」にチェックして、他のプラグインとかで何を設定しても全部無視して常にこの送信者名が全メール配信に適用されるようにする
- 「メーラー」は今回は「Other SMTP」／人によるけどこれでＯＫ
- 「送信元アドレスを返信先 (return-path) として設定」にチェックをつけて、返信されても安全なようにしておく

　更に、発信元にGmailを使う場合の設定を入力していきます。Gmailじゃない人はそのＥメールアドレスのサービス元のサポートページを見れば設定すべき項目が出ていて設定できるはず。というわけでここは「Other SMTP」でＧＯ。

Gmailの場合

- SMTPホスト：　smtp.gmail.com
- 暗号化：　 SSL（TLS推奨だが選ぶと送信できない）
- SMTPポート：　465
- 認証：　ON
- SMTP username：自分のGmailアドレス（操作させるアカウント）
- SMTP Password：さっき作ったアプリパスワード

　これで WordPress 内の鳥さんが、いつもの Gmail の仕組みを乗っ取ってＥメールを送信する仕事が出来るようになりました。めでたし。

##4-3. テストメール送信／WP Mail SMTP

- WordPressからテストメールを送信
- 「WP Mail SMTP」の画面の上のほうに「Email Test」がある
- 送信先に、元とは違うアドレスを入れて送信
- 設定がマズいと「Could not connect to the SMTP host.」とか英語で叱られる

　つまらないこと書くけど、実はなんとなく、このテストメール送信はうまくいくけど、実際のシステムによるメール配信はうまくいかない、ということがあり得る気がしてます（体験者語る）。でもやっぱテストメールが届くと安心します。

※注意点１：
　くどいけど、このケースでは送信元も「いつもの Gmail」、送信先も「いつもの Gmail」なので、同じアドレスだと「送信トレイ」に入っていて、「受信トレイ」じゃないという面倒が生じます。意味がわからなくなるのが嫌な人は転送先には別のアドレスを使ってください。

- システムによる送信元：いつもの Gmail Ａ（送信トレイを使う）
- 独自ドメインアドレスの転送先：別のアドレスＢ（受信用）

※注意点２：
テストメールは受信ボックスに入ったのに、その後実際に WordPress で使い始めたら、システムからの発信メールは迷惑メールフォルダに入ってしまった、ということがあったので、何事も油断は禁物です。

#7. できた！
　あとはサービスリリースに向けてがんばるだけっぽい！

　自分は常に総当たり方式で道を発見してるので、深い知見がある方がいらしたら何かあったら叱ってもらいたいです。

　Google Domains＋Gmail＋Xserver は鉄板の組み合わせのはずで、日本向けのWordPress なら絶対に Xserver 上にポコポコ生み出すのが一番楽だと思うのですが、海外向けのサービスを作る予定があるので次は Google Domains & GCP & Gmail という Google の子供たちセットアップも良さそう。