Cocoonでここまでできた。LinkRingのトップページを作り直した記録

新しいLinkRingを作るとき、最初に迷ったのがWordPressテーマでした。

有料テーマも候補にしましたが、今回は無料のCocoonを選びました。実際にトップページを作り込んでみると、WordPress標準ブロックとCocoonの機能、それに少しのCSSで、想像していたよりかなり自由に作れました。

この記事では「Cocoonにはこんな機能があります」という網羅的な説明ではなく、LinkRingのトップページを実際にどう組んだかを残しておきます。

最初に「雑記ブログらしさ」を残すと決めた

トップページを作る前に決めたのは、きれいな商品比較サイトにはしないことでした。

LinkRingは、買ったもの、家のこと、本や映画、家族で出かけた場所、仕事で考えたことを一つの場所に置くブログです。テーマを一つに絞るより、初めて来た人に「こういう雑記ブログなんだ」とすぐ分かる方が大事でした。

そこでトップに置いた言葉が、

「買ったもの、読んだもの、行ったところ。」

です。

カテゴリーも細かくしすぎず、「買ったもの」「暮らし」「読んだ・観た」「出かけた」「仕事・考えたこと」の5つにしました。

固定ページをホームにして、1カラムで作った

トップページは、投稿一覧をそのまま表示するのではなく「Home」という固定ページを作って、それをホームページに指定しました。

WordPressには固定ページをホームページにする標準機能があります。Cocoon側では固定ページごとに1カラム表示へ変更できるので、LinkRingではトップだけサイドバーを外し、横幅を広く使っています。

WordPress公式:Create a static front page
Cocoon公式:投稿・固定ページを1カラム表示する方法

記事ページにはサイドバーがあってもいいのですが、トップページは「入口」なので、情報を左右に散らしすぎない方が見やすいと感じました。

トップページは、大きく6つのブロックに分けた

いまのトップページは、ざっくり次の順番です。

  1. LinkRingが何のブログかを伝えるヒーロー部分
  2. おすすめの記事
  3. 新着記事+プロフィール/カテゴリー
  4. 5カテゴリーそれぞれの記事一覧
  5. 各カテゴリーへのボタン
  6. 「LinkRingについて」

最初から全部を一気に作ったわけではありません。まず骨組みをWordPressのカラムブロックで作り、カードを置き、最後に余白や文字サイズをCSSで調整しました。

おすすめ記事はnew_listのordered_postsが使いやすかった

最初はCocoonのナビカードを使って、おすすめ記事を3枚並べようとしました。

ナビカードは好きなリンクをカードにできるので便利です。ただ、今回ほしかったのは「アイキャッチ、タイトル、本文の抜粋、日付」がそろった記事カードでした。

Cocoonの navi_list には snippet オプションがなく、説明文を使う方法はあります。一方、new_list には本文の抜粋を表示する snippet と、好きな投稿IDを好きな順に並べる ordered_posts があります。

そこで最終的には、こんな形にしました。

  

記事は見つかりませんでした。

これなら「おすすめ3記事」も、新着記事も、カテゴリー別記事も同じ系統の見た目で揃えやすいです。

Cocoon公式:新着記事一覧を表示するショートコード
Cocoon公式:ordered_postsの使い方

CSSは「全部作り直す」のではなく、足りないところだけ

Cocoonを選んだのに、HTMLもCSSも全部自作してしまったらテーマを使う意味が薄くなります。

なのでLinkRingでは、レイアウトそのものはWordPressとCocoonに任せ、CSSは次のような部分だけに使っています。

  • トップのタイトルの文字サイズと改行
  • おすすめ記事をPCで3列にする
  • カテゴリー記事を2列にする
  • 見出し間の余白
  • カテゴリー名の小さな英字ラベル
  • スマホで1列に戻す
  • ヘッダーのキャッチフレーズ位置

CSSはCocoon Child側に置いています。WordPress公式も、テーマファイルを直接変えるとアップデートで変更が失われるため、独自カスタマイズには子テーマを検討するよう案内しています。

WordPress公式:Theme File Editor

いちばんハマったのは、青い縦線の3pxだった

トップ右側の「このブログについて」には、左に細い青線を置いています。

ただ、この線と文章の間を少し空けたくて padding-left を指定しても、なぜかまったく動きませんでした。

原因は、別のCSSで指定していたより強いセレクターでした。親のカラムに対する padding: 0 !important; が勝っていて、あとから書いたクラスの余白が効いていませんでした。

最終的には右カラムをより具体的なセレクターで指定し、青線自体は疑似要素で描画する形にしました。

見た目としてはたった数ピクセルの違いなのですが、こういうところを詰め始めると一番時間が溶けます。

「Home」はグローバルメニューに置かなかった

メニューも少し迷いました。

最終的にはグローバルメニューを5カテゴリーだけにして、Homeは入れていません。ロゴを押せばトップへ戻れますし、メニューは「次にどの記事を読むか」のために使いたかったからです。

同じ理由で、カテゴリーを10個、20個と増やすこともしませんでした。昔の記事を整理しているとカテゴリーは細かくしたくなりますが、今は5つくらいの方が自分でも迷いません。

Cocoonで十分だった、というのが今の感想

有料テーマの方が、最初から整ったデザインを作りやすい部分はあると思います。

でもLinkRingの場合、Cocoonの1カラム固定ページ、ショートコード、WordPress標準のカラムやボタン、子テーマCSSを組み合わせれば、作りたかったトップページにはかなり近づけました。

むしろ途中からは「テーマの機能が足りない」というより、「どの記事をトップに出すか」「文章をどう見せるか」の方が大事になりました。

これからブログを作り直すなら、最初から見た目を100点にしようとせず、まず記事を書ける状態まで持っていく。そのくらいでちょうどいい気がしています。

WordPressを作り直した全体の流れは、こちらにもまとめています。

XServer for WordPressでLinkRingを作り直した。開設からここまでやったこと

タイトルとURLをコピーしました