WordPressのマルチサイト作成、運営で思ったこと

 

前回、英語のサイトは難しすぎ…。という記事にて、多言語のサイトの作成方法のひとつ、マルチサイトを少しだけ取り上げました。

こちらも参考に。

WordPress で多言語サイトを作成する

 

マルチサイトで作る前は、おそらく

  • 言語別なのでコンテンツの管理は少しは楽だろうなぁ~

ぐらいしか思っていませんでした。

 

実際にWordPressのマルチサイトで構築して、改めて思ったことや気づいた事を書いていきます。

多言語サイト、もしくは複数のサイトを作る必要がある方には参考になるかもしれません。

(こういう方法だと便利だよ~。な情報があれば、是非教えて下さい。)

 

で、改めて思ったことや気づいた事、ですが。

 

同じお問い合わせフォームをサイトの個数分用意する必要がある

これはどういうことかというと、私の場合は、

  • 英語のサイト(以下の説明でSite Aとします)
  • 日本語のサイト(以下の説明でSite Bとします)

という形でマルチサイト化しました。

Site Aにてお問い合わせフォーム(今回はContact Form 7)を用意し、Site Bにも使おうと思い、Site Aで作成したお問い合わせフォームのショートコードをコピってSite Bの記事に貼り付けてみましたが、動かない。

おそらく、Site Aで作成しても、Site Bで使用できない。

またこれは、Site Aで作成したカスタム投稿タイプも、Site Bで使用出来ない事と同じような事です。

(カスタム投稿タイプだけに限定しますが、例えばmy_Themeというテーマ内のfunctions.phpにて、register_post_type()をしている場合は、それぞれのサイトでmy_Themeを有効にしている場合は両方にカスタム投稿タイプが登録されます。
その方法とは別で、プラグインなどによって、登録するカスタム投稿タイプをデータベースに保存して、その保存されているデータをもとに、カスタム投稿タイプを登録させたりする場合は、Site ASite B のデータベースの保存領域が違う為、片方で作成したモノは、片方でしか使えない。という事が起きると考えられます。)

これをなんとかする方法。考えてみましたが、思いつかない。

とりあえず、Site A で作成したお問い合わせフォームやカスタム投稿タイプをSite Bにも同じように用意する。という事がベターじゃないかと思いました。

 

言語別にコンテンツが分かれて管理はし易いですが、同じようなものを同じように用意する…。

ちょっと面倒だなと感じました。(他にいい方法があるかもしれません。むしろあれば教えて欲しいです。。 😥 )

これが10サイト分も作る必要があるとするなら、私は今後マルチサイトは使わない方向で考えるかもしれません。 🙁

 

 

記事は言語別に分けて管理しているが、テーマの各テンプレート用に翻訳ファイルを用意することになる

そりゃそうだ。と思う方もいるかもしれませんね。

私の場合、Site ASite Bでそれぞれ同じスラッグ名が存在する、言語違いの記事を作成しました。

http://siteA/contact/ (英語の記事)

http://siteB/contact/  (日本語の記事)

 

記事自体はサイトごとに違うので、日本語の記事を少し編集したければ Site Bの管理画面から編集するだけ。とシンプルです。

テーマに関しては、1つのテーマだけを作り、Site ASite B の両方ともにそのテーマを適用しています。

(Site A用・Site B用にテーマを作成して適用する方法もあるかもしれませんが、この2つのサイトの違いは言語だけ。言語以外の部分で少し編集や修正をするだけでも2サイト分編集することを考えると、あまり良い方法とは思えません。しかも、その方法で10サイトも存在してたら… 😳 )

なので、翻訳ファイルを用意しテンプレート内でそれぞれの言語で表示されるようにする必要がありました。

言語違いの為、マルチサイトをするのではなく、他の理由でマルチサイトを作る場合は、このことはあまり影響しないかもしれません。

 

Site Aでアップロードした画像を、Site Bで使用できない

これはタイトルのまんまです。

私の場合、Site ASite B の違いは、言語の違い。ただそれだけです。

記事で何かの説明をする際に、画像を使ったり画面のキャプチャ等を記事に貼り付ける場合があります。

Site ASite Bは言語は違いますが、言語が違っても同じ画像を使いたい場合がありました。

Site A でその使いたい画像をアップロードし、記事に貼り付け完了。

同じようにSite Bにも貼り付けようとしましたが。。。

 

WordPressは、マルチサイト内の Site ASite B は別々のサイトという扱いにしているのではないか、と思います。

そう考えると、Site Bでその画像を貼り付けるどころか、画像一覧にも出てこない理由に納得です。

 

かといって、その対処法として、同じ画像をSite Bにもアップローとなると、今後その画像が間違っていた場合など、修正をおこないたい場合が面倒です。

画像は1つですが、2箇所にアップロードされているので、Site A の画像と Site B の画像を修正。。

いやいや、そんなことはしたくありません。管理が簡単で楽にできるようになる為にWordPress使っているんです。私は。 😕

 

なので今回は、テーマディレクトリ内に画像をアップロードして、その画像をそれぞれの記事に貼り付けるよう設定しました。

「メディアライブラリ」からテーマディレクトリ内の画像を選択できるようになったら嬉しいな。 😉

もしくは、マルチサイトが有効の場合だけ、「全てのサイトのメディアライブラリ」みたいな項目があっても嬉しいな。 🙂

 

 

コメントを残す