その中で使い方が難しいのが「ページエリア」のエリア変数です。
ページエリア(次ページ)【page_area】
【http://□□□.blog.fc2.com/page-1.html】
<!--page_area-->
ページエリアに表示させたい内容
<!--/page_area-->
<!--not_page_area-->
ページエリアに表示させたくない内容
<!--/not_page_area-->
ページエリアに表示させたい内容
<!--/page_area-->
<!--not_page_area-->
ページエリアに表示させたくない内容
<!--/not_page_area-->
エリア変数の紹介としてはこのように表記するしかなかった、という感じです。
実際、「ページエリア」はちょっと理解しにくくて、使いにくいですね。
上記のような記述で意図したことを実現できるのかと言われたら、それは違います。
「<!--page_area-->」という変数については、実はFC2ブログのPC用公式ヘルプには書いてありません。この変数はどうやらスマホ用と携帯用に設定されているようですが、スマホ用では「スマートフォンページのページナビを表示させるブロック」と説明されています。‥‥ちょっとよくわからないw
まあ、このエリア変数はスマホ用だけではなくPC用のテンプレートでも使えるんですけどね。
「<!--page_area-->」はそのまま読むと「ページエリア」なので私は「ページエリア」と呼んで説明していますが、だからと言ってそれだけではあまり意味がわからないと思います。
この記事では、「ページエリア」とはどういうものなのかを説明して、気になる部分を検証してみます。
当記事の関連記事■FC2ブログのエリア変数(1)基本的な考え方
■FC2ブログのエリア変数(2)ページエリア「<!--page_area-->」
■FC2ブログのエリア変数(3)ページエリア「<!--not_page_area-->」
■FC2ブログのエリア変数(4)同じ内容を複数のページに表示する
■FC2ブログのエリア変数(2)ページエリア「<!--page_area-->」
■FC2ブログのエリア変数(3)ページエリア「<!--not_page_area-->」
■FC2ブログのエリア変数(4)同じ内容を複数のページに表示する
「ページエリア」はどういうものなのか
「ページエリア」とは、「次ページ」に対するエリア変数なのだと私は理解しています。
例えばブログのトップページを開くと、もちろん記事が表示されますよね。
記事が1つだけならば何も問題は無いのですが、記事を50個書いていたら、ブログのトップページに50個全てが表示されるはずはないですよね。「次ページ」への案内リンクがあって、クリックしたら次のページに進むはずです。
ブログのトップページのURLは「http://□□□.blog.fc2.com/」です。
この場合の「次ページ」のURLは「http://□□□.blog.fc2.com/page-1.html」になります。
「ページエリア」は「次ページ」に対するエリア変数です。
なので「ページエリア」の変数は「page-●.html」というURLアドレスになり、これはページがある限りずっと続くわけです。
2ページ目、3ページ目などに表示させたい内容がある場合はこの「ページエリア」を使えばそれが可能になります。(理論上は、です。)
こういう意味で「次ページ」に対するエリア変数だと説明しました。
もちろん「次ページ」があるのはトップページだけではありません。「カテゴリページ」「月別アーカイブページ(月・日別表示ページ)」「タグページ」「検索結果ページ」などにも「次ページ」があります。
「ページエリア」は「次ページ」に対するエリア変数ですから、これらのページにも有効です。
ページエリアの「page-0.html」
先ほど私は「次ページ」のURLを「page-1.html」と表記しました。
ということは「page-0.html」が存在することもおわかりですよね?
「次ページ」が「page-1.html」なのだから「page-0.html」はトップページを意味します。
でもブログのトップページに対するエリア変数は「<!--index_area-->」です。トップページは「index」で表示されるわけです。
ブログのトップページを指定しようと思った時に、実は「index」と「page-0.html」の2つがあるわけです。
ブログのトップページ(index)と「page-0.html」は見た目が同じだけど中身は違うよ、ということです。
(通常、「page-0.html」はFC2ブログでは表に出てこないで「index」が表に出てくるようです)
で、ちょっとややこしくなりますが、「ページエリア」の変数「<!--page_area-->」には「index」も含まれているらしいのです。
これは、表示の仕方を考えれば納得いくと思います。だって、どちらもブログのトップページを指定できるわけですから、「ページエリア」には最初から「index」と「page-0.html」が同時に存在していると考えても大丈夫なはずです。
でも、ブログのトップページには表示させずに、2ページ目や3ページ目などの「次ページ」のエリアに表示させたい場合、「<!--page_area-->」を記述するとおかしくなるわけですよ。(「index」が含まれていますからね)
なので純粋に「page-●.html」に対して指示をしたければ、「index」は外しておかなければいけないということのようです。
以下、よくわからないと思いますので、実際に検証してみました。
「ページエリア」を検証してみた
「ページエリア」について色々と検証してみました。
でも実は、検証方法としてはプレビュー画面での確認しかしていません。
実際にテンプレートを「適用」させて検証したわけではありませんので、もしかしたら「適用」させたら違う結果になるかもしれません。でも、そんなことは私は知りません(笑)
あと今回は、ブログの「トップページ」と「カテゴリページ」を検証しました。
「カテゴリページ」での結果は、そのまま「次ページ」のエリアを持つページ(「タグページ」や「月別アーカイブページ」など)での結果と同じものだと考えます。「次ページ」を持つエリアの代表として「カテゴリページ」で検証してみただけです。
URLにはテンプレートをプレビューした時のURLを書いています。テンプレート名は「tamesi」です。
(1) 「<!--page_area-->」だけで記述した場合
<!--page_area-->
ページエリア(次ページ)に表示させたい内容
<!--/page_area-->
●トップページ【http://□□□.fc2.com/?template=tamesi&index】:表示される
●トップページの「次ページ」【http://□□□.fc2.com/?template=tamesi&page=1】:表示される
●カテゴリ1【http://□□□.fc2.com/?template=tamesi&cat=1】:表示される
●カテゴリ1の「次ページ」【http://□□□.fc2.com/?template=tamesi&cat=1&page=1】:表示される
ページエリア(次ページ)に表示させたい内容
<!--/page_area-->
●トップページ【http://□□□.fc2.com/?template=tamesi&index】:表示される
●トップページの「次ページ」【http://□□□.fc2.com/?template=tamesi&page=1】:表示される
●カテゴリ1【http://□□□.fc2.com/?template=tamesi&cat=1】:表示される
●カテゴリ1の「次ページ」【http://□□□.fc2.com/?template=tamesi&cat=1&page=1】:表示される
ブログのトップページにまで「次ページ」で表示させたい内容が表示されています。
カテゴリ1にも表示されていますので、結局、「<!--page_area-->」だけで記述した場合は、すべての「ページエリア」に表示されるということでしょう。
この場合、「ページエリア」という名前そのもの、ですよね。「ページ」の「エリア」には「表示させる」という意味になるかと思います。つまり、ブログの全部のページに表示されるわけです。
(2) 「<!--page_area-->」から「<!--index_area-->」をはずして記述した場合
<!--page_area-->
<!--not_index_area-->
ページエリア(次ページ)に表示させたい内容
<!--/not_index_area-->
<!--/page_area-->
●トップページ【http://□□□.fc2.com/?template=tamesi&index】:表示されない
●トップページの「次ページ」【http://□□□.fc2.com/?template=tamesi&page=1】:表示される
●カテゴリ1【http://□□□.fc2.com/?template=tamesi&cat=1】:表示される
●カテゴリ1の「次ページ」【http://□□□.fc2.com/?template=tamesi&cat=1&page=1】:表示される
<!--not_index_area-->
ページエリア(次ページ)に表示させたい内容
<!--/not_index_area-->
<!--/page_area-->
●トップページ【http://□□□.fc2.com/?template=tamesi&index】:表示されない
●トップページの「次ページ」【http://□□□.fc2.com/?template=tamesi&page=1】:表示される
●カテゴリ1【http://□□□.fc2.com/?template=tamesi&cat=1】:表示される
●カテゴリ1の「次ページ」【http://□□□.fc2.com/?template=tamesi&cat=1&page=1】:表示される
「<!--page_area-->」には「index」が含まれているので、はずしてみました。「index」のエリア変数のマイナス変数で挟めば「表示させない」という指示ができます。
結果、確かにブログのトップページ(index)には表示されませんでしたが、カテゴリ1も含めて他のページには全て表示されています。「<!--not_index_area-->」は「トップページに表示させない」という指示なのですから当然の結果ですよね。
(3) 「<!--index_area-->」だけでなく「<!--category_area-->」もはずして記述した場合
上記(2)では、「<!--not_index_area-->」を記述すると「トップページに表示させない」という指示になるので「カテゴリページ」には表示されるのが当然だ、という検証結果を得ました。
なので次は「カテゴリページにも表示させない」という指示を出してみます。
<!--page_area-->
<!--not_index_area-->
<!--not_category_area-->
ページエリア(次ページ)に表示させたい内容
<!--/not_category_area-->
<!--/not_index_area-->
<!--/page_area-->
●トップページ【http://□□□.fc2.com/?template=tamesi&index】:表示されない
●トップページの「次ページ」【http://□□□.fc2.com/?template=tamesi&page=1】:表示される
●カテゴリ1【http://□□□.fc2.com/?template=tamesi&cat=1】:表示されない
●カテゴリ1の「次ページ」【http://□□□.fc2.com/?template=tamesi&cat=1&page=1】:表示されない
<!--not_index_area-->
<!--not_category_area-->
ページエリア(次ページ)に表示させたい内容
<!--/not_category_area-->
<!--/not_index_area-->
<!--/page_area-->
●トップページ【http://□□□.fc2.com/?template=tamesi&index】:表示されない
●トップページの「次ページ」【http://□□□.fc2.com/?template=tamesi&page=1】:表示される
●カテゴリ1【http://□□□.fc2.com/?template=tamesi&cat=1】:表示されない
●カテゴリ1の「次ページ」【http://□□□.fc2.com/?template=tamesi&cat=1&page=1】:表示されない
確かに「カテゴリページ」のインデックスページ(1ページ目)にも表示されませんし、「カテゴリページ」全部(2ページ目、3ページ目など)にも表示されないという結果になりました。「カテゴリページにも表示させない」という指示なのだから当然ですね。
(4) カテゴリページの「次ページ」に表示させたいので、他の「次ページ」があるページエリアをはずして記述した場合
こういう指示を出したい時があるのかどうなのかわかりませんが、特定のエリアの「次ページ」にだけ、表示させたいものがある場合を想定してみました。
「カテゴリページ」の「次ページ」にだけ表示させたいものがあるので、他の「次ページ」があるページエリアをはずして記述する、というものです。「カテゴリページ」には表示させたいわけですから、「カテゴリページ」ははずしません。
もしかすると、ここら辺で私がいったい何を検証しているのかわからないくなるかもしれませんので念のために書いておきますが、私は今、「<!--page_area-->」を検証しています。
「<!--page_area-->」は「次ページ」に対するエリア変数ですから、「<!--page_area-->」を記述した上で、「カテゴリページ」の「次ページ」にだけ表示させることが可能なのか、を調べてみたいわけです。(検証結果を書かなくても、この文章の内容で簡単に想像できると思いますけどねw)
<!--page_area-->
<!--not_index_area-->
<!--not_search_area-->
<!--not_tag_area-->
<!--not_date_area-->
ページエリア(次ページ)に表示させたい内容
<!--/not_date_area-->
<!--/not_tag_area-->
<!--/not_search_area-->
<!--/not_index_area-->
<!--/page_area-->
●トップページ:表示されない
●トップページの「次ページ」:表示される
●カテゴリ1:表示される
●カテゴリ1の「次ページ」:表示される
●その他のエリア:表示されない
●その他のエリアの「次ページ」:表示されない
<!--not_index_area-->
<!--not_search_area-->
<!--not_tag_area-->
<!--not_date_area-->
ページエリア(次ページ)に表示させたい内容
<!--/not_date_area-->
<!--/not_tag_area-->
<!--/not_search_area-->
<!--/not_index_area-->
<!--/page_area-->
●トップページ:表示されない
●トップページの「次ページ」:表示される
●カテゴリ1:表示される
●カテゴリ1の「次ページ」:表示される
●その他のエリア:表示されない
●その他のエリアの「次ページ」:表示されない
「<!--not_index_area-->」を記述しているのでトップページには表示されませんが、トップページの「次ページ」には表示されます。はずしたのはトップページだけ、だからです。
しつこいですが、「<!--page_area-->」は「次ページ」に表示させるという指示です。
「カテゴリページ」を外していないので(「<!--not_category_area-->」は記述していません)、「カテゴリページ」には表示されます。「カテゴリページ」の全てのページに(2ページ目、3ページ目にも)表示されます。
「カテゴリページ」以外のページをマイナスのエリア変数を使ってはずしました。なので、当然ですがその他のエリアには表示されません。
「次ページ」だから云々ではなく、その他のエリアのページ全てに表示されません。(マイナスのエリア変数とは、そのエリアには表示させないという指示なので当然です。)
トップページの話と混同しないでくださいね?
トップページ部分では「<!--not_index_area-->」を記述しているため、「トップページ」を指定して表示させないように指示しているのです。指示したのは「トップページエリア」ではありません。「トップページ」を名指しして「表示させない」という指示を出しているのです。(「index」です。「index」を表示させないという意味のマイナスのエリア変数を使っているのです。)
その他のエリアのマイナスのエリア変数は「index」限定ではありません。「そのエリアには表示させない」という指示ですから、トップページでは「次ページ」が表示されるからといってその他のエリアでも「次ページ」が表示されるとは思わないでください。
なので、もしも「カテゴリページ」まで外してしまったら、至極当然ですが、「カテゴリページ」全てに表示されません。「次ページ」とか関係ありません。
(5) 結論
◆「<!--page_area-->」を使っても、特定ページの「次ページのみ」に表示させることはできない
◆「<!--page_area-->」を使うと、必ず「トップページの次ページ」に表示される
◆「<!--page_area-->」を使うと、必ず「トップページの次ページ」に表示される
上記(4)を読まれたらご理解いただけると思いますが、「<!--page_area-->」というエリア変数を記述すると、絶対にトップページの2ページ目、3ページ目にもその内容が表示されることになります。これは絶対です。回避できません。
「トップページエリア」なるエリア変数が無いからです。
「トップページ」(「index」)を指定するエリア変数しかないのです。
いくら「<!--not_index_area-->」を記述してもそれはあくまでも「トップページ(インデックスページ)」に対する指示であり、「<!--page_area-->」がある以上、「トップページの次ページ」には表示されるのです。
また、どこかのエリアにのみ「次ページ」に表示させたい内容があって、その内容は他のエリアで表示させる必要が無いため、他のエリアをマイナスのエリア変数を記述して外したとしても、外さなかったエリアのページ全てに内容が表示されることは、(4)で検証した通りです。
つまり、特定ページの「次ページのみ」に何かを表示させることは不可能であり、その表示させたい内容は必ず「トップページの次ページ」にも表示されることになります。
なので、例えば「月別アーカイブページ」にだけ「次ページ」に表示させたい内容があったとしても、そんなことはできません。どこか特定のエリアの「次ページのみ」は無理です。
もちろん「次ページのみ」に表示させることが不可能なだけであって、「月別アーカイブページ」に表示させることは可能です。
「<!--page_area-->」を使ってごちゃごちゃ記述する必要など皆無です。
素直に「<!--date_area-->」(データエリアに表示させる)というプラスのエリア変数を使ってください。この場合は「次ページ」にも表示されますが、当然のことです。
しつこいですが、どこか特定のエリアの「次ページのみ」に表示させることは不可能なのです。
次の記事の紹介
次の記事では、マイナスのエリア変数「<!--not_page_area-->」について説明します。
■FC2ブログのエリア変数(3)ページエリア「<!--not_page_area-->」
FC2ブログには「エリア変数」という「変数」があります。「エリア変数」はその名の通り「エリア」に関する変数で、例えば「トップページに表示させる」とか「カテゴリページには表示させない」など、タグをHTMLに記述‥‥
FC2ブログには「エリア変数」という「変数」があります。「エリア変数」はその名の通り「エリア」に関する変数で、例えば「トップページに表示させる」とか「カテゴリページには表示させない」など、タグをHTMLに記述‥‥