The other way round

ARTICLE PAGE

【追記ありx2】FC2ブログ公式プラグイン【カレンダー】の仕様が変わりました

author photo

Byvanillaice (Akira)

文末に重要な追記あります(笑)

---------- 以下本文

良くなったのか… どうなのか…。
ビミョー(笑)

公式プラグインの「カレンダー」の仕様に変更が入ったようです。

・どんな点が変更になったのか
・変更によってどんな挙動になったのか

主に上記2点について、旧仕様との比較を交えご説明します。
場合によっては個人でカスタマイズした方が良いかもしれません
数日前から少しづつ変更が入っており、明らかな不備状態を経て(笑)
これが最終形ってことで良いのかなぁ (´・ω・`)
ちょっとまだわからんけど。
見切り発車記事になるかもですが、また変更があればその時改めて加筆するとして。
現時点でどうなっているのかを記しておきます。
問題点もあるよ (´・ω・`)


無限状態の解消


以前の仕様では前後月が延々とリンクになっているという問題がありました。
ブログ開設前まで遡れたり、まだ訪れていない年まで… 年まで…
「遡る」の対義語ってなんですか? (´・ω・`)
英語だと rewind ← → forward だけど日本語だとなに… ( ̄∀ ̄;)
ともかく、過去や未来もページができてしまっていた、ってことが言いたいのです。



ブログ開設以前の「過去」まだ来ていない「未来」については記事が存在しないわけですが、ページ自体は作成されてしまっていたんですね (´・ω・`)
そしてクローラー(検索ロボット, bot)がそれを辿るもんですから、記事無しのお化けページがインデックスされてしまう問題がありました。
それを解消したかったのではないでしょうか。
で、実際解消されています。
がしかしBUT…。


アーカイブ専用カレンダーという意識


初めて記事を書いた月日よりも「前(過去)」
そして
まだ記事を書いていない月日よりも「後(未来)」
は繰れないようになりました。
そして 表示もされません




今日は 2017年4月8日 ですが、ブログを開いて最初に目にするカレンダーの当月表示は最終更新月である 3月 です。
ですから、ページを開いた今日現在が何月なのか は無視です。
一般的に「カレンダー」というと、当月があり、前月・翌月… という感覚ですが、
更新したか否かを示す専用のカレンダーですよ、という意識がこれまでユーザーさんに有ったかどうか(笑)
そして一般的な閲覧者さんはどうでしょうかね。
「あのー。今日は4月ですがカレンダーが3月にズレてますよ (´・ω・`;)」
とか思われないだろうか。
アーカイブカレンダー」というタイトルに変更しておくと親切かもしれないねぇ (´・ω・`)
これについては「不備」ではないと思います。
本来の用途の問題。
アーカイブ専用だ! ってことにしたんですよね?たぶん(笑)
これまでは現在月が「当月」として表示されていましたが、ここが変更されました。
もちろん過去についても、初めて記事を書いた月よりも前は表示されません。


カレンダーのリンクはアーカイブページへの移動でもある


FC2ブログにはいくつかのページ種があります。

・トップページ //固有ID.blog.fc2.com/ 及び //固有ID.blog.fc2.com/page-数字.html
・個別記事ページ(パーマリンク) //固有ID.blog.fc2.com/blog-entry-数字.html
・全記事一覧ページ //固有ID.blog.fc2.com/archives.html
・カテゴリ別ページ //固有ID.blog.fc2.com/blog-category-数字.html
・タグページ //固有ID.blog.fc2.com/?tag=タグ名
・サイト内検索結果ページ //固有ID.blog.fc2.com/?q=検索クエリ
・コメント編集ページ //固有ID.blog.fc2.com/?mode=edit&rno=数字
・月・日別ページ //固有ID.blog.fc2.com/blog-date-数字.html


カレンダーの前後月リンククリックは、月・日別ページ(date_area) への移動も兼ねていました。
「いました」ってゆーか、「います」(´・ω・`)

* 全記事一覧がURL中に archive の文字列を取っていますが、この記事でいう「アーカイブ」は月・日別のことです。
これもちょっとFC2ブログのややこしいところなんですよね。


で、ですよ。
「当月」にあたる部分(スクショだと 2017/3 の部分)というのはリンクにはなっていないんです。
そして前後の月に関しては

<%prev_month_link>
--- 前月へのリンク
<%next_month_link>
--- 翌月へのリンク

とこうして前後月リンクのためのFC2独自変数があるのですが、当月リンクの変数がありません
FC2ブログはアタリをつけて調べてみると非公開変数がポロリと出てきたりするので調べてみましたが、今のところヒットしません。
(webで調べるって意味じゃなくて自分で有りそうな変数を造語・入力して実際にやってみるという意味です)
有るのかもしれないし、無いのかもしれない。
ちょっとはっきりわかんないです。
だってこれって悪魔の証明だもの。
しばらくして「見つけましたー。」ってなるかもしれませんけど、今のところ見つからない。

ということはだよ?
当月(スクショだと最終更新月の3月)にあたる月・日別ページに行きたいと思った時。
どうすりゃええのん? (´・ω・`)
一旦前月(2月)にジャンプ(//blog-date-数字.htmlのページに移動)して、そのページから翌月(3月)に行く?
これちょっと不親切じゃないか(笑)
当月リンク変数の実装お願いしまーす (´・ω・`)

ということで、アーカイブへの移動を公式カレンダーのみにしている方は、テキストタイプのアーカイブプラグインをひとつ追加した方が良いかもしれませんね。
スクショの「Tree-Archive」みたいなやつ。


ページ内移動してもーてるがな


ちょっともう一度同じスクショ貼りますね。



最終更新月の3月が当月表示になっており、右側、翌月にあたるリンクも 03 ということで、同じ3月です。
で、これリンクとして残ってしまってるんですね。
さっき書いたように //blog-date-201703.html に移動してくれれば良いものを。
実際はどうなるかというと、aタグのhref属性の値が # に置き換えられてしまうので、
ページ内移動 = ページ最上部に移動 してしまいます。
なんやそれ!!!(笑)
ページ内スクロールが導入されているテンプレートではスルスル〜っと上まで移動します。
ページ内スクロール無しのテンプレでは上まで瞬間移動。
後者の場合、閲覧者は何が起こったかわからんぜよ (´・ω・`)
「え?なに今の?ちゃんとページ移動した?さっきと同じページに見えるけど…。」
体感としてはこんな風になっちゃうなー (´・ω・`)
前者だと明らかにズルーっと上に移動してるから「同ページ内である」というのはわかりますが、ページ種の移動を目的としてクリックした人は戸惑いますよね。

うーん。これちょっと良くないんじゃないか (=`ェ´=;)
今後さらに修正が入るかもしれませんが、とりま現在ではそんな挙動になってるんで…。
最低でも「リンクを効かせない = ページ内で移動してしまわないようにする」対策は必要かもしれませんね。
まぁ…。やっといた方が良いのかなー (´・ω・`)

----- ここからは私のテンプレ限定 -----

プラグインのソースに手を加えると後々アレなんで…。
テンプレートでなんとかしておきましょう。
Ctrl+F(Windows)/ Command+F(Mac)キー検索

a[href^=#]

htmlソース内に必ず1箇所あるはずです。
1箇所… かなぁ… 不安(笑)
違うじゃねーか! (;`ー´)o という方は直接お申し付けください。すみません ^^;
上記内容を以下の通り修正

a[href^=#]:not([href=#])

これでまずスムーススクロールの対象外にします。
続きまして今度は修正ではなく 追加 です。

<script>$(function(){$('.calender a[href=#]').click(function(){return false})});</script>

上記内容を
</body>
の直前に追加。
こちらでhrefの値が # のみの場合のリンクを封鎖します。

注意点

SNSのページへ誘導するためのアイコンを毎回準備しています。
準備はすれど個人ページのURL記載はテンプレ製作者では不可能ですので、みなさんにご自分でURLを記載して頂く形を取っています。
デフォルトでは 空リンク の状態で、値に # を代入しています。
で、上記のようなカレンダーリンクへの対処を行うと、このSNS空リンクを押した際に
クリックした時点での滞在ページと同じページを別タブで開いてしまいます ので、SNS誘導のリンクは必ず設定するか、不要であれば削除を行ってください。
ただこの作業は何もカレンダーの対処だけでなく、空のリンクは不要なら削除 が基本。
基本に則って処理して頂くだけのことです。
(私の場合には作成したテンプレの基本デザインをみなさんに見て頂かないといけませんのでそのままにしてますが)


まとめ


重ねて申し上げますが、もしかしたらまだ修正段階にあるのかもしれません。
数日様子を見ないことにはなんとも言えない。
・当月リンク変数の実装
・最終月はリンクを削除
この2点が修正されれば良いのですが (´・ω・`)
それかarchive_linkという変数は元々あるので、公式プラグイン「カレンダー」自体をリニューアルでリリースするか。
それかユーザーが自分でソース書くか(笑)

個人的には前後月のリンクに nofollow で十分だったように思います。
だって「カレンダー」でしょう? (´・ω・`)
一つも丸が付いてない月があってもおかしくないし、無限に開けてもおかしくない。
だって「カレンダー」だもん(笑)
アーカイブは別であるんだし、当初は別の用途でリリースしたと思うのですが。
アーカイブに近づける必要あったのかなぁ… とか思ったりしてる(ボソ)


--------- 追記 2017.4.9

一夜明けたら当月表示部分が現在月になってました。
更新が3月で止まっていても当月として4月が表示されています。
まだ変更段階ということでしょうかね。
まぁ、あくまでもカレンダーだからその方が直感的で良いよね (´・ω・`)
運営さんお疲れ様です (o'ω')ノ

* ただし一旦前月をクリックして3月に移動したらカレンダーから4月へ戻ることはできません。
ですが
4月は記事の更新が無い = 月・日別一覧が無い
わけなので、これはこれで良い… のかな?
難しいね。テーブルカレンダーの扱いって (´・ω・`)


--------- 追記 2017.4.11

気が付けばー元に戻っているじゃあないかー。
元の仕様に戻ってます (´・ω・`)
え?(笑)

何がしたかった

以上です(笑)
関連記事

Comments 2

あっちゃん  

わかりやすかったです、今回も。

Akiraさん、こんばんは!
a[href^=#]は、一つだけでした。(笑
確かにカレンダー、アーカイブカレンダーになってました。
自分、もともとカレンダーほとんど使っていないので、^^;
あまり気にしてなかったんですが、たまーに過去記事みたりするときに使うので、
やはりこの現象は使いにくいと思いました。
今回もためになりました。ペコリ。

2017/04/08 (Sat) 19:17 | EDIT | REPLY |   

Akira  

To あっちゃんさん

また少し変更があったようですー。

自分だけがわかってて上手く伝わらない独りよがりになってないだろうか、という恐れを抱きながら記事を書いてます。
なので「わかったよ。」と言ってもらえるとすごくホッとします。
「わかりやすかった。」なんて言葉を頂けたら本当に嬉しい(笑)
いつもありがとうございます

2017/04/09 (Sun) 09:51 | EDIT | REPLY |   

Leave a reply

テンプレートに関するご質問・不具合のご報告の際はご自身のブログアドレス記載必須です
ご質問の前に必ずお読みください ↓
FC2テンプレート ご利用時のお願い
利用上のお願い (3)
ご質問の前に (2)
よくあるご質問 (1)
FC2不具合情報 (15)
割と重要なお知らせ (34)
テンプレート (68)
ブログ内限定配布 (6)
リリーステンプレート早見表 (1)
テンプレート固有機能説明 (1)
配布終了・旧作 (5)
テンプレ不具合・修正など (57)
カスタマイズ (90)
SNS (5)
FC2ブログのあれこれ (21)
webのあれこれ (8)
装飾枠 (3)
装飾枠使い方とお願いごと (1)
雑記 (32)
洋楽 (103)
50 Cent (1)
Akon (1)
All American Reject (1)
Amy Winehouse (1)
Andain (1)
A Perfect Circle (1)
Aura Dione (1)
Balint Adam (1)
Billy Talent (1)
Bliss (1)
Boyce Avenue (1)
Breaking Benjamin (3)
Breathe Carolina (1)
Catfish And The Bottlemen (0)
Damien Rice (2)
Danny Elfman (1)
Dave Matthews Band (1)
David Lee Roth (1)
Death Cab For Cutie (1)
Diary Of Dreams (2)
Digital Summer (1)
Disturbed (3)
Drowning Pool (1)
Eminem (1)
Five For Fighting (1)
Flo Rida (2)
Fort Minor (1)
Get Scared (2)
Goodnight Nurse (1)
Gotye (1)
Hoobastank (1)
InMe (1)
Ivy (1)
Jamiroquai (3)
Jeniffer Lopez (3)
Jet (1)
Kelly Clarkson (1)
Kelly Sweet (0)
Kula Shaker (1)
Late night almuni (4)
Led Zeppelin (1)
Lenny Kravitz (0)
Limp Bizkit (3)
Linkin Park (1)
Lorde (1)
Lou Reed (2)
Magic! (1)
Maroon 5 (1)
Michiko (1)
Mindless Self Indulgence (1)
Mindy Gledhill (0)
Miss Jane (1)
Muse (2)
N.E.R.D. (1)
Nickelback (1)
Nirvana (1)
Oasis (1)
Panic! At The Disco (1)
Papa Roach (1)
Pharrell Williams (1)
Radiohead (1)
Rage Against The Machine (1)
Red (1)
Red Hot Chili Peppers (3)
Rhye (2)
Rumer (1)
Sade (1)
Sarah Brightman (1)
Shakira (1)
Sixpense None The Richer (0)
Soulja Boy (1)
Steven Cooper (1)
Sting (1)
Sum 41 (2)
Taio Cruz (1)
The Fratellis (0)
The Pretty Reckless (1)
The Weepies (1)
Three Days Grace (1)
Tom Waits (2)
Travie McCoy ft. Bruno Mars (1)
TRUSTcompany (1)
Ty Stone (1)
U2 (1)
Westlife (1)
未分類(個人的テスト等) (48)