TOPLOGO

WordPressではなく自作ブログシステムでブログを書く理由

2017-12-13 16:21:04

ブログ論

no_image
要約:なぜ、ブログシステムを1から自作したのかについて

はじめに

私は過去にWordPressを使ってブログを書いていた経験がたくさんある。 別にWordPressが最悪だったというわけではない。 理由はいくつかある。

WordPressを使わない理由

まず、「システムの全てを知っておきたい」というのがあった。 私は、webエンジニアとして仕事をしてきて長くなる。 自分が使っているシステムを熟知しておいたほうが良いだろうという思いは強い。 細かいところ、1ピクセル単位で自分で全てを弄ることができるブログというのに興味があった。 それが理由の1つだ。 WordPressを1から全部プログラムを読めばよかったかもしれないが、1から作ることのメリットもあるだろう。 また、WordPressはアップデートが多すぎる。 万人受けのシステムなので「不要なシステム」が多く組み込まれている。 その結果、重たくなるそれも嫌なのだ。

SEOに強いテンプレートを自作して勝負がしたいと思った

WordPressは検索に強いと言われているし、実際に強い。 ただ私としては自分で作ったもそれ以上強くできるような気がしていた。 もちろん、文章の長さや、内容に力を入れなければ上位に食い込めないだろう。 ただWordPressじゃなければブログはダメだみたいな空気が業界にある。 そういうのに巻き込まれたくない。

オリジナルブログ設計で気をつけたところ

ブログを作るときに考えたことは、「とにかく表示スピードを上げる」ことだった。 1から作るにしてもエンジニアである私はデザインの部分だけはどうしても苦手だった。 Bootstrapというフレームワークがあるが、それも重いと感じていた。 今回はmini.cssというフレームワークを使わせてもらった。 CSSも軽い方がいいのだ。

ブログに最低限必要な機能

ブログとは何か。どういう機能があればブログなのかについて考えていた。 まず、「記事」がある。当たり前だ。ただ記事があれば良いのかといえばそうではない。 RSSを発信しなければならない。コメント欄も必要かもしれないが、今回は付けないことにした。 単に管理が面倒だからだ。付けようと思えばすぐにつけれるが、付ける予定はない。

必要な機能

  • ・記事投稿画面(管理画面)
  • ・記事
  • ・RSS(ATOM)
  • ・コメント欄、TrackBack
  • ・サイドバー(最新記事、タグ、カテゴリ、プロフィール、カレンダー)
  • ・記事内にソーシャルボタン

この中で「重たい」ものは最初からつける予定はなかった。 一度開発時にyoutube動画を埋め込めるようにしたが、重たかったので削除した。 外部のデータを表示させると全て重たくなるので、はてなブックマークもツイートボタンも取り外した。 フェイスブックも必要ない。 軽さが正義だという主張でブログを開発した。

デザインについて

エンジニアであるからデザインは苦手だ。 ただ、レスポンシブにすることに決めており、右側にサイドバーをつけるというアイデアは最初からあった。 また、記事内にパンくずリストを付けるというのも最初から決めていた。 あとはタグ一覧機能が欲しかった。 カテゴリを作ろうとしたが、タグ一覧で代用できることがわかったから途中で削除した。 デザインの骨格を決めてしまえば、あとは作るのは簡単だった。 色はgoogleやInstagramをみて薄い灰色を多く使うことにした。 これが一番無難で綺麗に見えるのだ。

管理画面について

管理画面は、シンプルなフォームを用意している。今はある意味でテスト段階だ。 これでは使いにくいと思えば自分で後から付け加えるだけだ。 Markdownというものが世の中に存在している。ATOMというエディタを使えばMarkdownで文章が簡単に書けて出力できるのだ。 そういう外部のアプリを使って管理画面にコピペすれば済むだけのことだ。 全て1から作ろうと思ったらいつまで経ってもリリースはできなかっただろう。 どこに力を入れて、どこで手抜くかというのはプログラマとして覚えておきたいスキルだ。

やってみたかったこと

AMPに対応してみたかった。表示速度で勝負しているブログなので当然である。もちろん対応できたと思う。これを書いている今はまだ巡回されていないので本当にうまくできたのかは分からない。明日には分かるだろう。

妥協したこと

妥協したことも書いておこう。

nginxを使わなかった。全てのページをhtmlで出力しなかった。とりあえず思い出せるのはこの2つだ。最速を目指すなら全てのページをhtmlで出力したらいいだろう。phpやRuby、Python、何が一番早いかみたいな話があるが、結局生のhtmlには勝てないのだ。node.jsでサーバーを作ったほうがはやかったかもしれない。まあ、それVPSやクラウドを借りてやらなければいけないのがしんどいので今回はレンタルサーバーを使ったということもありこのぐらいがベターだったと思う。

最後に、このブログはパワーアップし続けるだろう

アプリに完成というものは存在しない。 windowsだろうが、macだろうがアップデートし続けている。 このブログシステムも今はバージョン1のようなものだ。自分で使いながらダメなところを少しずつみつけて改善していきたい。

 リンク