バージョン | 1.4.X |
---|---|
投稿者 | ytomi |
状態 | 完了 |
投稿日 | 2007-03-13 (火) 10:08:02 |
ページ名による分類をしていますが、既存の「ls2」プラグインは先頭からのパターンのみしか指定できないようです。 これを正規表現で指定できればページ名による分類の幅を持たせることができるので、是非欲しい。 他とえば、以下のようなファイル名分類が利用できたりできますよね。
A-B-XXX A-C-XXX B-A-XXX B-C-XXX
以下のようにして
#ls3(/^[AB]+-C-*/,)
A-C-XXX B-C-XXX
を選び出す。
--- ls2.inc.php.orig 2004-12-05 20:37:37.000000000 +0900 +++ ls2.inc.php 2007-03-13 11:46:54.910156800 +0900 @@ -64,7 +64,8 @@ $args = func_get_args(); $prefix = array_shift($args); } - if ($prefix == '') $prefix = strip_bracket($vars['page']) . '/'; + if ($prefix == '') + $prefix = '#^' . preg_quote(strip_bracket($vars['page']) . '/', '#') . '#'; array_walk($args, 'plugin_ls2_check_arg', & $params); @@ -89,9 +90,7 @@ $pages = array(); if ($prefix != '') { - foreach (get_existpages() as $_page) - if (strpos($_page, $prefix) === 0) - $pages[] = $_page; + $pages = preg_grep($prefix, get_existpages()); } else { $pages = get_existpages(); }
Warning: preg_match() [function.preg-match]: Compilation failed: missing terminating ] for character class at offset 2 in XXX on line NNN