[TYPO3-UG Rhein-Neckar] eigene Ext - Frage zu getTypoLink
Rinne
typo3 at ennir.de
Fri Jul 21 13:07:32 CEST 2006
Hai Joachim & die anderen,
hab geschaut und dabei übrigens folgende API gefunden:
http://doxygen.frozenkiwi.com/typo3/html/
schonmal erfreulich. Ausserdem hab ich verschiedene Funktionen
gefunden, wo es bei mir allerdings mit dem ansprechen hapert.
Wenn ich pi1/class.tx_fbbglf_pi1.php ändere
$str = $data['bodytext'];
#$content.= '<div class="ce_bodytext">'.main_plaintext($str).'</div>';
#$content.= '<div class="ce_bodytext">'.parseFunc($str).'</div>';
#$content.= '<div class="ce_bodytext">'.$data['bodytext'].'</div>';
$content.= '<div class="ce_bodytext" version="2">'.$str.'</div>';
kommt bei den auskommentierten folgender Fehler:
Fatal error: Call to undefined function: parsefunc() in
typo3conf/ext/fbbg_lf/pi1/class.tx_fbbglf_pi1.php on line 60
Ich glaube ja fest dran, das eine dieser Funktionen mir
den DB-Record in HTML umwandelt und die Links vernümpftig
erzeugt werden...aber was mache ich noch falsch?
vielen Dank und bis denne...
...rinne
PS: bist Du dir sicher mit 'htmlspecialchars($row['bodytext'])'
dazu hab ich nämlich nichts gefunden...
On Di, Juli 18, 2006 16:55, Joachim Streit wrote:
> Moin rinne,
> schau dir einfach mal tt_news an, das ist zwar super verwirrend am
> Anfang aber das ist sauber und sehr gut geschrieben.
>
> wenn du den bodytext wieder aus lesen willst und nicht weisst wie -
> schau dir mal ext. an die das machen ...
>
> d.h. ich kanns auch nicht wirklich ...
>
> htmlspecialchars($row['bodytext'])
>
>
> aber versuch mal in diese Richtung
>
>
> Grüße
>
> Joachim
>
>
>
> Rinne schrieb:
>> moin moin,
>>
>> hab folgende Probleme mit einer von mir selbst erstellten
>> Erweiterung, und vielleicht kann mir jemand von Euch helfen:
>> 1.es erfolgt für den bodytext aus tt_content keine Umwandlung
>> der Links, wie kann ich das mit getTypoLink machen?
>> 2.wie stelle ich meinen Redakteuren mein neues Formular in
>> der Auswahl der Seitentypen von neue Inhaltselemente zur
>> Verfügung?
>>
>> Etwas ausführlicher zu 1:
>> =========================
>> Hab eine eigene Erweiterung mit dem Ext.Kickstarter erstellt
>> um drei weitere Felder (2.Überschrift, Bild und Signatur) zu
>> bekommen, die ich für das Layout benötige. Hab es als Frontend-
>> Ext. gemacht und die DB-Felder wurden wie gewünscht in die
>> DB-Table: tt_content hinzugefügt.
>> Dann hab ich die Datei pi1/class.tx_fbbglf_pi1.php angepasst,
>> damit die neuen DB-Felder auch wieder ausgegeben werden. Fkt.
>> auch wunderbar (php-code siehe unten).
>>
>> Die Links erscheinen jedoch nun nur wie folgt im HTML-Code:
>> <LINK 166 - internal-link>Architektur</LINK>
>> nun hab ich gesucht, und es gibt ja in
>> /typo3_src/typo3/sysext/cms/tslib/class.tslib_content.php
>> die Funktion 'getTypoLink' -- Frage: was muss ich tun damit
>> "$data['bodytext']" dort richtig ausgewertet wird?
>>
>> zu 2:
>> =====
>> Ich möchte für diese Extension nun einen Eintrag in dem
>> 'New Content Element' wizard. Wenn ich in der Auswahl für
>> meine Ext. den Punkt
>> O 'Add to 'Insert Plugin' list in Content Elemen'
>> O 'Add icon to 'New Content Element' wizard:'
>> hätte er es mir automatisch hinzugefügt (unter Plugins)
>> ich möchte es aber unter 'Typischer Seiteninhalt' und habe
>> daher
>> x 'Add as a totally new Content Element type'
>> ausgewählt. Wo und Wie füge ich jetzt mein Icon hinzu??
>>
>>
>> Vielen Dank, freu mich über jede Hilfe....
>> ...rinne
>>
>> PS: wo kann ich denn eigentlich das gescheid mal nachlesen
>> bzw. wo gibt es gute HowTos oder Anleitungen zum bau
>> von eigenen Ext.? Gefunden hab ich bisher:
>> http://entwickler.com/itr/online_artikel/show.php3?nodeid=97&id=642
>>
>>
http://www.hachmeister.org/de/typo/tutorien/entwicklung/eigene-frontend-plugins-erstellen/
>>
>>
>> So, hier noch mein Code:
>>
>> ###################################################################
>> ## Code in pi1/class.tx_fbbglf_pi1.php:
>> ##################################################################
>> require_once(PATH_tslib.'class.tslib_pibase.php');
>>
>> class tx_fbbglf_pi1 extends tslib_pibase {
>> var $prefixId = 'tx_fbbglf_pi1'; // Same as class name
>> var $scriptRelPath = 'pi1/class.tx_fbbglf_pi1.php'; // Path to
>> this script relative to the extension dir.
>> var $extKey = 'fbbg_lf'; // The extension key.
>> var $pi_checkCHash = TRUE;
>>
>> /**
>> * Erweiterung von tt_content um drei weitere Felder (2.Überschrift,
>> Bild, Autor)
>> * hier werden nun diese Felder, die in tt_content hinzugekommen
>> sind, wieder
>> * ausgelesen.
>> */
>>
>> function main($content,$conf) {
>> $this->conf=$conf;
>> $this->pi_setPiVarDefaults();
>> $this->pi_loadLL();
>>
>> $contentUID = explode(":",$this->cObj->currentRecord);
>> $data = $this->pi_getRecord($contentUID[0],$contentUID[1]);
>>
>> $content = '<H2>'.$data['tx_fbbglf_abstract'].'</H2>';
>>
>> $content.= '<div
>> class="ce_topimage">'.$this->getImage($data['tx_fbbglf_topimage']).'</div>';
>>
>>
>> $content.= '<div
>> class="ce_bodytext">'.$data['bodytext'].'</div>';
>>
>> $content.= '<p
>> class="ce_author">'.$data['tx_fbbglf_author'].'</p>';
>>
>> return $this->pi_wrapInBaseClass($content);
>> }
>>
>> function getImage($imageName){
>> $imageConfig = $this->conf['images.'];
>> $imageConfig['file'] = 'uploads/tx_fbbglf/'.$imageName;
>> return $this->cObj->IMAGE($imageConfig);
>> }
>> }
>>
>> if (defined('TYPO3_MODE') &&
>>
$TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/fbbg_lf/pi1/class.tx_fbbglf_pi1.php'])
>> {
>>
include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/fbbg_lf/pi1/class.tx_fbbglf_pi1.php']);
>>
>> }
> _______________________________________________
> TYPO3-UG-rhein-neckar mailing list
> TYPO3-UG-rhein-neckar at lists.netfielders.de
> http://lists.netfielders.de/cgi-bin/mailman/listinfo/typo3-ug-rhein-neckar
>
>
More information about the TYPO3-UG-rhein-neckar
mailing list