CGIなどのの質問を受付ます。
現在SPAM対策の為、一部ホストアドレスを規制中。
▼スレッド
│
└◇1197:Re[3]:nikの最新記事 [moon★] 10/17 13:36
└◇1199:Re[4]:nikの最新記事 [まだら] 10/17
└◇1200:ばーじょんあっぷ。5.53 [moon★] 10/18
└◇1201:Re:ばーじょんあっぷ。5.53 [まだら] 10/18 <
わざわざ調べていただきありがとうございます。スレッド一覧
結果だけいうと、動作的には仕様です。
最新記事の書き込みは以下のように書き込んでいます。
(書き込み・修正時に発動。修正時は先に最新LOGの自分のLOGを消す。)
1、最新LOGを読み込み
2、LOG数を数えて多い分は削除する
最新記事保存数以上ある場合削除。
時刻表示や閲覧ランクを設定している場合はカウント除外。
3、最新LOGの最初に記事を書き込み
読み出し時
1、最新LOG読み込み
2、最新ログの表示順により並び替え
3、表示
こう書き出してみると記録時に並び替えてないから変になると思うのです。
なぜ、書き込み時に並び替えをしていないかと言うと、「最新ログの表示順」を変更したら直後から表示が反映されるようにとのことだと思います。
これを解消するには、
・「最新記事保存数」を多くする というのを推奨します。
ただし、これだとTOPにページ繰り用のリンクが表示されます。
これが嫌な場合とりあえず以下のようにすれば解消されます。
A.nik.cgi 1680 行目辺り
# 記事トータルが表示設定数より少ない場合は消す(○件目〜○件目という表示が出てしまうので)
$totlehit = @line;
if ($logmax >= $totlehit) {
$totlehit = '';
}
を
$totlehit = ''; だけにする
B.5358行目辺り
# 並べ替え
#if ($sinsyo == 0) { @log = sort{$a <=> $b} (@log); }
#elsif ($sinsyo == 1) { @log = sort{$b <=> $a} (@log); }
を
# 並べ替え
if ($sinsyo == 0) { @log = sort{$a <=> $b} (@log); }
elsif ($sinsyo == 1) { @log = sort{$b <=> $a} (@log); }
として、並べ替えちゃう
というような対処があります。
TOPの最新記事のページ繰りリンクは嫌ですか?
> 結果だけいうと、動作的には仕様です。スレッド一覧
私がこちらの日記を使わせて貰い始めた頃(確か4.**くらい)は、過去記事を編集すると、それが何年前の物でも最新記事の一番下に入ってしまってました。
(でも、他のの記事を編集すれば入れ替わり、新規に書き込みすれば、真っ先に消えてました。間違っても一番新しい日付の物が代わりに消えるなんて事はありませんでした。)
それから暫くして、4.44でカレンダーの表示を直して貰ってからは、いくら過去記事を編集しても最新記事には挿入されなくなりました。
以降、今回5.5*にアップデートするまではこの様な状況にはならなくて、便利になったな〜と思ってたんですが、また新たに仕様が変わってしまったんでしょうか?
> 書き込み・修正時に発動。修正時は先に最新LOGの自分のLOGを消す。
これって、書き込み・最新記事にある記事の修正時に発動。ってな具合にはいかないものなんでしょうか?
> TOPの最新記事のページ繰りリンクは嫌ですか?
かなり抵抗があります。
どうしようもないと言う事でしたら、教えて頂いた対処方法、難しそうですが挑戦してみます。
私の力量不足が判明したら、以前のバージョンに…(^^;
> 以降、今回5.5*にアップデートするまではこの様な状況にはならなくて、便利になったな〜と思ってたんですが、また新たに仕様が変わってしまったんでしょうか?スレッド一覧
迷走しているので仕様はコロコロ変わります^^;;
一応変えてみましたわ。
こういう個人的にどちらでもいい仕様は先に言ったもの勝ちですね。
今回は、
読み込み→最新LOGにぶち込む→並び替え→記事があふれたら削除
としてるので、かなり過去の記事を編集したら最新に載りません(消えます)。
これでご希望通りの動作をすると思います。
> こういう個人的にどちらでもいい仕様は先に言ったもの勝ちですね。スレッド一覧
勝利!(笑)
どうもありがとうございます^^♪
早速のちほど差し替えさせて貰います〜。