Hi Peter,
ok, I try a little bit more precise.
i'm working with typo3 since Version 3.3, and since 2 years i'm developing extensions.
Until today, there was no need to code userdefined tags as extensions.
My project is to give our users the opportunity to display some Information from a WebService. As you described in your note they should add a tag <mytag>Some Text</mytag> in the Content Element Body.
Now i tried to add a new userdefined tag with kickstarter.
I've choosed the USER_INT Method for non cached output.
I edited the main Function of the plugin, so that the Tag should be replaced with a simple 'TEST'.
Now i put a tag in a content element.
I cleared all possible caches, including the browser one.
When i viewed the page, there's nothing rendered.
Now i changed the USER_INT to USER.
As i reportet, then a HTML Comment is rendered.
The next step i tried is to disconnect the extension from the tag.
I changed the following:
tt_content.text.20.parseFunc.tags.test = < plugin.user_test_pi2
to
tt_content.text.20.parseFunc.tags.mytag >
tt_content.text.20.parseFunc.tags.mytag = TEXT
tt_content.text.20.parseFunc.tags.mytag.value = TEST
A further try to in the Frondend shows up the rightly replaced Tag with the word TEST. It works ...
Now i was searching for the sources, where the output of USER an USER_INT Objects is rendered.
I found the class tslib_content.php which is, for my opp., responsible for rendering the two cObj's.
I found this code and wondered, how this should work:
function USER {
$content='';
switch($ext) {
case 'INT':
$substKey = $ext.'_SCRIPT.'.$GLOBALS['TSFE']->uniqueHash();
$content.='';
$GLOBALS['TSFE']->config[$ext.'incScript'][$substKey] = array(
'file' => $incFile,
'conf' => $conf,
'cObj' => serialize($this),
'type' => 'FUNC'
);
break;
default:
$content.=$this->callUserFunction($conf['userFunc'],$conf,'');
break;
}
return $content;
}
My Problem is now, i'm not so deep in the content rendering Process that a can understand if there's an error.
i hope you can now better understand the problem an hopefully work on a solution for it.
Best regards,
Thomas Poth