如何在dokuwiki插件中解析和更改外部链接的内容

时间:2014-02-17 16:51:42

标签: parsing wiki dokuwiki

我试图在我的插件中这样做。

function getType(){ return 'substition'; }
function getSort(){ return 299; } 
function connectTo($mode) { 
  $this->Lexer->addSpecialPattern('@.+?@',$mode,'plugin_externallink');
}

function render($mode, &$renderer, $data) {
  print_r($data);
}

但是彭定康没有匹配。

这是标记示例:

[[http://@testDomain@/test|testDomain]]

1 个答案:

答案 0 :(得分:1)

我担心[[ ]]的内容会由internallink mode或外部链接处理。

这些模式未配置为接受任何其他模式(因为此处accepts实施了@..@

你能做的是:

  • 匹配整个模式。即:不仅仅是[[ ]]内的内容,而是internallink
  • 内的内容
  • 定义小于internallink(300)和外部链接(330)之一的优先级。 (因此,299已经很好了)

要处理它,您可能希望依赖renderer

的{{1}} doesn't accept anything