PHPでランダム表示
いろいろなコンテンツを追加してくると、サイド部分に表示されるコンテンツがダラダラと長くなってきます。メインの記事部分が長い場合はいいのですが、必ずしもそうとは限らないので、バランスが悪くなってきました。
そこで、サイドのコンテンツをある程度のカテゴリに分けてランダム表示にしたいなぁ、と思い立ち、探してみました。
まず見つかったのがコレ。
確率設定もできていい感じなのですが、改行不可なのが玉に瑕。これではJavaScriptのスクリプトが記述できないのでボツ。でも、一行広告なんかには使えそうです。まぁそれぐらいならJavaScriptで十分なんですが。
改行可のスクリプトを探したのですが、これがなかなか見つからない。そんな中でやっとのことで見つけたのがコレ。
データをランダムにする部分はCGIで、それをPHPやSSIでincludeして表示する仕様です。
データはブラウザで追加削除するなど本格的なCGIスクリプトなのですが、私のサーバではどうもうまく機能してくれません。
ここで気づいたのですが、ランダム表示って思ったより高度な処理を要求されるみたいですね。100件ぐらいならともかく、一万件にもなったらデータベースを使用しないとにっちもさっちも行かなくなるようです。
このスクリプトはデータベースを使用しない仕様で、今後データが肥大化したりなんかしたらヤバイことになりそうだったので、別の方策を模索することにしました。
ここで思いついたのがデータベース代わりにMTを利用する方法。プラグインの豊富なMTですから、エントリーをランダム表示するプラグインぐらいどこかに転がっているだろうと探してみたところ……
やっぱりありますプラグイン。
そしてこのプラグインとPHPを組み合わせてランダム表示を実現する方策を解説しているページがココ。
エントリーのランダム表示【詳細】(NOBODY:PLACE)
で、解説どおりに設置設定を行ってみたのですが……
Warning: flock(): 72 bytes of buffered data lost during conversion to FILE*! in /home/***********内緒♡***********/dispRandomEntry.inc on line 4
……_| ̄|○…………
PHPド素人+産毛レベルのワタクシでは手も足もでないので、スクリプト製作者さまに問い合わせてみました。
しばし返答待ち……ということで。
