[ 新規 ] [ 検索 | 一覧 | FrontPage ] [ 履歴 (RSS) | 差分履歴 (RSS) ] [ ログイン ]
【PR】Amazon | SL-C3000 | SL-C1000(3/18発売!) | SL-C860 | SL-6000W | SL-6000L | SL-6000N

WalWiki/カスタマイズ/リンク名短縮

差分表示


編集前の状態に戻します。
カテゴリ名を省略します。
リンク名を短縮します。

*グローバル変数定義
* [shrink linkname]

 my $category_name;                                          # yakty add [category auto link] [shrink linkname]
**make_link()内の変更

*init_form()内の変更

     # yakty add [category auto link] [shrink linkname] start
     if($form{mypage} =~ /^(.+?)\//){
         $category_name = $1;
     } else {
         $category_name = $form{mypage};
     }
     # yakty add [category auto link] [shrink linkname] end
 }

*toc_escape()内の変更

 sub toc_escape {
     my ($toc_text) = @_;
     #$toc_text =~ s/\[\[(\S+)( \S+)?\]\]/$1/g;                      # yakty del [shrink linkname]
     $toc_text =~ s/\[\[($category_name\/)?(\S+)( \S+)?\]\]/$2/g;    # yakty add [shrink linkname]
     $toc_text =~ s/''+//g;
     $toc_text = &escape($toc_text);
     return $toc_text;
 }

*make_link()内の変更

        if ($database{$chunk}) {
        # Walrus add [alias link] start
            my $subject = &escape(&get_subjectline($chunk, delimiter => ''));
            # yakty add [shrink linkname] start
            if(not $fixedpage{$form{mypage}}){
                $escapedchunk = ($escapedchunk =~ /^$category_name\/(.+)/) ? $1 : $escapedchunk;
            }
            # yakty add [shrink linkname] end
            return qq(<a title="$subject" href="$url_cgi?$cookedchunk">$escapedchunk</a>);
        } elsif ($page_command{$chunk}) {
         if ($database{$chunk}) {
         # Walrus add [alias link] start
             my $subject = &escape(&get_subjectline($chunk, delimiter => ''));
             # yakty add [shrink linkname] start
             if(not $fixedpage{$form{mypage}}){
                 my @linkchunk = split(/\//, $escapedchunk);
                 foreach (split(/\//, $form{mypage})){
                     last if(@linkchunk == 1);
                     last if($_ ne $linkchunk[0]);
                     shift(@linkchunk);
                 }
                 $escapedchunk = join("/", @linkchunk);
             }
             # yakdy add [shrink linkname] end
             return qq(<a title="$subject" href="$url_cgi?$cookedchunk">$escapedchunk</a>);
         } elsif ($page_command{$chunk}) {


02536