WordPress.orgに登録してあるテーマの更新をサボってしまったときの対応メモ

公式ディレクトリのページで This theme hasn’t been updated in over 2 years. なる警告が表示されてしまった。よもやよもやだ。

2年間更新のないテーマやプラグインは、セキュリティや互換性の問題から非推奨となり、検索しても出てこなくなる。
更新を怠っていたのは、フォトグラファー向けのテーマBirdSITEだ。

黄色い部分が非推奨メッセージだ。

ブロックエディタに対応する

バージョンを上げるにあたって、まずブロックエディタに対応した。プライベートでも使いつつ困ったことはなかったものの、2年も空いてはブロックエディタにも対応していないとバレバレだ。テーマ作者として不甲斐なし。

当ブログを見ながらブロックエディタに対応し、なんとかWordPress 5.4.2対応までは持っていった。が、途中で5.5のリリースがあった〜というのもWordPressあるあるだ。このくらいでへこたれはせぬ。

CSSを見直す

次に、floatでやっていたグリッドレイアウトをFlexboxに変更した。

BirdSITEのテーマがリリースされてから10年。WordPressの大きな変化がブロックエディタとすれば、CSSの変化も大きい。 10年前にはCSSでできなかった表現が、いまではサクッとできるというもの。
海外の紹介サイトでしばしば「古臭いのに人気がある」といわれるBirdSITEのテーマは、グリッドデザインが出始め当時はまあまあおしゃれだったのだ。

Flexboxを使うとRTL(右から左へ記述する言語)の対応もスマートだ。ついでに、端末の変化により幅が狭くて左寄せになってしまったデザインを、余白多めのフルスクリーンに近づけた。

アップロード直後のエラーと警告

夏の週末を少しづつ使ってアップデートしたテーマを、あとは公式ディレクトリにアップロードするだけとなった。ここまでくればチョロい。初回のようなテーマレビューはない(はず)ので、アップロード後すぐにLIVEになるはずだ。

ところが、まさかのアップロードエラーがずらずらと表示された。

(1) テーマが稼働するWordPressのバージョン

*REQUIRED:  to: is missing from your style.css header. Also, this should be numbers only, so 5.0 and not WP 5.0

稼働するWordPressのバージョン(下限)に加えて、どのバージョンまで動作確認したかも書く。プラグインには以前からある項目だ
style.css に以下を追加

(2) テーマが稼働するPHPのバージョン

REQUIRED: Requires PHP: is missing from your style.css header.

これも、プラグインには以前からある項目だ
style.css に以下を追加

(3) 画像のライセンス

REQUIRED: Found a reference to unsplash. Images from this website does not use a license that is compatible with GPL. View license (opens in a new window).

GPLじゃないっていわれてる?
readme.txt に以下を追加

(4) URLエスケープ

REQUIRED: Found echo home_url in searchform.php. home_url() must be escaped. Use esc_url() for link attributes. A manual review is needed.
Line 10: <form role=’search’ method=’get’ id=’searchform’ action='<?php echo home_url( ‘/’ ); ?>’>

検索フォームの中のhome_url()をURLエスケープせよ
いわれてみればそうだ

(5) wp_body_open();がない

REQUIRED: Could not find wp_body_open action or function call at the very top of the body just after the opening body tag. See: wp_body_open
https://developer.wordpress.org/reference/functions/wp_body_open/
<?php wp_body_open(); ?>

wp_body_open()など聞いたことがない。
謎だけど、header.phpでbodyタグを開始した直後に入れておけばよいみたいだ。ただし5.2からの新機能のため、その関数があるかどうか?のチェックも必要だ。 対応したものの何が変わったかはわからない。

(6) カスタムバックグラウンド

RECOMMENDED: No reference to add_theme_support( “custom-background”, $args ) was found in the theme. If the theme uses background images or solid colors for the background, then it is recommended that the theme implement this functionality.

対応したほうがいいといわれている
面倒だけどやっとくか、背景色なんてカスタマイズしたいユーザーはいるのかな?

(7) テキストドメイン

INFO: Only one text-domain is being used in this theme. Make sure it matches the theme’s slug correctly so that the theme will be compatible with WordPress.org language packs. The domain found is birdsite

翻訳用の識別子のことを言ってるんだけど、INFOは無視でOK

理解できないところもありつつ、10分ぐらいで対応して再度アップロード。ひとまず受理された。

あとは LIVEになるのを待つばかり

…ではなかった

続報を待たれよ

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください