FC2ブログには 親子カテゴリ化 という機能があります。通常「親子」という場合には フォルダ階層(ディレクトリ) が関わっており、親のフォルダの下層に子のフォルダ、という形ですが、FC2では偽装しているだけで親も子も階層のレベルは同じですよ、というお話。パンくずリスト にも関わってきますので興味のある方はご覧ください。
FC2ブログのカテゴリ階層
以下のイラストが「感覚的」に恐らくみなさんが考えている構造ではないかと思います。
ですが 実際には違います。親と子のフォルダは同じ階層にあります。階層が上記の通りだとすればURLは
https://固有ID.blog.fc2.com/親カテゴリフォルダ名/子カテゴリフォルダ名.html
とかそんな感じになりますが、実際は
親カテゴリURL (上: 通常/ 下: カスタム)
https://固有ID.fc2.com/blog-category-カテゴリ番号.html
https://固有ID.fc2.com/c/カテゴリ名
子カテゴリURL (上: 通常/ 下: カスタム)
https://固有ID.fc2.com/blog-category-カテゴリ番号.html
https://固有ID.fc2.com/c/カテゴリ名
と、こうして全く同じ。階層になっている場合はスラッシュの数が異なりますのですぐにわかります。スラッシュで挟まれているのが ディレクトリ ですね。FC2ブログでは表示上そう見せているだけで、階層にはなっていない、というのが本質です。
これについては個人的には「上手にやったなぁ」という感じです。元々のシステムがあり、そこへユーザーさんから「カテゴリを階層化してほしい」というリクエストがあり、元のシステムを侵すことなく上手く導入したということですよね。
というわけで、FC2ブログ「カテゴリ」の特徴がまずこういったものだよ、という説明です。
パンくずリストとは
最近はみなさんこの パンくずリスト を自身のブログに取り入れたい、という向きがありますね。パンくずリストというのは ディレクトリ構造を明確にして行き来をスムースにする というものです。サイトの構造がどうなっているか、というのが大切です。
ということは、FC2の親子カテゴリは?
FC2親子カテゴリ表記の現状
テンプレート内に「カテゴリリスト」を導入されている方は、親子関係のカテゴリを開いてもらうとわかると思うんですが、通常、パンくずリストの表記は以下のようになります。
リストの中には「子カテゴリ」を有するものもありますが、これはこれで正しいですよね。では子カテゴリの方。
これを見て「ん????」となる方もいらっしゃると思うんですよ。先程の図は「親」の方ですから、当然「子」の方に属しているアイテムも含まれるわけですが、今度は「子」の方をダイレクトに指定しており、感覚的には「親の表記が無いのはおかしいのでは」となるかと思います。パンくずリストは階層を示すものなので、当然「親」へのリンクが表記されるはず、と考えるわけですね。
ですが現実的にはこれは 合っている という説明を事前に行っています。実際には 親カテゴリ > 子カテゴリ という階層ではないのですから、これで合ってる。
とは言ってもやっぱり感覚的にはおかしいわけですよ (´・ω・`)
誰もが「階層」「ディレクトリ」を意識して運営しているわけではないですし、親子関係のパンくずなら親へのリンクは要るだろう、と考えるのが普通。FC2ブロガー以外の方が見ても同じ感覚のはずです。
既存の対応策はあるか
既知のものでは2つあります。ひとつは「FC2独自変数の特性を利用したもの」もうひとつは「JSを利用したもの」です。このいずれも得られる結果は同じです。これらの方法を用いると以下のようになります。結論から言うと不完全。パターンがあるので説明します。
パターン1 - 最初のアイテムが「親カテゴリ」に属している場合」
「最初のアイテム」というのは、親を開いたときに一番左にある記事のことです。たいていはそのカテゴリの中で最も新しい記事ですね。FC2ブログには昇降を逆にする設定がありますので、ある方にとっては最古の記事の可能性もありますが、とにかく一番左、もし縦並びリストならば一番上の記事、ということです。
親はちゃんと親カテゴリがカレント(現在地)になっており、子の方もちゃんとカレントが「子」、そして上の階層として(何度も言いますが偽装です)「親」のリンクも表記されています。これがパターン1で、これなら正しい形と言えますよね。
パターン2 - 最初のアイテムが「子カテゴリ」に属している場合
これおかしいんですが、どちらがどうかみなさんわかりますかね (∵`)
正解: 子カテゴリは正しい、親カテゴリがおかしい。
親カテゴリのページを開いている、ということは、カテゴリリストの中から「親カテゴリです」の名称をクリックしているということですよね。なのにカレントが子の「子カテゴリです」になっています。これはどう考えてもおかしい (´・ω・`)
そしてカレントが「子カテゴリ」ならば全てのアイテムがその子カテゴリに属しているはずですが、そうではない。
こうして、一番最初のアイテムが たまたま 子カテゴリに属していた場合には、親の方のパンくずリストが狂ってしまうんですね。最初のアイテムが「親」か「子」か、なんてのはコントロール不可能ですから、そういった事情でやはり不完全。
まとめ
本記事中のスクリーンショットは次回申請予定のテンプレートですが、この点をJSで解消しています。で、迷ったんですが、今回こちらのJSについては公開・共有を行いません。理由は非常にいやらしい方法なのと、条件があるんですね。これが「誰のどんなテンプレートでもOK」であれば公開したんですが、今回は条件つきのため見送ります。
パンくずリスト表記について「なんとなくしっくりこないなぁ」と思っていた方ももしかしたら居るかもしれません。逆に「考えたことなかった」という方も(笑)
カテゴリについてはFC2ブログの構造に係る内容なので、ちょっとこれ以上どうこうは難しいな、というところです。次回作のsneak peekも併せ、カテゴリ表記に関する記事でござしました ('0')/
- 【FC2ブログ】「条件付きで広告非表示を継続します」というアナウンスがありました - 2022年8月より延長2022/08/07
- FC2ブログ「新デザイン」管理画面の環境設定 - 初心者向け説明2021/10/15
- 旧投稿画面「自動改行」で書いた記事の修正2021/09/14
- FC2ブログ機能「タグをリンクにする」と弊ブログ提供ブログカードのとの衝突について2021/09/11
- 【FC2ブログ】「広告非表示を継続します!」というアナウンスがありました - 2021年8月より1年延長2021/08/07
- 新デザイン「新投稿画面」ではコピペでhtmlが取り除かれます2021/05/09
- FC2スマホ広告復活の準備が行われているようです。2021/04/26
- 新投稿画面に「引用」ツールアイコンが追加されました(但しChromium系ブラウザのみ)2021/04/23