BBS過去ログをインクルードして表示する
Joyfulyy BBS(掲示板)過去ログは、Joyfulyy CGIから見ることができますが、あまり見易いとはいえません。Joyfulyy BBS過去ログを独自のHTML内でPHPインクルードして表示する方法を試してみました。簡単にうまく表示できましたので紹介します。
Joyfulyy 掲示板の過去ログの生成とその形式
Joyfulyy BBS(掲示板)はとても高機能でバージョンアップが楽で良いのですが、現在サポートが停止しています。とても残念です。
Joyfulyy BBSの 過去ログ楽天 の形式はHTMLの一部で構成されています。つまりHTMLファイルです。現行ログの量が増えて、設定してある最大記事数を超えると、自動的に過去ログが生成されます。ファイル名は1.datとなります。
また過去ログは設定された行数(記事の数)を超えると自動的にファイル名が 2.dat 3.dat となって増えていきます。
試しにこの1.datのファイル名を1.htmとリネームしてブラウザで表示すると、一応見ることが可能です。これをCSS等やPHPを使って、ちゃんと表示させるのが今回の目的です。
PHP又はSSIで掲示板の過去ログファイルを読み込んで表示
Joyfulyy 掲示板の過去ログをそのままの拡張子で PHPで読み込むには次のようにします。これは実際に修理技術情報掲示板の過去ログを表示するのに使っています。
<?php include($_SERVER['DOCUMENT_ROOT']."/cgi/joyfulyy/past/101.dat"); ?>
つまり、PHPでインクルードして過去ログファイルを取り込みます。(詳しくは「外部メニューファイル」のページを参照してください)
もちろんSSIでインクルードして過去ログファイルを取り込むこともできます。その場合は次のようにします。
<!--#include virtual="/cgi/joyfulyy/past/101.dat" -->
また、HTMLの細かい表示方法はCSSファイルで指定します。(詳しくは「CSSコマンド」のページを参照してください)
段組のやり方は「段組レイアウト」のページを参照してください。ヘッドタグ内にもPHPで共通化されたファイルを取り込んでいます。詳しくは「ヘッドタグ内共通化」のページをごらんください。
PHPの場合、HTMLファイルの例は次のようになります。一部省略がありますし、分かり易くする為に、ファイル名が日本語になっていますが、実際はファイル名に日本語は使っていません。どうです、インクルードファイルばっかりで簡単に作れるでしょう。
PHPで記述したスクリプトの例
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb#"> <meta charset="shift_jis"> <?php $title = "修理技術情報掲示板過去ログ101"; ?> <head> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/ヘッドタグの内容.inc"); ?> </head> <body> <div id="main"> <h1><?php echo $title;?></h1> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/メッセージ.inc"); ?> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/広告上.inc"); ?> <?php include($_SERVER['DOCUMENT_ROOT']."/cgi/joyfulyy/past/101.dat"); ?> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/広告下.inc"); ?> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/メインメニュー.inc"); ?> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/過去ログメニュー.inc"); ?> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/フッターメニュー.inc"); ?> </div> <?php include($_SERVER['DOCUMENT_ROOT']."/inc/左側部.inc"); ?> </body> </html>
過去ログファイルをインクルードして表示する利点等
- 過去ログの拡張子が何であってもそのままインクルードできます。
- 段組や広告やメニューもインクルードして簡単に表示できます。
- 新しくページを作る時は、ページをコピーして簡単に変更できます。
- 静的なHTMLページとすることができるので、SEO的に有利です。多くの人に見てもらえます。
- グーグルのサイト内検索機能を使えば、サイト内のどこに書いてあるのか探すのが簡単です。
- 過去ログの拡張子が何であっても、内容がHTML形式なら、他のBBSプログラムにも適用可能です。(Joyful Note でも全く同様に可能です)
過去ログで画像を表示させる方法
Joyfulyy BBSの過去ログ画像は削除されるようになっています。もしこれを表示させたい場合は次のようにします。
現行ログに画像がある時点で、画像を別のフォルダにコピーしてサーバーにアップロードします。次に管理者権限で投稿を修正して画像の表示を次のようなタグで行ないます。画像はCSSのstyle設定で左寄せにしています。
<img src="http://ホームページアドレス/画像フォルダ/画像ファイル名" style="float:left" />
この方法だと、ファイルが過去ログに移動しても画像は元の過去ログ表示でも表示できますし、過去ログをインクルードしたページでも表示できます。
過去ログのファイルの大きさは適度にします
ひとつの過去ログのファイルの大きさ、つまり、コンテンツのテキストの量は適度な大きさにします。ファイルが大きすぎると、どこに何が書いてあるのか探すのに苦労します。そんなページは結局見てもらえません。
Joyfulyy BBSの標準では過去ログのひとつのファイルの大きさは600行になっているようですが、私はこれを12~15行程度にしています。(ひとつの投稿が1行です)掲示板によっては適度に増減する必要があります。