Nucleus

メインの目次ページで、prevlink, nextlink

2008年12月16日

Jeans CMSの製作過程において、Nucleusのさまざまなスキン変数を眺めているが、先日、<%prevlink%> <%nextlink%>の2つのスキン変数が、メインの目次ページでも使えることを知った。

ただし、<%if(previtem)%>などは使えない。これは、個別アイテムページ及びアーカイブページでのみ使えるようである。なので、次や前のページが無いときにリンクが表示されないようにするには、少し工夫が必要。

JavaScriptを用いれば、こんな風に使える。
<a href="<%nextlink%>" id="nextlink">older items</a>
<a href="<%prevlink%>" id="prevlink">newer items</a>
<script type="text/javascript">
function hide_link(id){
  var element=document.getElementById(id);
  if (element.href=="" || element.href==document.location)
    element.style.display="none";
}
hide_link("nextlink");
hide_link("prevlink");
</script>

NP_ShowBlogsやNP_PageSwitchを使うまでもないような、ちょっとしたページ遷移に便利かも。

コメント

きゃしゃ (2008年12月16日 18:55:02)

メインの目次ページでは、前後ページがないとき自動的に非表示になるように思います。
http://japan.nucleuscms.org/bb/fileeeeees/preview_large_849.png
[code]
<p><%prevlink(前のページ,5)%>|<%todaylink(最新)%>|<%nextlink(次のページ,5)%></p>
<div class="SkinVarblog">
<%blog(tutorial/main,5)%>
</div>
[/code]
アマウント揃えるのがキモ。
そういえば、<%if(archiveprevexists)%>が微妙に気色悪いですよねぇ。
と思ったらKatsumiさんが修正コード書かれてました。
http://japan.nucleuscms.org/bb/viewtopic.php?t=3738

Kat (2008年12月17日 23:02:16)

なるほど、linktextを指定すればいいのか…。どうも有り難うございます。

NP_PageSwitchインストール状態とそうでない状態の両方に対応したスキンが書けそうです。

archiveprevexists、そういえば1年前にデバッグのコードを書いてますね。もう一度見直してみます。良ければ次のバージョンに入れます。

コメント送信