[wordpress] cronで自動バックアップを行う

wordpress 自体や plugin をバージョンアップするのに、いちいちバックアップとりながら作業するのが面倒。

バックアップ取ってくれる、plugin もあるけど痒い所は有料で、いまいちなのでシェル+cron で作った。

環境ファイル

backup.env を作成。ここに、必要な設定をいれておく。各々の環境で適宜変更すること。

実行ファイル

backup.env と同じ階層に backup.sh を作成。
処理としては、web系のファイルのバックアップと、DBのバックアップを作成して、保存日数を超えたファイルは削除する。
実行権限を付けるのを忘れずに。

cron の設定

お好みの時間で設定する。




[WordPress] 多言語化対応プラグイン Polylang

機能

WordPress のページを多言語化対応します。
以下の機能がある。

  1. 各ページにそれぞれの言語に紐づくページが管理できる。
  2. タグ・カテゴリもそれぞれの言語に対応したものが作成・管理できる。
  3. タイトル・日付もそれぞれの言語にしたものが設定できる。

インストール

プラグイン -> 新規追加 で、 polylang と検索してインストール。

Polylang – Simple Google Connect compatibility も出てくるが、こちらは不要。 polylang のみインストールすればよい。

言語の追加

language_polylang

設定 -> Languages で移動して、 Choose a language で言語を選択します。
Add new anguage ボタンを押して追加。
追加すると、右側にある一覧に追加されます。
Choose a language の選択以外の入力項目は特になにも入れなくても大丈夫のようです。
Englishを追加しましたが、デフォルトの値で問題なさそうでしたのでそのままです。

固定文字や日時のフォーマットの変更

string_translation_polylang
設定 -> Languages の、 Strings translation タブで固定文字や日時のフォーマットを変更します。それぞれの言語に対応した形にしましょう。

設定

setting_polylang
設定 -> Languages の、 Settings タブ で動作に関する設定が出来ます。

赤字の、 There are posts, pages, categories or tags without language set. Do you want to set them all to default language? をチェックします。(デフォルトだとチェック済み)
このとき、Default language に 日本語が選択されている事を確認して下さい。
これは、今現在あるページやカテゴリ、タグは日本語(Default languageで選択した言語)に属するものとして処理されます。
すでに外国語版のページを用意してあるという場合にはこの設定をしないで、各投稿、カテゴリ、タグ別に手動で変更することも出来ます。

次に、Hide URL language information for default languageチェックをします。(上記の図ではデフォルトなので外れてます)
これがオフの場合は、デフォルトのページが日本語の場合は http;//xxxxxxx/ja のようにメインに日本語のページの最後に ja がつきます。
これを使うとページが接続できなくなったりしたので、(リダイレクトがうまく行ってない模様)外しました。リダイレクトがうまく動作してないと、ページのリンク切れはSEOで新規ページだと思われてしまうので注意。

上記以外は、特に設定を変更しなくてもいいと思います。

カテゴリ多言語化

category_translate_polylang
カテゴリを選択すると、右側のリストに国旗のマークが増えていると思います。
画像の例では、英語版を増やしたのですがデフォルトが日本語で英語の国旗の所が+マークになっていると思います。

この+マークの部分が対応するカテゴリが無い場合です。+マークを押して対応する外国語のカテゴリを作っていきます。
カテゴリのスラッグですが、スラッグをURLに使う場合英語版と日本語版で同じだと自動的に -2 がつきます。
-2 が嫌な場合は、明示的に xxx_en とかつけるといいかもしれません。

投稿、タグの多言語化

カテゴリと同様です。 +マーク から対応する言語の投稿・タグを作って下さい。