WordPress
WordPress自作テーマのフォルダ名を付ける時の注意点!意外と知られてない落とし穴!
2013.03.13
過去にWordPressで多くのオリジナルテーマを制作してきたのですが
先日、意外な落とし穴にハマってしまったので記事にしてみました。
ひっさびさに技術的なお話ですw
WordPressオリジナルテーマを制作する時に、テーマのフォルダ名ってどうやって付けていますか??
好きな名前?ドメイン名?作者名??
おそらく、多くの人が「適当」って答えると思います。
(実際にアンケートしてみたら、100%の人が“特に何も考えていない”と答えましたm(__)m)
私もそうでした。
このテーマのフォルダ名が何かに影響するものだと考えていませんでした。
が、、、 ここに大きな落とし穴がありました。
テーマフォルダ名とは
WordPressテーマは、wp-content/themes/ の中のサブディレクトリに存在します。
オリジナルテーマを作った時、このディレクトリにフォルダを作ってその中に
- css
- テンプレートファイル
- functions.php
が存在しテーマが作られます。
例:miniという名前のオリジナルテーマを作った場合 wp-content/themes/mini
この「mini」に当たる部分がテーマのフォルダ名。
これ、適当に付けちゃっていませんか??
適当に付けたフォルダ名によって起こっちゃった!!
ある日制作したテーマを管理画面より見てみると、自作テーマにこんな表示がされていました><
なぬ!!!!????
新バージョンのminiが利用できます。バージョン1.1.5の詳細を表示するか、アップデートしてください。
自作テーマなのに何故バージョンアップ通知が???
このサイトは「mini」というサイト名だった為、私はテーマフォルダ名をminiと好きに付けていたのですが
なんと、このテーマ名が公式テーマにヒットしたようでバージョンアップ通知が表示されたようです。
WordPressにはWordPressのテーマをフリーでダウンロードできます。WordPressの管理画面から種類やテーマで検索してダウンロードできます。
そしてその公式テーマは膨大にあります。
テーマのバージョンチェックは、公式ディレクトリのURL(例: テーマのスラッグ)とテーマ名に依存しているそうです。
その公式テーマのひとつに、私が制作したオリジナルテーマがヒットしてしまい、バージョンアップ通知が表示されたようなんです。
もちろんこのアップデートボタンを押してしまえば、公式テーマに置き変わってしまい、制作していたオリジナルテーマは綺麗さっぱり消えてしまいます。
作った本人であれば、バージョンアップしてはいけないと分かると思いますが
制作者以外の人が見たら思わず押してしまいますよね、、、(*_*;
本当に恐ろしいです><
オリジナルテーマ名の付け方
じゃ、実際にテーマのフォルダ名を付ける時にどこに気をつければ良いのか。
WordPressのフォーラムで聞いてみました〜
- style.cssに記述するバージョンをあり得ないくらい高くしておく!
- 絶対被らない名前を付ける(例えば自分の名前とサイトドメイン名を組み合わせるとか…)
- 有効化されているテーマのみ、バージョンアップ通知を表示させない
以上、3つが対策として良いのではないかと言われました。1はちょっと違和感あるのですが…m(__)m
2と3をしておけば安心ですよね!
有効化されているテーマだけバージョンアップ通知を非表示に
現在有効化しているテーマのみの更新をさせないためには、下にある部分を functions.php にコピペします。
function cws_hidden_theme_12345( $r, $url ) { if ( 0 !== strpos( $url, 'http://api.wordpress.org/themes/update-check' ) ) return $r; // Not a theme update request. Bail immediately. $themes = unserialize( $r['body']['themes'] ); unset( $themes[ get_option( 'template' ) ] ); unset( $themes[ get_option( 'stylesheet' ) ] ); $r['body']['themes'] = serialize( $themes ); return $r; } add_filter( 'http_request_args', 'cws_hidden_theme_12345', 5, 2 );
cws_hidden_theme_12345(2箇所)は、自分の関数名に合うように変更してください!
これで一安心。
滅多に起こらない事だとは思うのですが、今後のオリジナルテーマを作る時に頭の隅に置いておくと安心だと思います!!
ではでは素敵なWordPressライフを〜♪