質問箱/3360
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
**[[質問箱/3360]] [#hb250a08]
|RIGHT:70|LEFT:410|c
|~カテゴリ||
|~サマリ|下層ページのリスト表示|
|~バージョン|1.4.6|
|~投稿者|[[witi]]|
|~状態|完了|
|~投稿日|&new{2006-03-20 (月) 17:03:30};|
***質問 [#p6947c70]
親ページ~
├子ページ1~
│ ├孫ページa~
│ ├孫ページb~
│ └孫ページc~
└子ページ2~
├孫ページd~
└孫ページe
という階層構造があり、
親ページにa-eのページをアイウエオ順でリストにしたいのです...
コレは可能でしょうか。
「PukiWikiヘルプ」の「プラグインマニュアル」
のような感じにしたいのですが、ご助言をいただければ幸いで...
***回答 [#w3a115d5]
- [[プラグインマニュアル>PukiWiki/1.4/Manual/Plugin]]のよ...
- すみません。書き方がまずかったようです。要するにアイウ...
- ページ名にカタカナ(と/)だけ使う -- &new{2006-03-20 (月...
- ありがとうございます。ただ、その場合にも、1/a、1/c、1/e...
- たとえば、実際のページ名は1/a、1/c、1/e、2/b、2/dでも、...
- 標準のls/ls2では不可能。…つまりこういうことですか?
<?php
function plugin_lswiti_convert()
{
list($base,$level) = func_get_args();
$base .= '/'; $len = strlen($base);
foreach( get_existpages() as $fpname) {
if ( strncmp( $base, $fpname, $len) == 0 &&
substr_count( $fpname, '/') == $level ) {
$list[basename($fpname)] = $fpname;
}
}
ksort($list);
foreach( $list as $bn=>$fn ) {
$str .= "- [[$bn>$fn]]\n";
}
return convert_html($str);
}
?>
で、
#lswiti(親ページ,2)
他には…どこかに正規表現で指定できるlsがあったかもしれない...
- すごい!まさしくそういうことでした。早速、「ls3.inc.php...
- [[ls3は既に発表されています>自作プラグイン/ls3.inc.php]...
- おお!それは大変に申し訳ありませんでした。ls3を知りませ...
- 勿論、命名の由来は「witiさんの為(だけ)のls」ですよ。被...
- はい。本当に助かりました。どうもありがとうございました...
#comment
終了行:
**[[質問箱/3360]] [#hb250a08]
|RIGHT:70|LEFT:410|c
|~カテゴリ||
|~サマリ|下層ページのリスト表示|
|~バージョン|1.4.6|
|~投稿者|[[witi]]|
|~状態|完了|
|~投稿日|&new{2006-03-20 (月) 17:03:30};|
***質問 [#p6947c70]
親ページ~
├子ページ1~
│ ├孫ページa~
│ ├孫ページb~
│ └孫ページc~
└子ページ2~
├孫ページd~
└孫ページe
という階層構造があり、
親ページにa-eのページをアイウエオ順でリストにしたいのです...
コレは可能でしょうか。
「PukiWikiヘルプ」の「プラグインマニュアル」
のような感じにしたいのですが、ご助言をいただければ幸いで...
***回答 [#w3a115d5]
- [[プラグインマニュアル>PukiWiki/1.4/Manual/Plugin]]のよ...
- すみません。書き方がまずかったようです。要するにアイウ...
- ページ名にカタカナ(と/)だけ使う -- &new{2006-03-20 (月...
- ありがとうございます。ただ、その場合にも、1/a、1/c、1/e...
- たとえば、実際のページ名は1/a、1/c、1/e、2/b、2/dでも、...
- 標準のls/ls2では不可能。…つまりこういうことですか?
<?php
function plugin_lswiti_convert()
{
list($base,$level) = func_get_args();
$base .= '/'; $len = strlen($base);
foreach( get_existpages() as $fpname) {
if ( strncmp( $base, $fpname, $len) == 0 &&
substr_count( $fpname, '/') == $level ) {
$list[basename($fpname)] = $fpname;
}
}
ksort($list);
foreach( $list as $bn=>$fn ) {
$str .= "- [[$bn>$fn]]\n";
}
return convert_html($str);
}
?>
で、
#lswiti(親ページ,2)
他には…どこかに正規表現で指定できるlsがあったかもしれない...
- すごい!まさしくそういうことでした。早速、「ls3.inc.php...
- [[ls3は既に発表されています>自作プラグイン/ls3.inc.php]...
- おお!それは大変に申し訳ありませんでした。ls3を知りませ...
- 勿論、命名の由来は「witiさんの為(だけ)のls」ですよ。被...
- はい。本当に助かりました。どうもありがとうございました...
#comment
ページ名: