FCafe  新着マーク 3

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

  さて、ツリー化で始まりツリー化に終わった6月でありましたが、そろそろ別の話題を。
ナビリスト関連では 「コメント」や「TB」、「最近の記事」のリスト項目に「新着マーク」 を追加表示するスクリプトも昨年御提案させて戴いておりますが、今回はそれについて再考してみたいと思います。

新着マーク表示スクリプトにはオリジナルタイプと Odinテンプレートに搭載の 「段階型」との二通りがありますが、そのどちらも先月取り上げたような後置型のツリー化スクリプトと相性がよろしくない、という問題がありました。  昨年までの私の(レベルが規定する)スクリプトスタイルが「埋め込み型」であった為であります。
「ツリー化したナビリストにも新着マークを表示したい」
「新着マーク付きのナビリストをツリー化したい」
という場合に結構面倒だった訳ですが、今回 自ら後置型のツリー化スクリプトを発表させていただいたのを機に、これ(ら)と併用可能なタイプの『新着マーク表示スクリプト』を考案いたしましたので発表します。


【 設置法 】  ナビリストを以下のような構成にします。

・・・
<!--リスト始-->
・・・
<a href="URL" title="・・・" class="time年月日時">・・項目内容・・</a>
・・・
<!--/リスト終-->
・・・
・・・ の部分は任意

以下はコメントリストの場合の 一例です( 「ツリー化」にも対応)

<div class="jtree">
<ul><!--rcomment--><li>
<a
 href="<%rcomment_link>#comment<%rcomment_no>"
 title="<%rcomment_etitle>≪<%rcomment_title>"
 class="time<%rcomment_year><%rcomment_month><%rcomment_day><%rcomment_hour>">
<%rcomment_month>/<%rcomment_day> <%rcomment_name>
<!--<%rcomment_etitle>-->
</a>
</li><!--/rcomment--></ul>
</div>

全リストの後~ </body> タグ手前 に以下のスクリプトを書きます

<script type="text/javascript"><!--
function New(){
if (document.getElementsByTagName){
var Mark='<font color="red">New</font>';
var LIMIT=48;
if (LIMIT>240){LIMIT=240}
var T=new Date();
var Y=T.getFullYear();
var M=T.getMonth();
var D=T.getDate();
var H=T.getHours();
 if (H>=LIMIT) {H=H-LIMIT} else {
  var L2=Math.floor(LIMIT/24);LIMIT=LIMIT%24;
  if (LIMIT<=H) {H=H-LIMIT} else {H=H+24-LIMIT;L2++}
  D-=L2; if (D<1) {
   if (M==4 || M==6 || M==7 || M==9 || M==11) {D+=30}
   else { if (M==2) {D+=28} else {D+=31} } 
   if (M==0) {Y--;M=11} else {M--}
 } }
T=Y*1000000+(M+1)*10000+D*100+H;
var A=document.getElementsByTagName('A');
for (i=0;i<A.length;i++){
 if(A[i].className){ if(A[i].className.indexOf("time")==0){
  if (eval(A[i].className.split("me")[1])>T) {
   A[i].innerHTML=A[i].innerHTML+Mark;
} } } } } }
New();
//--></script>
 

【 使用法 】   リストの形式は問いません。(単なるリンクの羅列でも新着マークは付きます)
項目中の Aタグに time で始まる以下のような内容のクラス名を付加します。
time[年変数][月変数][日変数][時変数] timeという文字列、年・月・日・時刻変数の間にスペース等は置かず連続させます。
スクリプトソースの以下の部分は各自適宜に設定されてください。
Mark という変数の内容は新着印としてAタグ内末尾に追加されるタグです。
( 勿論 imgタグ等も使用できます )
LIMIT という変数の内容は新着として扱われる期限(単位は時間)です。

【 解 説 】  今回のスクリプトは「埋め込み型(タグを「書き出す」方式)」であった従来のものとは異なり、先月のツリー化スクリプトと同様、既存のHTMLを改変するタイプとなっています。
スクリプトは ページ中のAタグの内、クラス名冒頭が"time"となっているものを調べ、条件が適合するものに新着印を付け加えて行きます。  以前は各項目毎に日付形式に変換して「新着であるか否か」を判定していた方式も、最初に「基準値」を設定し、 その値と各項目の値をそのまま比較する方式に改めました。
( class="time2006070412" という数字部分のみの大小を比較します )
⇒ これにより処理が高速化され、グローバル変数も不要となっています

 「ツリー化」との併用が容易となったのも今回のスクリプトの特徴であると言えます。
当店から御提供中のツリー済みナビリスト(プラグイン)の内、新着印表示が意味を持つと思われる Tree-Comment、 Tree-TB、 Tree-Recent については既に(7月に入って直に)このスクリプトに対応可能な形にソースを改定済みです(6月中にDLされた方は再DLしてから当スクリプトを適用されて下さい)。
また、非ツリー化ナビリスト(プラグイン)である  (Rcomment/ RTB/ Recent)-mini シリーズも同じく今月頭に対応処置を終了済みです。 宜しければお試しを

Comment

ははどん ははどん Edit
10/25 17:00

こんばんは。
また、質問があり書き込ませ頂きます
NewMarkをDLし、プラグインカテゴリー3に入れています。
Newが出るかテストにコメントも入れてみました。
Blogの左側にNewMarkと言う項目が追加されています。

”全リストの後~ </body> タグ手前 に以下のスクリプトを書きます”
と、あるのですが、これは使っているテンプレートに書き加えるのでしょうか?
すごく初歩的な質問で申し訳ありません。
お手数をお掛けしますがどうぞ宜しくお願いします。<(_ _)>

daniel daniel Edit
10/25 18:10

こんばんは。 
プラグインNewMark はこの記事のソースと(ほぼ)同じものです。
DLされたのであればテンプレートに設置する必要はありません。
他のプラグインより後(最後)に表示されるようにされてください

ははどん ははどん Edit
10/25 19:19

他のプラグインより後に表示されるようにしていますが
新しいコメント(10/25にテストでコメント)にはNewがつきません。
他に何かしなければいけませんか?

daniel daniel Edit
10/25 19:49

すいません。 
ははどんさんには 「裏」バージョンを御紹介してたのでしたね。
これはNewMark以前の製品で そのままでは新着印が付かないのです。
対応させて頂きますので暫くお時間を下さい

ははどん ははどん Edit
10/25 20:04

そうだったんですか。
どうぞ宜しくお願いします。<(_ _)>

daniel daniel Edit
10/26 18:46

おまたせしました 黄色いBBSの方にソースをUPいたしました。
http://otd12.jbbs.livedoor.jp/317013/bbs_index?base=790&range=1

ははどん ははどん Edit
10/27 08:17

こんなに早く対応して頂いてありがとうございます。<(_ _)>
早速、変更させて頂きました。
どうもありがとうございました。

ははどん ははどん Edit
10/27 15:03

すみません、また質問なんですが、
左メニューにNewMarkと言う項目が出たままなんですが
これはしかたがないことなんでしょうか?
それとも、表示しなくすることが出来ますか?

daniel daniel Edit
10/27 15:30

NewMarkプラグインは中身は表示されませんが、
タイトル(プラグイン名)は他と同様に表示されます。
( 特に機能上は問題ありません )
プラグインブロックの中で出力される場合、
このプラグインだけタイトルを表示させないようにするには
「名前」を空白にしなければなりません
(それでもタイトル「枠」は出てしまいます)
プラグインブロックのタイトル部のタグを削除する、
という手もありますが、他のプラグインも名前が消えます。
⇒ テンプレート(プラグインブロックの後ろ)に直接書く、
という手もありますが・・・

ははどん ははどん Edit
10/31 15:20

表示されているのが普通ならそのままにしておこうと思います。
ありがとうございました。<(_ _)>

はなこ はなこ Edit
05/17 18:57

NEWマークを画像で表示したいのですが…var Mark='<font color="red">New</font>';の箇所を
var Mark='<img src="画像URL">';としてみたのですが
表示されないようです…。(恐らく間違いですね…汗)
どのようにしたら良いかお教えいただけたら嬉しいです。

どのようにしたら

daniel daniel Edit
05/17 21:23

はなこさんこんばんは。 
新着印を画像で表示している方はいらっしゃいますよ。
この頁のスクリプトをお使いなら (デフォルトで赤文字のNewが出ているなら)
その方法でOKな筈ですが。

URLの記述違いとか色々原因は考えられますが、
はなこさんのblogに関する情報が何もありませんのでお答えのしようがありません

はなこ はなこ Edit
05/17 21:32

ご丁寧に有り難うございます。
プラグインのHTMLを修正しプレビューしたのですが
NEWの文字のままで画像に変更されなかったので
お尋ねしたのですが、設定ボタンを押した上で確認しましたら
問題なく表示されました!
(プレビューが効かなかっただけなようで…すみませんでした…汗)
お尋ねしなかったら諦めてしまうところでしたが、
御丁寧なお返事をいただけ恐縮です。
ありがとうございました!

hassaku hassaku Edit
07/01 08:39

プラグイン「NewMark」も更新してください。
フォーラムで不具合報告が入りました。
http://blog.fc2.com/forum/viewtopic.php?f=2&t=22239&p=88709#p88709

daniel daniel Edit
07/01 09:47

あややや 
これはhassakuさん御報せ感謝です。 さっそく修正させて頂きます。 

hassaku hassaku Edit
07/03 10:42

早速の対応ありがとうございます。

mananan mananan Edit
09/25 03:16

またしても…… こんばんは!またしても借り物競争的に、共有テンプレートを出させていただいたので、ご報告だけ……。今回は「NewMark」と「プルダウンリスト」をお借りしました。デザインがちょっとナニですが、デザインテーマのほうがアレですので、お許しください!

daniel daniel Edit
09/25 23:24

おお これはまたユニークなテンプレをお作りになられましたね。
カフェテンプレの時も 「おょょ」 て感じでしたが
manananさん(阿檀さんも)マジ ビビらせてくれますね~
私はテーマ系はてんで駄目ですが、 
(最近少ないみたいですし) ○ダルト専用テンプレでも作ってみますかね~ 

 ・ ・ ・ しかし未だにFC2アルバムがポシャった悔しさから立ち直れん . . .

- - Edit
09/28 12:18

管理人のみ閲覧できます このコメントは管理人のみ閲覧できます

daniel daniel Edit
09/29 23:50

おこんばんは
いや~ いけませんな。
「あゃゃ このコメント"承認"できねぇよ 」  て焦ってしまいました。
(データブログの夢と共にFC2リテラシーも退縮しつつあるようです)

・・・『仮面ライター』 すか 。 む~ん 。


.  
HN Title URL PW secret

TrackBack http://pcafe.blog3.fc2.com/tb.php/339-f047df4c

Shown after Admisson
FC2ブログのテンプレート工房 *
FCafeを運営するdanielさんが、記事別に最新コメントを表示できる共有プラグイン 「Tree-Comment」 を公開してくれています。 【参考記事】 FCafe pl...
Manannan Mac Lir *
デザインテーマDT「5ハロウィン」参加。幅800pxの画像が置ける写真/イラストブログ向け「ほぼ1」カラム。月別画面等では画像を表示しないので...
.

≫ NewMark & Yggdrasil 教授室 ≪

2006 / 07 / 04  Tue
Navigation   
Comment 20 / TB 2 / Edit
Designed by Daniel Corporation . all rights renounced
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。