Если ли бы вы делали ваш код, как типичный плагин наследуемый от класса tslib_pibase, то в нем есть ряд функций для генерации ссылок:
PHP код:
function pi_getPageLink($id,$target='',$urlParameters=array())
function pi_linkToPage($str,$id,$target='',$urlParameters=array())
function pi_linkTP($str,$urlParameters=array(),$cache=0,$altPageId=0)
Они в свою очередь являются обертками для функции класса tslib_cObj - getTypoLink_URL() и getTypoLink().
PHP код:
function pi_getPageLink($id,$target='',$urlParameters=array()) {
return $this->cObj->getTypoLink_URL($id,$urlParameters,$target);
}
Есть способ формировать ссылки еще более "ядреным" методом:
PHP код:
$link = $GLOBALS['TSFE']->tmpl->linkData($page_id, '', $GLOBALS['TSFE']->no_cache, '', '', $params, $type);
Но так как это внутреняя функция, то документацию вы по ней вы вряд ли найдете - смотрите комментарии в коде ядра. Хотя тут все довольно очевидно, вам нужно менять только первый параметр - Id страницы.