2007年8月16日(木)

« 【ココログ】コメント展開表示ボタンを付けるスクリプト | トップページ | 苦笑せずにはいられない、ココログ・コメントのスパムフィルタ »

【ココログ】お知らせを表示するスクリプト

ページ(content)上部に任意のお知らせを表示するようなスクリプトを作ってみました。
ココログ管理画面の『トップに表示』と比較して、
  1. トップページ以外にも表示可能。
  2. 記事以外に、任意のテキストも表示可能。
  3. ココログフリーでも広告が表示されない(笑)。
という利点(?)が有ります。
設置方法は、サイドバー上のメモタイプのマイリスト等、HTMLを記述できるところに
<script type="text/javascript" charset="utf-8" src="http://furyu.tea-nifty.com/script/cocoInsertNotice.js"></script>
<script type="text/javascript">
(function(){
var c=cocoInsertNotice;
c.targetPage='toppage monthly category'; // 対象となるページ種別(toppage,category,monthly,weekly,daily,individualを半角スペースで区切って複数指定可能、またはallで全種別対象)
c.noticeKind['DEFAULT']='text'; // text:テキスト指定、entry:記事内容を取り込み
c.noticeEntry['DEFAULT']='http://~'; // お知らせとして取り込みたい記事のURL
c.noticeText['DEFAULT']='\
<div style="font-size:12px;color:brown;">\
<strong>【お知らせ】</strong>(サンプル)<br />\
<ul style="margin:4px auto 8px 16px;">\
<li>ページの最初にお知らせを表示できます。</li>\
<li>特定の記事をお知らせとして使用することが出来ます。</li>\
<li>ページ種別(トップページ・カテゴリー・バックナンバー・個別記事)に応じて表示/非表示を変更可能です。</li>\
</ul>\
</div>\
'; // end of notice
// お知らせを複数行にわたって記述する場合は各行の終わりに"\"マークを付けること。
// お知らせ内に"'"を記述したい場合は、"\'"とすること。

// === 処理の呼び出し
cocoInsertNotice.init();
})();
</script>
というようなものを貼り付けます。
すると、c.targetPageに指定されたページ(上記の例ではトップページ・月別バックナンバー・カテゴリー)の上部にお知らせが表示されると思います。
お知らせの内容は、c.noticeTextの中身を書き替えると変更できます。
もしくは、c.noticeKindで'entry'を指定し、c.noticeEntryで任意の記事のURLを指定すると、その記事の内容が表示されるようになりますので、該当記事を書き替えることで変更できます。
また、ページ種別(toppage,category,monthly,weekly,daily,individual)毎に独立した設定を追加することも出来ます。
例えば、c.targetPageにindividualを追加し、
c.noticeKind['individual']='text';
c.noticeText['individual']='(個別記事に表示したいお知らせ)';
のような設定を追加してやれば、個別記事にだけ表示するお知らせを指定できます。
同様に、
c.noticeKind['individual']='entry';
c.noticeEntry['individual']='(お知らせ用記事のURL)';
としてやることで、個別記事に表示するお知らせの内容を、特定の記事から引っ張ってくることも出来ます。
なお、拙作の目次スクリプトを使用している場合には、
cocoInsertNotice.init();
を削除し、代わりに、目次の設置用スクリプトのオプションとして、
cocoPView.onCompleteContent=function(){cocoInsertNotice.init();}
というのを追加します。
cocoPView.init_onload() もしくは cocoPView.getArchivesRequest()よりも前に追加してください。
【注意】
ページ(テンプレート)のタグ構造をある程度決め打ちしてしまっているため、対応可能なココログは限定されます。
ブックマークレット:お知らせを表示(サンプル)
をご自分のページで試してみて、上部にお知らせが出て来ない場合は未対応だと思って下さい。
ちなみに、このスクリプトは、OBOCCO さんの
冬至のかぼちゃ: ページの目次(タイトル)を付けた(訂正有り)
に付いたコメント
トップページのみ「ページの目次」の上に、
「お知らせ」、見て欲しい「カテゴリー」、「画像」等、
表示させるようなものは、出来ませんでしょうか。
記事作成の「下書き」を使って、表現を自由に変更出来たら、
最高です。
を反映してみたものです。
こんなもんでどうでしょうか?

この記事をニフティクリップβに追加 この記事をはてなブックマークに追加 2007/08/16(木) 08:30 | | 記事の編集(管理者用)

風柳へひとこと(web拍手) 

ウェブログ・ココログ関連」カテゴリの記事

トラックバック

この記事のトラックバックURL:

記事との関連性が薄いものやSPAM等、管理人が不適切と見なしたトラックバックについては予告無く削除する場合が有ります。悪しからずご了承下さい。

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/161784/16131427

この記事へのトラックバック一覧です: 【ココログ】お知らせを表示するスクリプト:

» 「お知らせを表示」をページ毎に変えてみた トラックバック 冬至のかぼちゃ
「お知らせを表示」する機能をつけたで、風柳さんのサンプルを、そのまま表示していた 続きを読む

受信: 2007/08/25 17:05:57

» 私のブログ(ココログ)カスタマイズ トラックバック ***Country Netlife***
参考になったHP・ブログのご紹介です。 ありがとうございます。《カラー》 TAG 続きを読む

受信: 2008/01/26 16:33:52

コメント

風柳さん、お早うございます。

上記スクリプトを丸写しでテストしましたところ、
私の問題児のIE6でも、無事表示されました。

お知らせに載せる内容を考える事が、楽しみになりました。
なんせ、中身の無いブログなものですから・・・。(^^ゞ

またも、私の夢を叶えて頂きまして、ありがとうございます。m(__)m

投稿: OBOCCO | 2007/08/16 11:06:14


ココログの掲示板で、
「お知らせを表示するスクリプト」
の文字を見て急いで飛んできました!!

ココログフリーのユーザーからしたらお宝のようなスクリプトで感激しました。。。涙
実装も上手くいき、大変感謝しております!!
ありがとうございました!!

投稿: Hachi-ko | 2007/08/19 10:22:24


Hachi-ko さん、どうもです。

気に入っていただけたようで幸いです。
記事でのご紹介もありがとうございます。

興味本位で気ままに作成しているスクリプトなんですが、利用した感想をいただけると、やっぱりうれしいものですね(^^)。

投稿: 風柳>Hachi-ko さん | 2007/08/20 22:19:50


こんにちは~♪
毎日暑いですね^^;お元気でしょうか?

こちらのスクリプトもお借りしました!
表示させる文章を書くときの法則(?)がイマイチ理解できずにかなり悪戦苦闘しましたが^^;
無事設置出来ました。

また素敵なスクリプト期待しています!
ありがとうございました~♪

投稿: tako | 2007/08/21 20:22:21


tako さん、ごぶさたしております。
ほんとに暑いですねぇ……夏の暑さと湿度に弱い私は毎日ふらふらです(x_x)。

記述方法ややこしかったですかね?
#JavaScript内に直接書こうとするとどうしても……

適当な名前のテキストファイル(UTF-8)に記述してアップロードしたものを、
c.noticeKind['DEFAULT']='entry';
c.noticeEntry['DEFAULT']='http://~';
で読込ませる方が、あるいは楽かも?

投稿: 風柳>tako さん | 2007/08/21 22:23:14


>記述方法ややこしかったですかね?

いやいや、私の理解不足です^^;
普段は出てこない「\」の使い方に過剰反応してしまったようです。
あと1個だけ「'」があったのを見逃してました(汗)

>適当な名前のテキストファイル(UTF-8)に記述してアップロードしたものを、
>読込ませる方が

あ、なるほど~。
そういう手もありますね!今度試してみます。
アドバイスありがとうございました♪

まだまだ厳しい残暑が続きそうですので、お身体注意して下さいね(^^)

投稿: tako | 2007/08/21 23:18:38


風柳さん、こんにちは。

ページ種別毎に、お知らせ内容を変えて表示が出来ました。
記事をアップしましたので、TBさせて頂きました。m(__)m

気になる点が、二つほど。
1.c.targetPage='toppage monthly category individual';にして
c.noticeKindで設定していないページに、
風柳さんの【お知らせ】(サンプル)が表示されます。
個別に設定する時は、表示しないページも設定する必要があるのでしょうか。

2.c.noticeKind['DEFAULT']='entry';を設定して、Firefox(2.0.0.6)で表示すると、
pagead2.googlesyndication.comを読み込もうとし、読み込み状態になります。
ページ種別を変えても、同じ現象が出ました。
IE6は、正常に表示されました。

解決策を、よろしく、お願い致します。m(__)m

投稿: OBOCCO | 2007/08/25 17:40:44


| 1.c.targetPage='toppage monthly category individual';にして

えーと、これはお知らせを表示したいページの設定になるので、例えばトップページとカテゴリー、個別ページだけを対象としたい場合には、
c.targetPage='toppage category individual';
とします(表示させたくない種別(例ではmonthly)は外してください)。

| 2.c.noticeKind['DEFAULT']='entry';を設定して、Firefox(2.0.0.6)で表示すると、
| pagead2.googlesyndication.comを読み込もうとし、読み込み状態になります。

あ、確かにココログフリーの場合はこうなるみたいですね……。
#うちのメインはココログプロなので見逃してました

スクリプト本体の方を修正してみました。いかがでしょうか?

投稿: 風柳>OBOCCO さん | 2007/08/25 22:54:42


1.について、申し訳ございません。m(__)m
ページ種別毎に表示する事に執着しておりまして、
対象にするページ種別の事を、すっかり失念していました。

2.について、残念ながら、Firefoxで同じ状況でした。
さらに、IE6では、記事タイトルだけ表示される様になってしまいました。
(取り急ぎのテストの為、バックナンバーだけテストしました)
もう少し、テストしてみます。

投稿: OBOCCO | 2007/08/25 23:50:20


すみません、こちらも取り急ぎでテストしたためミスしてしまっていたようです。
再度調整してみましたが、どうでしょう?

※なお、古いスクリプトがキャッシュに残っていることがありますので、[Ctrl]+[F5]で強制読込みかけてみてください。

投稿: 風柳>OBOCCO さん | 2007/08/26 7:33:08


こんにちは。
コメント、ありがとうございました。
遅くなって、すみません。m(__)m

お陰様で、Firefox、IE共正常に表示されました。
ありがとうございます。m(__)m

またまた思いつきですが、
1.「表示されたカテゴリーの説明」を表示する様に出来ますでしょうか。
今はカテゴリーの「お知らせ」内容を、無理やり「お奨めカテゴリー」にしてます。
カテゴリー毎の説明文のテキストファイルを作成し、カテゴリーを読み込んだ時に、
テキストファイルを切り替えるようなスクリプトを、c.noticeText['category']内に、
設定して表示するイメージです。

2.「記事内容取り込み」のタイトル無しの記事内容のみ表示は、可能でしょうか。
お知らせを「テキスト指定」して、内容を設定する時、新規で記事作成して、
お知らせ内容を書いて「HTML編集」内容をコピーしました。
HTMLの知識が無い私でも、記事は何とか書けますので、
「記事内容取り込み」が、タイトル無しに出来ると、楽になります。(^^ゞ
欠点は、URLを得る為、「お知らせ」用記事を「公開」して、
その後、「下書き」する事でしょうか。

もし、複雑になりすぎて表示が遅くなるようでしたら、本末転倒ですので、
無かったことにしてくださいませ。m(__)m

投稿: OBOCCO | 2007/08/26 11:54:33


| 1.「表示されたカテゴリーの説明」を表示する様に出来ますでしょうか。

機能追加してみました。
c.noticeKind['category']='text'; // テキスト指定
c.categoryText['ウェブログ・ココログ関連']='\
(ウェブログ・ココログ関連で表示したい内容)\
';
のように、c.categoryText['(カテゴリ名)']で、カテゴリ毎のテキスト内容を指定出来ます。
※指定していないカテゴリのページでは、c.noticeText['category']で設定した内容が表示されます。

また、
c.noticeKind['category']='entry'; // 記事指定
c.categoryEntry['ウェブログ・ココログ関連']='http://~';
とすれば、カテゴリ毎に記事の取り込みも出来ます。
※指定していないカテゴリのページでは、c.noticeEntry['category']で設定した内容が表示されます。

なお、c.noticeKind['category']='entry'; とした場合、指定するファイルは記事に限らず、文字コードがUTF-8であれば、単なるテキストファイルでも構いません。
なので、テキストファイルでお知らせを書いてファイルマネージャでアップロードしたものを
c.categoryEntry['(カテゴリ名)']='(テキストファイルのURL)';
で取り込むことも出来ると思います。

| 2.「記事内容取り込み」のタイトル無しの記事内容のみ表示は、可能でしょうか。

これはCSSの設定で可能です。
<style type="text/css">
#ccin_notice h3 {
display:none; /* お知らせ用記事のタイトルを非表示 */
}
#ccin_notice .posted {
display:none; /* お知らせ用記事のフッタ部を非表示 */
}
</style>
お試しください。

投稿: 風柳>OBOCCO さん | 2007/08/26 14:20:14


機能追加していただき、ありがとうございます。m(__)m
カテゴリー説明も、記事のタイトル無しも、問題なく機能しました。

思いつきにお付き合い頂き、重ね重ねお礼申し上げます。m(__)m

投稿: OBOCCO | 2007/08/26 15:46:33


はじめまして。
最近他ブログからココログに引っ越してきました。

フリーなのですが、
ブログ全体のcssは編集できてもhtmlの編集が効かないのが
ちょっとイタイところですね・・・

そこでお聞きしたいのですが

サイドバーにメモとしてブログパーツを設置しましたが、
使用しているのが横長のもので、半分しか表示されません。
(カーソルを置くと全部表示されますが)
なので、風柳さんの”表示されたカテゴリーの説明”欄に
リンクを貼ろうと思ってやってみました。
htmlですともちろん
<a href="http://~/></a>
の形なのですが、この場合どこに書き込みor書き換えすればよいでしょうか?

教えていただけると大変助かります☆

投稿: tomo | 2007/11/23 15:03:39


tomo さん、お返事遅れましてすみません。

お尋ねの主旨は、
・ブログパーツへのリンクを“表示されたカテゴリーの説明”欄に貼り付けたい

ということでよろしいですか?

その場合、例えば

c.categoryText['(設定したいカテゴリー名)']='\
<a href="http://~/">(リンクするブログパーツの説明)</a>\
';

で出来ると思うのですが……。

ご質問の意図を取り違えておりましたらすみません。
その場合は具体的に『こうやったけれどうまくいかなかった』、といったご報告(できましたら、その状態のブログへのリンクも添えて)を頂けましたら幸いです。

投稿: 風柳>tomo さん | 2007/11/26 20:24:25


「ココログフリーでも広告が表示されない(笑)。 」とありましたが、
「お知らせ」を設置しても広告が表示されました。
もう対策をとられたのでしょうか?

投稿: ひぃ | 2009/04/27 22:34:43


ひぃ さん、どうもです。

「ココログフリーでも広告が表示されない(笑)。 」は、「このスクリプトで表示したお知らせ中には」の意味です(「トップに表示」をお知らせがわりにしていると、お知らせ記事中に広告が出てしまうのと比較して)。

記事中に表示される広告を消す機能はもっておりません(スクリプトで消したりする行為は規約上禁止されているため)。悪しからず。

投稿: 風柳>ひぃさん | 2009/04/27 23:44:39


コメントを書く