Luxeritas テーマのアップデート

 WordPress のテーマ Luxeritas がアップデートされていました。

 配布サイトのページ を見ると、アップデートの方法が 2 種類あるようです。手動で上書きする方法と、アップデート用のテーマをインストールし、それに切り替えてから WordPress の管理画面からインストールする方法です。

 自動でアップデートしたいと思ったので、今回は手動でやってみます。

Luxeritas の zip ファイルを解凍し、FTP ソフトや SCP などを利用して、
/wp-content/themes/luxeritas
にファイルを上書きしてください。

https://thk.kanzae.net/wp/settings/t2354/

 子テーマはアップデートすべきでないと書いてあるので、アップデートは本体のみ行います。

テーマ本体のダウンロード

 テーマ本体は、cron に登録して自動でダウンロードさせたいので、ダウンロード用の SHELL スクリプトを作りました。ダウンロード先を /home/pi/Wordpress/Luxeritas にしました。予めディレクトリは作ってあります。

Get.sh

#!/bin/bash

cd /home/pi/Wordpress/Luxeritas

wget -O download.html -q "https://thk.kanzae.net/wp/dl/"

line=$(grep 'class="download"' download.html | head -1 | sed -e 's/<\/a>/<\/a>\n/g' | head -1)

target=$(expr "${line}" : '.*a href="\(http[s][^"]*\)".*')
file=$(expr "${line}" : '.*title="\([^"]*\)".*' | sed -e "s/ /-/g" | tr [A-Z] [a-z]).zip

if [ ! -f "${file}" ]; then
    echo "Down load ${file}"
    wget -O "${file}" "${target}"
fi

 この SHELL スクリプトを実行すればダウンロードされます。

ダウンロード対象ファイルが既に有ったらダウンロードはしません。ダウンロード元のページに変更が有った時は修正しないといけませんが、これを cron に登録して定期的に実行すれば最新版を自動でダウンロードします。

テーマのアップデート

 次に、アップデートも間違いがないように SHELL スクリプトにします。

update.sh

#!/bin/bash

file=$1
target_dir=WordPress のディレクトリ/wp-content/themes

if [ ! -f "${file}" ]; then
    echo "$0 zip ファイルのフルパス"
    exit 1
fi

cd "${target_dir}"

sudo unzip "${file}"
sudo chown -R www-data:www-data "${target_dir}/luxeritas"

 次のように実行します。

$ ./update.sh 本体zipのフルパス

 一応、展開後のファイルの所有者を Apache のユーザ www-data に変更しています。上書きでの展開なので、ゴミが残ると思いますが、下手に削除すると動かなくなるのでそのまま残します。

確認

 WordPress の管理画面から Luxeritas のバージョンを確認してみました。

バージョンの確認

 ちゃんとバージョンが上がったようです。Get.sh を、テーマ本体のダウンロード後に、この update.sh を実行するように書き換えれば完全に自動化できます。しかし、ちょっと不安なのでしばらくは、ダウンロードは自動でやり、アップデートは手動ですることにしました。

WordPress

Posted by sirius