BugTrack/683
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
RIGHT:&size(12){Category:[[:Plugin]]};
*recent,popular等で長いページ名を見やすく [#af0a340b]
-ページ: BugTrack
-投稿者: Lick
-優先順位: 低
-状態: 提案
-カテゴリー: プラグイン
-投稿日: 2004-09-10 (金) 09:50:19
-バージョン:
**メッセージ [#sabbfe0b]
階層が深くなると表示されるファイル名が長くなるのでそれだ...
一つ一つ対象外にしていけばいいのですが量が多いとそれもま...
そこで、一定階層以下の物は%%recentなどの対象に含めないよ...
----
#contents
----
自分で短縮表示したくなったので、本件の改造をしてみました...
Win2k、WinXP + anhttpd1.40p + php5.2.3にて確認
*仕様 [#p574cb5a]
#recent()に第二引数を追加し、"short"、"abbreviate"が...
**"short" [#pe9e8725]
最後の/より後のみ表示する。/がない場合は全部。
**"abbreviate" [#b2b8e3b7]
深さが3以上の場合は
最初/.../おわり
という表示をする。文字列の長さは見ていない。深さが2以下の...
*改造内容 [#aec42f76]
**引数部 [#we104ee8]
-usage
20c20
< define('PLUGIN_RECENT_USAGE', '#recent(number-to-show)...
---
> define('PLUGIN_RECENT_USAGE', '#recent(number-to-show[...
-format check
33c33
< if (! is_numeric($args[0]) || isset($args[1])) {
---
> if (! is_numeric($args[0]) || isset($args[2])) {
**表示部 [#b13f9ec6]
-第二引数が'short'の場合、最後の/より後ろのみを表示する。...
-第二引数が'abbreviate'の場合、最初の/以前 + ... + 最後の...
71c71,92
< if($page == $vars['page']) {
---
> switch(isset($args[1]) ? $args[1] : '')
> {
> case 'short':
> $strtmp = explode("/", $s_page);
> $disp_pagename = array_pop($strtmp);
> break;
> case 'abbreviate':
> $strtmp = explode("/", $s_page);
> $depth = count($strtmp);
> if($depth >= 3)
> {
> $disp_pagename = $strtmp[0] . '/.../' . $strtmp[...
> }
> else
> {
> $disp_pagename = $s_page;
> }
> break;
> default:
> $disp_pagename = $s_page;
> }
> if($page === $vars['page']) {
73c94
< $items .= ' <li>' . $s_page . '</li>' . "\n";
---
> $items .= ' <li>' . $disp_pagename . '</li>' . "\n";
78c99
< ' title="' . $s_page . $passage . '">' . $s_page ....
---
> ' title="' . $s_page . $passage . '">' . $disp_pag...
----
*コメント [#hb4d98f1]
-こんにちは。コメントありがとうございます :) 階層の概念を...
-提案の論点は「ページ名が長い場合にMenuBarに表示させたrec...
-短縮形というのも素敵なアイデアですね。URLの表記も ttp:ex...
-短縮表記ですか。そうしてもいいですね。そもそも対象に含め...
-短縮表記に関してはls3プラグインなんかが参考になったりす...
--むむぅ、あれみたいに階層名をばっさり切ってしまうと困る...
- 短縮する部分は、次のように正規表現の方がソースはすっき...
--'short' : $disp_pagename = preg_replace("#.*/(.*)#", "$...
--'abbreviate' : $disp_pagename = preg_replace("#(.*?/).*...
- いくつかの問題点をあげます。 -- &new{2007-06-21 (木) 2...
-- isset($args[1]) をしていないので、第二引数を省略した時...
--- こちらの環境(PHP5.2.3)ではエラーが出てくれないんです...
--- あ~、こっちの環境(PHP 4.3.11)では出たんですけどね~...
おわびと言えるほどではないですが、# contents を追記してお...
--- そんなところに設定があったのですね。php.iniの設定が上...
-- if($depth >= 2) としているので、配列が2個(/が1個)の...
--- お恥ずかしい^^; ご指摘の二つ、修正しました。ご指摘、...
#comment
終了行:
RIGHT:&size(12){Category:[[:Plugin]]};
*recent,popular等で長いページ名を見やすく [#af0a340b]
-ページ: BugTrack
-投稿者: Lick
-優先順位: 低
-状態: 提案
-カテゴリー: プラグイン
-投稿日: 2004-09-10 (金) 09:50:19
-バージョン:
**メッセージ [#sabbfe0b]
階層が深くなると表示されるファイル名が長くなるのでそれだ...
一つ一つ対象外にしていけばいいのですが量が多いとそれもま...
そこで、一定階層以下の物は%%recentなどの対象に含めないよ...
----
#contents
----
自分で短縮表示したくなったので、本件の改造をしてみました...
Win2k、WinXP + anhttpd1.40p + php5.2.3にて確認
*仕様 [#p574cb5a]
#recent()に第二引数を追加し、"short"、"abbreviate"が...
**"short" [#pe9e8725]
最後の/より後のみ表示する。/がない場合は全部。
**"abbreviate" [#b2b8e3b7]
深さが3以上の場合は
最初/.../おわり
という表示をする。文字列の長さは見ていない。深さが2以下の...
*改造内容 [#aec42f76]
**引数部 [#we104ee8]
-usage
20c20
< define('PLUGIN_RECENT_USAGE', '#recent(number-to-show)...
---
> define('PLUGIN_RECENT_USAGE', '#recent(number-to-show[...
-format check
33c33
< if (! is_numeric($args[0]) || isset($args[1])) {
---
> if (! is_numeric($args[0]) || isset($args[2])) {
**表示部 [#b13f9ec6]
-第二引数が'short'の場合、最後の/より後ろのみを表示する。...
-第二引数が'abbreviate'の場合、最初の/以前 + ... + 最後の...
71c71,92
< if($page == $vars['page']) {
---
> switch(isset($args[1]) ? $args[1] : '')
> {
> case 'short':
> $strtmp = explode("/", $s_page);
> $disp_pagename = array_pop($strtmp);
> break;
> case 'abbreviate':
> $strtmp = explode("/", $s_page);
> $depth = count($strtmp);
> if($depth >= 3)
> {
> $disp_pagename = $strtmp[0] . '/.../' . $strtmp[...
> }
> else
> {
> $disp_pagename = $s_page;
> }
> break;
> default:
> $disp_pagename = $s_page;
> }
> if($page === $vars['page']) {
73c94
< $items .= ' <li>' . $s_page . '</li>' . "\n";
---
> $items .= ' <li>' . $disp_pagename . '</li>' . "\n";
78c99
< ' title="' . $s_page . $passage . '">' . $s_page ....
---
> ' title="' . $s_page . $passage . '">' . $disp_pag...
----
*コメント [#hb4d98f1]
-こんにちは。コメントありがとうございます :) 階層の概念を...
-提案の論点は「ページ名が長い場合にMenuBarに表示させたrec...
-短縮形というのも素敵なアイデアですね。URLの表記も ttp:ex...
-短縮表記ですか。そうしてもいいですね。そもそも対象に含め...
-短縮表記に関してはls3プラグインなんかが参考になったりす...
--むむぅ、あれみたいに階層名をばっさり切ってしまうと困る...
- 短縮する部分は、次のように正規表現の方がソースはすっき...
--'short' : $disp_pagename = preg_replace("#.*/(.*)#", "$...
--'abbreviate' : $disp_pagename = preg_replace("#(.*?/).*...
- いくつかの問題点をあげます。 -- &new{2007-06-21 (木) 2...
-- isset($args[1]) をしていないので、第二引数を省略した時...
--- こちらの環境(PHP5.2.3)ではエラーが出てくれないんです...
--- あ~、こっちの環境(PHP 4.3.11)では出たんですけどね~...
おわびと言えるほどではないですが、# contents を追記してお...
--- そんなところに設定があったのですね。php.iniの設定が上...
-- if($depth >= 2) としているので、配列が2個(/が1個)の...
--- お恥ずかしい^^; ご指摘の二つ、修正しました。ご指摘、...
#comment
ページ名: