WordPress メモ, 2014年大改修

ある程度コンスタントにこのブログを更新していたのが2012年頃までなので、ほぼ丸2年、ほとんど更新していなかった事になる。
この間、もう一つのブログと言うか、最終的にはポートフォリオサイトに仕立てたいサイト(以下、「もう一つのサイト」と略)に注力していた…今は更新が止まっているが。

WordPressの良い所でもあり面倒といえば面倒なのが、割と頻繁にアップデート(本体・プラグイン・テーマ)がなされる事で、放置はセキュリティの観点からもマズいなぁと常々思ってはいた。
自動更新もしていないし。
とは言え、もう一つのサイトに注力していたのと、正直、このサイトを存続させるか否かで悩んでいた。
一応は個人事業主である自分の分身である、もう一つのサイトに対して、このブログは煩悩全開なので、正直、あまり見せたくないなぁといった思惑が働いていた。
しかし要は住み分けかと思うので、お互いにリンクしなければ基本的には「表の顔」からは見えない事、および、1998年からひっそりと続けているブログを無かった事にするのも勿体無い気がするので、このまま継続する事にした。

テーマの選定

以前は jQuery Masonry ではあってもレスポンシブではない imbalance 2 を使用していたが、その後のWebの流行が、レスポンシブ・メトロデザインMaterial Design といった具合に変化していると感じる。
この中でも最低限、WP-touchを使わずにレスポンシブは満たすとして、今後もMasonryを使っていくかは微妙だった。1
それでも一応は、という事でフリーのテーマを探した結果が下記。

ThemeForestの様な有料テーマではなくとも、フリーでも結構良さげなのが色々あるなと思いつつ、今回はもぉいいか、という事で除外。
メトロデザイン(6 Free Metro WordPress Themes – Free download • PhuocUB)も考えたが、うーん…という事で今回は見送り。
Bootstrapベースのテーマ、例えば Bootstrap 3 WordPress Theme あたりも考えたがパス。
Masonry2 でないテーマだと何が良いのかは微妙だったが、スタンダードなブログではあるが、ちょっとデザイン的に光る物があれば良いかと探した結果が下記。

当初はCounterpointで構築していたが、今後、アイキャッチを使うのも面倒だと感じたので、Hexaで確定。
元々アイキャッチを使っていたのは imbalance 2 でアイキャッチが無いと寂しいから無理矢理アイキャッチを追加した、という事情もあったので。
Hexa、UI的に不親切かもしれないけど、今の時代、このくらい見た目シンプルな方が良いかなと。
なんだが、上部メニューの開閉の具合によっては、本文のアイコンがずれてしまっている…のだが、特にテーマアップデートを行った訳では無いが現在は収まっている模様。

余談だが、Hexaを親テーマとしたCircaQuadraという子テーマもある模様。
このテのテーマフレームワークというのもチラホラ見かけるが、どういう仕組みかとWordPress Codexにある仕様を調べてみたが、Hexaでそれらしき記述を見付けられず、旧式の style.css@import している模様。

投稿データの移行

概要

いきなりだが、本番サイトからのエクスポート機能を使わなかった。
これは、記事の数が少なかった事、および、記事の見直しをやりたかった…結果的には行っていないが…がある。
方法は、まずローカルのWordPressを設定、本番系から記事をコピペ、ローカル側で投稿してLightbox等のCSS・JavaScriptで必要な修正を行なう。
投稿の完了後、エクポートして、エクスポートしたデータのURLを修正、本番系WordPressにインポートを行なう、という手順になる。3
…ので良いのだろうか…

エクスポート・インポートのメモ(特に画像)

それ程沢山画像を使っていないとはいえ、面倒というか、スマートに移行出来ていないなぁと。
以前有料テーマを使った事があり、そのデモデータの画像データがBase64エンコードされていたので(確かその筈…記憶違い…かも)、自分でもそれが可能なのかと思っていたのだが、そこまでできないみたいな?
…いや、良く分からないのだが。
割と良く聞くのがFTPで画像をアップする方法だが、この場合だとメディアのライブラリに登録されない。
なので、画像をメディアの新規登録でアップロードし直し、までは行ったが、投稿の添付は力尽きてまだ未対応。

プラグインなど

コワーキング界隈に関わっているとWordPressのプロが多くて様々な情報が入ってくるので非常にありがたい…例えばWordCamp関係者とか。
そこで、今更ながら、JetpackAll in One SEO Pack を導入、と言っても極めた使い方はしていないが。

JetpackはSNSの共有設定・無限スクロール・カスタムCSS程度で、現在はまだ使用していないがMarkdownが使えるのは便利だなぁと。
カスタムCSSはちょこっとした修正を行なうのに便利で、しかもシンタックスハイライトや形成もしてくれるので、内部的に何らかのjQueryプラグイン使ってるのだろうなぁと。
なお、無限スクロールは自動で記事を読み込みはなく4 、クリックで記事を読み込む、としての使用。

All in One SEO Pack はとりあえず入れてみた、程度。

その他は下記…って、今の時代、セキュリティ的にマズいか。
テーマそのものがレスポンシブなのでWP-touchは使わず…iPhone4Sで見ると微妙に横スクロールするが。

モノによっては最新のWordPressでテストされていないので不安と言えば不安。5
WP-Footnotes は無いとダメで、これとJetpackの(まだ未使用の)Markdownが共存するかどうか。
Favicon Rotator は、「え?ファビコンなんか」と思うかもしれないけど、何故かHexaにはファビコンの設定が無く、そりゃ直接 header.php を修正すれば良いのだろうけど、今の時代、直接テンプレファイルを書き換えるのも抵抗があって…という事を考慮すればHexaは敢えてファビコンを組み込まずプラグインに任せているのだろうかと。
…だったのだが、WP Total Hacks という偉大なプラグインを忘れていたため、こちらで対応しつつ、他の項目も設定。
なお、リビジョンコントロールを行わない設定にすれば Better Delete Revision は不要になるが、念のため、2回程バックアップを取るようにしておいた。
実際には巻き戻す事無く、Better Delete Revision でいつも通り削除する事になると思うが。6
ちょっと気になるのは、GoogleアナリティクスIDなど、複数のプラグインで設定できてしまう場合、意識しないとワヤクチャになってしまうのか、どういう挙動を示すのか、といった点。
Maintenance Mode・Importer・Theme Check は基本的に使わないので非活性化。
Theme Check は今入れて結果、壊滅的なエラーは出てないが、だからと言って仮にエラーが出て、しかしそのテーマを使いたい場合、どこまで自力で改修できるか(そしてその改修後にテーマのアップデートが行われたり)、自信が無いが。
および、テーマもだけどプラグイン自身のチェックを行うプラグインは無いのかと。

思うに、WordPress本体・玄人御用達おすすめプラグイン、場合によってはテーマを梱包7 …までしなくても良いかもしれないけど、まぁそんなカンジのLinuxのディストリビューションみたいなスターターキットがあればなぁと思う。

テーマの改修

テーマも自動更新される時代に、今更あまり直接触りたくないというのが本音だが…昔だったらCSSをガシガシ書き換えていたけど…
CSSに関しては、前述の通りJetpackのカスタムCSSで対応。
とは言え、PHPテンプレートを何箇所かを微妙に書き換えているが、テーマのアップデートが行われないので運用対応は行っていない。

ところで修正したMore(続きを読む)と抜粋について。
海外産のテーマは the_excerpt() の扱いに注意した方が…もしくは、独自の関数を作って the_excerpt() を使っていないテーマもあるかも…
例えば、日本語だと先頭から例えば30文字を抜粋に使うと考えるけど、英文の場合先頭から30ワードを抜粋に使っていた。
具体的には区切り文字を半角スペースとして split()explode() の結果の配列で30件出力、みたいにコーディングされているのを見ると…今もそういうテーマがあるのか不明だが、有料テーマで存在した…日本語だと不都合が生じるので(最悪全文が表示される)。
Hexaはその辺しっかりと the_content() を使っていたが(しかもI18N対応)、そうなると投稿ポリシーの問題で、moreタグ(続きを読む)までを抜粋とするか、投稿フォームの抜粋を使うか、になる。
自分の場合、本文とは違う抜粋内容が多いため後者をメインで使っている。
なお、WordPressでmoreタグと抜粋の仕様は、例えば、
WordPress:記事抜粋を表示するthe_excerptの使い方とカスタマイズのまとめ | PressStocker 参照。


取り敢えずはこんなカンジで、昨年2014年夏に改修してボチボチ使っている状態だが落ち着いてきたのでまとめてみた。
ゴチャゴチャと残作業があるが、今思い付くのは、nextpageタグの位置がデフォルトのままだと、RELATED POSTS の下に来て気持ち悪いのでどこかで何とかしたいなぁと思って対応。
一方でJetpackの(SNS)共有設定のCSSが妙な箇所に埋め込んでいるので同プラグインのカスタムCSSで設定できなかったり、nextpageのページ移動リンクや共有設定が the_content() の中で行っているので8 、これらプラグインの吐き出す順番を変えるのが面倒そうだった、など。

2015/03/06

Menu of this post

  1. 1. WordPress メモ, 2014年大改修
  2. 2. 改ページの扱いについて(自分向け覚え書き)
  3. 3. これは絶対反則だと思うけど(もしくは推奨されないかも)、レンタルサーバのWordPressをローカルにどかっと「インポート」して気を付けた点(自分向け覚え書き)

Footnotes

  1. 1. デザイン的な宿命で横長画像が圧倒的不利なので…

  2. 2. どうでも良いけど、未だにMasonryという綴りが覚えられない。

  3. 3. この時、何度もインポートをしてメニューに同じ項目が登録されたり…

  4. 4. 便利かもしれないけどフッタを見たい場合に見えないので不便というか余計なお世話というか。

  5. 5. 何でも $_POST['hoge'] を直接MySQLの検索条件にしているプラグインがあるとかないとか、画像に見せかけて変なスクリプトを仕組んでのテーマもあるとかないとかで、何かWordPress業界もタイヘンだなぁと。

  6. 6. Better Delete Revision はphpMyAdminでもできるけどデータベース最適化を行なう点とか。

  7. 7. テーマによっては特定のプラグインを前提とするものもあるかもしれない。

  8. 8. デフォルトだと RELATED POSTS、つまり wp_related_posts()the_content() の中に入っている。