danke für die tipps !
allerdings habe ich immer noch ein grundlegendes problem : mein syntax plugin bekommt via $ID jedesmal nur die id des äußeren containers - sprich im falle einer seite "start" die einen blog mit mehreren blog pages hat, bekomme ich via id jedesmal nur die id der "start" page anstatt die blog page id pro blog seite.
hier mal mein test plugin:
<?php
// must be run within Dokuwiki
if (!defined('DOKU_INC')) die();
if (!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
require_once(DOKU_PLUGIN.'syntax.php');
class syntax_plugin_orangevolt_digg extends DokuWiki_Syntax_Plugin {
function getInfo(){
return array(
'author' => 'Lars Gersmann',
'email' => 'lars.gersmann@gmail.com',
'date' => '2007-08-07',
'name' => 'Digg Plugin (digg component)',
'desc' => 'displays the digg component',
'url' => 'http://www.orangevolt.com/',
);
}
function getType(){ return 'substition'; }
function getSort(){ return 305; } // 305 means category
function getPType(){ return 'normal';}
function connectTo($mode) {
$this->Lexer->addSpecialPattern('\{\{digg>.+?\}\}',$mode,'plugin_orangevolt_digg');
}
function handle($match, $state, $pos, &$handler){
global $ID;
$mode = substr($match, 7, -2); // strip {{digg> from start and }} from end
return $mode;
}
function render($mode, &$renderer, $data){
global $ID, $conf, $INFO;
if ($data === false) return false;
// XHTML output
if ($mode == 'xhtml'){
$id = $ID;
$id = resolve_pageid('',$id,$exists);
$url = wl( $id, '', true);
$renderer->doc .= '<span class="digg">'.$data.',id='.$url.'</span>';
return true;
}
return false;
}
}
irgendwelche ideen ?
vielen dank schonmal im vorraus,
lars