Hallo zusammen,

bei der Verwendung von dr_wiki mit RealURL kann es je nach Version zu mehr oder weniger schwerwiegenden Problemen kommen:

- Leerzeichen im Keyword tauchen als Leerzeichen in der URL auf, was generell ungünstig ist.

- Bei manchen RealURL-Versionen werden die Leerzeichen in URLs beim Dekodieren in Pluszeichen umgewandelt, so daß vorhandene Wiki-Seiten nicht mehr gefunden werden. Z.B. wird aus "Verzeichnis der Artikel" das Keyword "Verzeichnis+der+Artikel".

Bisher habe ich dafür im Netz keine Lösung gefunden, nun aber selbst eine erstellt. Man kann dem mit einer angepaßten RealURL-Konfiguration entgegenwirken.

Im Bereich postVarSets verwendet man etwa folgendes:

'postVarSets' => array(
    '_DEFAULT' => array(
        // dr_wiki
        'wiki' => array(
            array(
                'GETvar' => 'tx_drwiki_pi1[keyword]',
'userFunc' => 'fileadmin/class.tx_realurlHelper.php:&tx_drwiki_realurlHelper->main',
            ),
            array(
                'GETvar' => 'tx_drwiki_pi1[showUid]',
            ),
            array(
                'GETvar' => 'tx_drwiki_pi1[cmd]',
            ),
        ),
    ),
),

Außerdem erstellt man die Datei fileadmin/class.tx_realurlHelper.php mit folgendem Inhalt:

<?php
class tx_drwiki_realurlHelper {
    // character to use instead of spaces
    var $spaceReplacement = '_';

    function main($params, $ref) {
        if ($params['decodeAlias']) {
            return $this->alias2id($params['value']);
        } else {
            return $this->id2alias($params['value']);
        }
    }

    function id2alias($value) {
        return str_replace(' ', $this->spaceReplacement, $value);
    }

    function alias2id($value) {
        return str_replace($this->spaceReplacement , ' ', $value);
    }
}
?>

Nun werden die Leerzeichen durch das in $spaceReplacement angegebene Zeichen ersetzt. Natürlich muß man darauf achten, daß dieses nicht in Keywords vorkommt.
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an