カテゴリー「FsWiki」の2件の記事

2008年8月 6日 (水)

FsWikiをCMSに(2)

FsWikiをCMSに(1)の続き

■プラグインのインストールと設定

FsWikiでhtmlの入力を可能にするためには、下記の2つのプラグインを導入する必要があります。

1) 複数行プラグインを可能にするプラグイン

1)については上記の解説に記載されている通りプラグインをインストールするだけなので簡単です。

2) HTML直接記述プラグイン(要:複数行プラグイン/CPAN モジュール)

2)についてはCPANサイトから別途TagFilterを入手する必要があります。TagFilterはwikiを設置したディレクトリ下の<lib/HTML>に配置します。

標準的な設定では利用できるhtmlタグが限られていますので、必要に応じてプラグイン本体およびTagFilterをカスタマイズする必要があります。

■プラグインDirect.pmのカスタマイズ

<plugin/bp_html/Direct.pm>をカスタマイズします。Direct.pmの中に、

#=================
# ブロックプラグイン
#=================

というところがあります。その下の方に

$tf->allow_tags(
  {

   h2 => { class => ['any'] },h3 => { class => ['any'] },h4 => { class => ['any'] },
   h5 => { class => ['any'] },h6 => { class => ['any'] },h7 => { class => ['any'] },
   p  => { class => ['any'] },br => { class => ['any'] },hr => { class => ['any'] },
   blockquote => { class => ['any'], cite => ['any'] },
   pre => { class => ['any'] },
   ol => { class => ['any'] },ul => { class => ['any'] },li => { class => ['any'] },
   dl => { class => ['any'] },dt => { class => ['any'] },dd => { class => ['any'] }, 

   }

);

があります。ここに自分で利用したいタグを追加します。

例えば、<table>タグを使いたい場合は、

   table => { class => ['any'] },tr => { class => ['any'] },td => { class => ['any'] }

を加えます。JavaScriptを使いたい場合は

    script => { class=> any }

を加えます。<b>とか<i>など、また<a>や<img>は加える必要はありません。

■TagFilterのカスタマイズ

280行ぐらいに、allowed_by_default という関数があります。ここに使いたいタグを加えます。使いたいタグおよびそのタグで使う引数をすべて設定する必要があります。

例えば、<table>であれば

  table => { width => [], height => [], cellpadding => [], cellspacing => [], bgcolor => [], background => [], border=>[]  }

のようにします。<script>タグは

script => { src =>[], language => [], type => [] }

のようにします。下記のような設定も可能です。

  object => { classid => [], codebase => [],  height => [], width => []},
  param => { name => [], value => []},
  embed => { type => [], src => [], controller =>[], autoplay =>[], bgcolor => [], pluginspage => [], codebase => [], height => [], width => []},

■動作確認

設定が漏れていると、表示がおかしくなります。ブラウザでhtmlのソースを確認すると,設定が漏れたタグが消えていたり、タグがあっても設定が漏れた引数が消えていますので、確認してください。

人気ブログランキングへ

関連記事:FsWikiをCMSに

| | コメント (0) | トラックバック (0)

2008年7月31日 (木)

FsWikiをCMSに(1)

■はじめに

FsWikiはデータベース不要のperlで動くオープンソースのWikiです。

サーバにセットアップするのも簡単、導入後の管理も簡単。限られた機能ではありますが、ページを作成するのも非常に簡単です。プラグインを導入することにより、いろいろな機能を追加できることも魅力的です。

最近、サイトを構築するときにはFsWikiを使っています。使い方としては、本来のWikiとしての使う場合と、htmlなどを記述できるようにすることによってCMS(Contents Management System)として使う場合があります。

このブログではFsWikiをCMSとして使う場合の自分のメモを防備録的に紹介したいと思います。あわせて、スタイルシートの設定や、FsWikiを通常のWikiとして使う場合のメモも紹介します。自分のメモですから、Webサーバの知識や、FsWikiの知識をある程度有している人にしか参考にならないかもしれませんが、FsWikiを導入できるレベルの人で、ここはどうするんだろうと悩んでいる人には役に立つメモになるかなと思います。

FsWikiの作者のたけぞうさん、そしてプラグインを作成している多くの方々に敬意を表明し、感謝します。

■FsWikiをセットアップしたら

FsWikiをセットアップしたら、まずは管理者adminでログインしてユーザーの設定を変更します。まず最初にadminのパスワードを変更します。あるいは、新しい管理者を作成してログインしなおし、adminを削除します。guestもパスワードを変えるか、必要なければ削除します。

■CMSとして使う場合の絶対条件

CMSとして使う場合、本来のWikiのように誰でもページを作成できるようにすることを想定していけません。JavaScriptやiframeを含むhtmlを動かしますので、誰でも編集できるようではセキュリティ的に問題があるからです。

つまり、CMSとして使う場合には、管理者もしくは限られたユーザーだけがページを編集できるようにしておく必要があります。

この設定はFsWikiに管理者でログインしたときに出てくる「環境設定」で行うことができます。

権限による制限という項目を下記のように設定します。

ページの作成・編集:ログインユーザーのみ可能
添付ファイルの削除:ログインユーザーのみ可能

ページの閲覧とページの参照権限のデフォルト値は目的に応じて設定すると良いでしょう。通常のサイトならば、誰でも可能で良いはずです。

■htmlを入力できるようにするために必要なプラグイン

htmlを動かすのに必要なプラグインは2つです。上記の設定変更をしたら、下記の2つのプラグインを導入します。

1) 複数行プラグインを可能にするプラグイン

2) HTML直接記述プラグイン(要:複数行プラグイン/CPAN モジュール)

この2つを導入すると、htmlを記述できるようになります。利用できるタグはCPANのTagFilter.pm に依存していますので、この内容をカスタマイズする必要があります。そのままですと、非常に限られたタグしか動きません。TagFilter.pmについては次回に。

関連記事:FsWikiをCMSに

人気ブログランキングへ

| | コメント (0) | トラックバック (0)