ページへ戻る

− Links

 印刷 

Ver 1.20 (Wikiレンダラー機能( pico用フィルターとか)) :: XOOPS マニア

xpwiki:xpWiki開発日記/2007-05-14


Tag: XOOPS[4] Wikiレンダラー[5] pico[6]
2007 5月 14 (月)
 

Ver 1.20 (Wikiレンダラー機能( pico用フィルターとか)) anchor.png[7] Edit [8]

Xoops Users Group Japan - picoにhtmlタグ(?)リスト希望[9] に触発されて、Wiki レンダリングエンジンとしての機能を簡単に利用できるように、XpWiki[10] クラスに transform メソッドを追加しました。

例として、pico[11] モジュール用のフィルターは次のように書くことができます。

filepico_xpwiki.php[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
32
33
34
35
<?php
 
define('_MD_PICO_FILTERS_XPWIKIINITWEIGHT',15);
 
function pico_xpwiki( $mydirname , $text , $content_row )
{
    @ include_once XOOPS_TRUST_PATH[13]."/modules/xpwiki[10]/include.php";
 
    if( ! class_exists( 'XpWiki[10]' ) ) die( 'xpWiki[10] is not installed correctly' ) ;
 
    // Get instance. option is xpWiki[10] module's directory name.
    // 引数は、xpWiki[10]をインストール[14]したディレクトリ名です。
    $wiki =& XpWiki[10]::getSingleton( 'xpwiki[10]' );
    
    // xpWiki[10] の動作を決定する設定値を変更できます。
    // $wiki->setIniConst( '[KEY]' , '[VALUE]' ); // $wiki->root->[KEY] = [VALUE];
    // $wiki->setIniRoot( '[KEY]' , '[VALUE]' );  // $wiki->cont->[KEY] = [VALUE];
    
    // ex, 改行を有効にする
    $wiki->setIniRoot( 'line_break' , 1 );
    // ex. レンダリングキャッシュをする
    $wiki->setIniRoot( 'render_use_cache' , 1 );
    // ex. レンダリングキャッシュの有効期限は新たにページが作成されるまで
    $wiki->setIniRoot( 'render_cache_min' , 0 ); // キャッシュ有効時間(分)
    // ex. 外部リンクの target 属性 '_blank'
    $wiki->setIniRoot( 'link_target' , '_blank' );
 
    
    // 第二引数は、xpWiki[10]のCSSを適用するためのDIVクラス名
    // 通常インストール[14]したディレクトリ名です。
    // CSS を適用しない場合は空白 '' でOK。
    return $wiki->transform( $text , 'xpwiki[10]' );
}
 
?>

オートリンク・外部オートリンクなども適用されます。

今回 pico をはじめてインストール[14]して試してみましたが、これ凄いイイですね。 :D

まだ、すべてを見ていませんが、固定コンテンツ作成にはめちゃくちゃ便利です。

Page Top

CVS更新内容 anchor.png[16] Edit [17]

Page Top

一行コメント anchor.png[20] Edit [21]

  • わー!すごーい。 早速試用します。 -- さとし編集[22] 2007-05-15[2] (月) 08:17:10
  • pico_xpwiki.php を更新しました。 -- nao-pon[18] 2007-06-03 (日) 11:03:44
  • XpWiki[10]オブジェクトの変数名が部分的に違っていましたので、修正しました。 :hammer: [worried] -- nao-pon[18] 2007-06-06[23] (水) 16:51:26
  • 自分のモジュールにも使ってみました。簡単に組み込めますね。すごい。 -- 氷川 霧霞編集[24] 2008-12-06 (土) 10:44:05



Last-modified: 2008-12-06 (土) 10:44:05 (JST) (6543d) by nao-pon