Я пытался сделать это как в моем плагине.Как разобрать и заархивировать содержимое внешней ссылки в плагине dokuwiki
function getType(){ return 'substition'; }
function getSort(){ return 299; }
function connectTo($mode) {
$this->Lexer->addSpecialPattern('@[email protected]',$mode,'plugin_externallink');
}
function render($mode, &$renderer, $data) {
print_r($data);
}
, но patten ничего не соответствует.
Вот пример разметки:
[[http://@[email protected]/test|testDomain]]
Существует одна важная вещь, чтобы отметить, лексер DokuWiki является последовательным. Вы не можете сопоставить что-то вроде '@. +? @' внутри ссылки, потому что шаблон интернационализации уже будет уничтожать весь блок' [[something]] '. Это не вопрос приоритета, а только потому, что он будет соответствовать ранее в строке ввода. – Cilyan