Prodused by SAKI

This site is a personal works of "SAKI".
I hope there will be a much of fun contents and funny dreams.
Of coursse that is a future occurrence.
The Watchword is "Picture Yourself".

Count:15665(0/0)Bot:674108(13/26)
HOME>BLOG > Tips > BlognPlus改造(一般)

Attention!! Your Access is doubtful of Bot or Crawler.
 当サイトは日本国内からの正当なアクセスがなされることを前提にページを作成しています。
 BOTによるアクセスであると判断した場合は、画像や書庫ファイル、スタイルシートなどを廃した"情報"のみが表示されます。
 もし、そういった心当たりのない方でこのメッセージが表示された場合は、クッキーが保存されない、ユーザーエージェントにBOTを連想させる文字列が含まれている、海外Ploxy経由などの可能性があります。
 できましたら、正当な環境にてアクセスされますようお願いいたします。
 なお、ご不明な点や、どうしても現在の環境でのアクセスをご希望される場合は、メールフォームにて相談して頂ければ善処させていただきたいと思います。

MODE: ゲストモード

USER ID:
PASS:
ADMIN

TOP PAGE
サイトトップに戻ります

はじめに
このサイトの紹介です

更新履歴
このサイトの更新履歴です

掲示板
足跡を残してくれると嬉しい

リンク
他サイトへのリンクページです

INDEX
入口ページに戻ります

ARCHIVES
検索および過去記事

<前月 2024年12月 次月>
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31     

NEW ENTRIES
最近の記事

CATEGORIES
カテゴリ一覧

ACCESS RANK
閲覧回数ランキング

COMMENTS
最近のコメント

POWERED BY

 先ほど久しぶりにBlogn公式フォーラムを覗いたところ、携帯投稿などの際に「タイトル無し」で投稿した場合に記事タイトルが空白になってしまう現象について記述があり、興味本位で動作確認と対処法(「** タイトル無し **」で表示するようにする)を考えてみました。

 最初に驚いたのは「タイトル無し」でも普通に投稿できてしまうってことだったんですけどね。(笑)

続きを読む ≫
 ついさっき、自分でも携帯からタイトルを入力しないで投稿したところ、記事は普通に投稿され、表示もされているようです。やはり不都合は「タイトルが空白になっている」ことだけで、ページのソースを確認したらタイトルリンクもちゃんとAタグでくくってあります。
 ということは単に「タイトルがnull」なだけでそのまんま表示されているだけということになります。

 で「もしタイトルが空白であった場合に『** タイトル無し **』に差し替えてやる」という動作を行わせようと思うわけですが、おおもとの記事データを引っ張ってくる部分に割り込みをかけてやるのが変更箇所も少なくて汎用性もあるように思えるわけですが、実際にはデータベース関係のスクリプトに手を入れる必要が出てきそうなのでやめました。(textモードやSQLモードだとか面倒くさい)

 なので、少々やぼったい手法ですが以下の方法で実現できましたのでご紹介いたします。

 まず、index.phpの最後の方(?>の直前)に次の関数を記述します。


//add by SAKI start
function sx_blogn_nontitle($title){
 if($title){
  return $title;
 }else{
  return "** タイトル無し **";
 }
}
//add by SAKI end



 続いて、エディタの検索機能を使って「$val["title"]」という部分を検索してそのすべてを関数に書き換えてやります。


$val["title"] → sx_blogn_nontitle($val["title"])



 こうすることで、すべてのタイトル呼び出し部分において、もしそれが空白であった場合には「** タイトル無し **」を代わりに使用させるようになります。

 なお、この変更はindex.php内で「空白のタイトル」を強引に差し替えているだけなので、実際の記事データでは相変わらずタイトルは空白のまま保存されているので注意してください。

==========
※このカテゴリは、単に私(SAKI)の好みや興味によるBlognPlusの改造のTipsです。ご使用に当たっては自己責任でお願いいたします。

 個人的には「タイトル(件名)のないメール」というのはあまり感心しないので、余裕があるならちゃんとタイトルをつけてメールするようにする習慣をつけた方がいいとは思います。それだけでスパム扱いする人もいるようですしね。(よほどスパムにひどい目にあったのかな)

 それとも携帯では(non title)が普通なのだろうか? 職場の同僚も以前はよくタイトル無しで送ってきてたし……私自身は入力が面倒くさいので受け取るのはともかく、携帯からメールはあまりしない方なんですけどね。
(携帯メールも使いこなせないようでは立派な女子高生にはなれないぞ……ならへん、ならへん/爆)

==========
補足です。(今気付いた)

 左メニューの「NEW ENTRIES」を見ると、タイトル無し記事がまだ空白になっています。これは、BlognPlus2.6.0以降ではこのあたりの機能はモジュールによって記述されており、index.phpの外にあることによります。
 今回の変更と同様のことを各モジュールに施すことでちゃんと表示されるようになるだろうとは思いますが、とりあえず今は見送っておきますね。(いずれ過去記事の中に埋もれるでしょうし……なんてものぐさ。やはりデータベース関係のスクリプトに手を入れるべきだったのだろうか?)

≪ 続きを隠す

|2010,03,02, Tuesday 12:58 AM | comments (0) | trackback (0) |

 CJさん作の「タグ拡張モジュール」の機能のひとつである「続きの折りたたみ」に対して「続きを隠す」リンクをクリックした際にページ内の任意の場所(たとえば「続き」の最初や記事のタイトル)にジャンプするようにします。
 これにより「続き」が長文であった際でも、それを「隠した」ときに元の記事を見失うことがなくなります。


続きを読む ≫
 まず、一番簡単で、変更箇所の少ないものを紹介します。

[xtratags]ディレクトリ内のfunction.phpの25行目付近

        }

        $continue = '<a name="more-'.$eid.'" id="more-'.$eid.'"></a><div id="+'.$eid.'" class="xt_contshow"><a href="URL" onclick='xt_readmore("'.$eid.'",1);return false'>続きを読む ≫</a><noscript> (JavaScript を無効にしている方は<a href="./?e='.$eid.'">こちら</a>から)</noscript></div>
<div id="-'.$eid.'" class="xt_contmore">'.$more.'
<a href="URL" onclick='xt_readmore("'.$eid.'",0);location.hash="more-'.$eid.'";return false' class="xt_conthide">≪ 続きを隠す</a></div>';
    } else {
        $continue = "";


 赤字の部分を追加するだけです。
 この例では、続きを隠したときのジャンプ先が「続きを読む」の直前になります。これは変更箇所がfunction.phpの中だけで済みますので、お勧めといえばお勧めです。


 続いて、スキンのみを変更する場合です。
 スキンに記述した「続きの折りたたみ」のためのJavaScriptの部分を以下のように変更します。

// 「続きを読む」折りたたみ
function xt_readmore(xt_id,xt_flg){
  var strName;
  var strName0;
  var strName1;
  var strName2;
  if((xt_id=="")||(xt_id==null))return true;
  strName=xt_id;
  strName0 = "-" + strName;
  strName1 = "+" + strName;
  strName2 = "more-" + strName;
  if(xt_flg==0){
    document.getElementById(strName0).style.display="none";
    document.getElementById(strName1).style.display="block";
    location.hash = strName2;
  }else{
    document.getElementById(strName1).style.display="none";
    document.getElementById(strName0).style.display="block";
  }
  return true;
}


さらに、ジャンプ先に指定する場所に以下のようにジャンプ先を記述します。(LOGループの中にすること!)

    <a name="more-{XT_LOG_EID}" id="more-{XT_LOG_EID}"></a>{LOGCATEGORY} | 
    {LOGTITLE}

※{XT_LOG_EID}は記述のため全角の括弧({ })を使ってます。実際には半角で記述してください。

 この例では、ジャンプ先を各記事のタイトル部分に設定しています。
 汎用性という意味では、この方がいいかと思います。(このブログでも最終的にこちらにしました)


※このカテゴリは、単に私(SAKI)の好みや興味によるBlognPlusの改造のTipsです。ご使用に当たっては自己責任でお願いいたします。

------------------------------
 BlognPlusにはオリジナリティ溢れる優れたモジュールがいくつも発表されていますが、CJさん作の「タグ拡張モジュール」を使用されている方は多いかと思います。
 しかしながら「タグ拡張モジュール」が提供する機能のひとつである「続きの折りたたみ」に関しては、それほど使っている方は多くないと予想していました。(あまり見かけないのでそう思っていただけなのですが)

 このブログでもその「折りたたみ」機能を使っているわけですが、つい先ほど「BlognPlus ぶろぐん+ を育てよう!2」に、今回の要望が出されていたのを見て、この際だからということで手を加えてみました。

≪ 続きを隠す

|2009,10,28, Wednesday 12:52 AM | comments (6) | trackback (0) |

BlognPlus上で表示される「月別一覧情報」をJavaScriptによって年別に区分されるようにします。
同時に「年」部分をクリックすることで開閉式メニュー化を行います。
※これはBlognPlusのスキン上での工夫であり、モジュールではありません。

続きを読む ≫
 通常、BlognPlusの標準の「月別一覧情報」(ver2.6.0以降ではモジュールになっています)は、以下のように月別一覧情報は年月がセットで1行になるように構築されています。

(通常表示)
 2009年08月(12)
 2009年07月(12)
  ……
 2009年02月(12)
 2009年01月(12)
 2008年12月(12)
 2008年11月(12)
  ……
 2008年02月(12)
 2008年01月(12)
 2007年12月(12)
 2007年11月(12)
  ……
 2007年02月(12)
 2007年01月(12)
  ……

 長年ブログを使用していくと、これは際限なく行数が増えていきます。もちろん、管理画面(ver2.6.0以降ではモジュールの管理画面)にて表示される行数(年数)を制限することが可能ですが、その場合、それよりも過去の記事を参照することが難しくなってしまいます。
 そこでこれを、年だけの行数に圧縮して表示させてやります。

 2009年
 2008年
 2007年
 ……

 もちろん、それでは個別の月を参照できない、ということになるのですが、この「年」はJavaScriptにより開閉できる階層化メニューになっており、クリックすると、下記のように「月」部分が展開されて表示されます。

(「2009年」をクリックするとメニューが開く)

 2009年
   08月(12)
   07月(12)
   ……
   02月(12)
   01月(12)
 2008年
 2007年
 ……

(次に「2008年」をクリックすると2008年が開き、2009年は閉じる)

 2009年
 2008年
   12月(12)
   11月(12)
   ……
   02月(12)
   01月(12)
 2007年
 ……

 これにより、すべての過去記事に対する「月別一覧」を表示させつつも、必要最小限のスペースしか使わないといったことが可能となります。

 実装方法及び主要なスクリプトは下記のZIPファイルに収められていますので、ご使用になる方はダウンロードしてください。

[LINK]

 「日付別NEWENTRIES」と同様にかなり古いバージョンのBlognPlusから使用しています。(一応動作確認はVer 2.4.0 and 2.5.6 and 2.6.2にて行っています)

 なお、動作にJavaScriptを使っている関係上、携帯等スクリプトの使えないキャリアのスキンには使えませんのでご了承をお願いします。

※このカテゴリは、単に私(SAKI)の好みや興味によるBlognPlusの改造のTipsです。ご使用に当たっては自己責任でお願いいたします。
※実はかなり前に紹介していたTipsです。ファイル自体が消失してしまう前に再度公開させていただきました。(補完ということですね)

※月別一覧の行数の問題については、CJさん作のプルダウンメニュー化モジュールがまた別の方法で解決されておられます。長年BlognPlusをご使用になり、同様のお悩みをお抱えの方は、そちらもご参照してみてはいかがでしょうか。

≪ 続きを隠す

|2009,08,24, Monday 11:27 PM | comments (0) | trackback (0) |

BlognPlus上で表示される「新着情報」をJavaScriptによって日付別に区分されるようにします。
※これはBlognPlusのスキン上での工夫であり、モジュールではありません。


続きを読む ≫
 通常、BlognPlusの標準の「新着情報」(ver2.6.0以降ではモジュールになっています)は、以下のように新着情報は日付と記事タイトルがセットで1行になるように構築されています。

(通常表示)

 8/31 最新の記事
 8/31 2番目の記事
 8/31 3番目の記事
 8/30 4番目の記事
 8/29 5番目の記事
 8/29 6番目の記事
 8/31 7番目の記事

 これを、下記のように日付ごとにまとまるような表示に変更します。
 (実際の表示例は当ブログの左メニュー「NEWENTRIES」を参照)

(日付別表示)
 8/31
    最新の記事
    2番目の記事
    3番目の記事
 8/30
    4番目の記事
 8/29
    5番目の記事
    6番目の記事
 8/31
    7番目の記事

 つまり「カテゴリ一覧」や「新着コメント一覧」と同じ形のツリー表示にしてあげようというものです。表示の統一がはかられることから、例えばスタイルシートなどの工夫によって罫線付のツリー表示にしたりといったことも可能になります。
(というよりも、おおもとはそういった要望の実現のために組んだスクリプトだったりします)

 実装方法及び主要なスクリプトは下記のZIPファイルに収められていますので、ご使用になる方はダウンロードしてください。

[LINK]

 結構古いバージョンのBlognPlusの時からこのブログで使用していますので、今後BlognPlusの仕様が大幅に変わることがない限り使えるかと思います。(一応動作確認はVer 2.4.0 and 2.5.6 and 2.6.2にて行っています)

 なお、動作にJavaScriptを使っている関係上、携帯等スクリプトの使えないキャリアのスキンには使えませんのでご了承をお願いします。

※このカテゴリは、単に私(SAKI)の好みや興味によるBlognPlusの改造のTipsです。ご使用に当たっては自己責任でお願いいたします。
※実はかなり前に紹介していたTipsです。ファイル自体が消失してしまう前に再度公開させていただきました。(補完ということですね)

≪ 続きを隠す

|2009,08,24, Monday 10:53 PM | comments (0) | trackback (0) |



Copyright © 2008-2009 The Blue and Violet Storys All Rights Reserved.
当ページに掲載しているコンテンツの再利用(再転載・配布など)は、禁止しています。