ブロック要素のユーザー定義をプラグイン化

メッセージ

ユーザー定義のうち、RIGHT:やCENTER:などブロック要素のものはプラグイン化しないとダメ。

プラグイン化しないと、<p>~<p>の中に埋め込まれてしまうため。 なお、表組み(table)の中では従来通りRIGHT:やCENTER:が使用できる。

サンプル(align.inc.php)

<?
// $id$

function plugin_align_convert()
{
	if(func_num_args()!=2) {
		return;
	}
	$aryargs = func_get_args();
	$string = htmlspecialchars($aryargs[1]);
	$string = inline2($string);
	$align = strtoupper($aryargs[0]);
 
	if($align == 'R' || $align == 'RIGHT') {
		$align = 'right';
	}
	elseif($align == 'C' || $align == 'CENTER') {
		$align = 'center';
	}
	else {
		$align = 'left';
	}
 
	return "<div style=\"text-align:$align\">$string</div>";
}
? >

これはサンプルで、実用のためには$stringにWikiName、BracketName、ユーザー定義や画像のURLなどが含まれている場合の処理などが必要となります、対象文字列内に注釈とユーザー定義のうちソースを直接書き換えるもの(now?など)は入れることはできません。COLORやSIZEのようなユーザー定義は大丈夫です。

同様に、ユーザー定義でブロック要素を定義している場合は、プラグイン化する必要があります。



*1 illegalですが、こんな書き方をしている人がいないとも限らない

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2002-12-02 (月) 12:37:02
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.250 sec.

OSDN