Home | Info | Research | Blog | Repos | Messages | Contact Me

MoniWiki Customized Plugin

Contents

1 Link Macro

1 Link Macro #
MoniWiki 질문과 답변 게시판에 있던 것을 약간 수정했습니다.

[[Link(http://www.pyrasis.com, _blank, PYRASIS.COM)]]
[[Link(http://www.pyrasis.com, _blank)]]
[[Link(http://www.pyrasis.com)]]
[[Link(WikiPage, _blank, Wiki Page~~)]]
[[Link(WikiPage, _blank)]]
[[Link(WikiPage)]]
[[Link(InterMap:Page, _blank)]]

_blank, _new는 해당 URL이나 페이지를 새창으로 띄우고 _self는 그 창에서 그대로 이동합니다.

plugin/Link.php
<?php
# Usage: [[Link(pagename,target,name)]]
#        [[Link(intermap:pagename,target)]]

function macro_Link($formatter,$value) {
  global $DBInfo;
  list($url,$target,$name)=explode(',',$value);
  if ($url) {
    $url = trim($url);

    if ($target)
      $target = trim($target);
    else
      $target = "_blank";

    #interwiki
    if(strpos($url, ":") > 0) {
      list($inter,$page)=explode(':',$url);
      if($DBInfo->interwiki[$inter]) {
        $interurl = $DBInfo->interwiki[$inter];
        $img="<a href='$interurl$page' target='wiki'><img border='0' 
             src='$DBInfo->imgs_dir/interwiki/".
             strtolower($inter)."-16.png' align='middle' height='16' width='16' ".
             "alt='$inter:' title='$inter:' /></a>";
        return $img."<a href='$interurl$page' title='$url' target='$target'>$page</a>";
      }
    }

    if(strpos($url, "://") > 0) {
      if($name == null)
        return "<a href='$url' target='$target'>$url</a>";
      else
        return "<a href='$url' target='$target'>$name</a>";
    } else {
      return $formatter->link_tag($url, "", $name, "target='$target'");
    }
  }
  return '';
}
?>


Login | Title Index | Recent Changes | Edit | Page Info | Search | Subscribe

Copyright © 2003-2009 PYRASIS.COM,. All rights reserved.