UseModWiki소스수정/GetFullLinkList함수개선 페이지의 소스 보기
마지막으로 [b]
-- Loading page list... --
내용출력
로그인[l]
Diary
[f]
최근변경내역
[r]
페이지목록[i]
횡설수설[2]
게시판[3]
링크
수정할 수 없습니다: UseModWiki소스수정/GetFullLinkList함수개선 는 읽기 전용 페이지입니다.
== GetFullLinkList 함수에 파라메터 사용을 가능하게 함 == * [[역링크]]를 구현하는 과정에 파생된 부산물 * 이 패치만 가지고는 아무런 변화도 일어나지 않는다. * 기존에는 wiki.pl?action=links 화면에서, 추가로 몇 가지 옵션을 주소 입력창에서 넣어줄 수 있었다. ** unique, sort, page, inter, url, exists, empty, search 등 ** 예: wiki.pl?action=links&sort=0&url=1 * 위키 소스 내부에서 이 함수를 호출할 때도, 함수 파라메터로 위의 옵션을 받을 수 있게 수정했다. 옵션을 명시하는 방법은 주소 입력창에서와 동일하게, "옵션항목=값"의 쌍을 & 로 붙이면 된다. ** 예: &GetFullLinkList("sort=0&url=1"); * 위키소스를 수정하여 운영하는 과정에서, 이 함수에 어떤 옵션(예:sort=0)을 주어 호출하는데, 사용자가 브라우저 주소창에서 같은 옵션 항목에 다른 값(예:sort=1)을 지정하는 경우가 발생할 수 있다. 이런 경우 후자에게 우선권이 주어진다. (sort=1이 된다) : {{{#!vim perl sub GetFullLinkList { ### 다음 라인들을 추가 my ($opt) = @_; my $opt_item; my %args = ( # default 값 "unique" , 1, "sort", 1, "page", 1, "inter", 0, "url", 0, "exists", 2, "empty", 0, "search", "", "reverse", "" ); foreach $opt_item (split('&',$opt)) { if ($opt_item =~ /^(.+)=(.+)$/) { $args{$1} = $2; } } ### ... my ($pagelink, $interlink, $urllink); my (@found, @links, @newlinks, @pglist, %pgExists, %seen); ### 다음 라인들을 교체 # $unique = &GetParam("unique", 1); # $sort = &GetParam("sort", 1); # $pagelink = &GetParam("page", 1); # $interlink = &GetParam("inter", 0); # $urllink = &GetParam("url", 0); # $exists = &GetParam("exists", 2); # $empty = &GetParam("empty", 0); # $search = &GetParam("search", ""); $unique = &GetParam("unique", $args{"unique"}); $sort = &GetParam("sort", $args{"sort"}); $pagelink = &GetParam("page", $args{"page"}); $interlink = &GetParam("inter", $args{"inter"}); $urllink = &GetParam("url", $args{"url"}); $exists = &GetParam("exists", $args{"exists"}); $empty = &GetParam("empty", $args{"empty"}); $search = &GetParam("search", $args{"search"}); ### }}} ---- [[위키위키분류]]
UseModWiki소스수정/GetFullLinkList함수개선
페이지로 돌아가기 |
다른 수정본 보기