=
3.84.186.122

Daschmi's Notizblog

RSS Feed

Inhalt einer Seite in Extension laden und ausgeben

Erstellt in TYPO3 am 3. Februar 2014

Um in einer TYPO3 piBase Extension den Inhalt einer Seite in einer Extension einzulesen und auszugeben, kann folgender Code verwendet werden:


/* UIDs der Content Elemente */
$uids = array(12, 13, 14);

$response = $this->cObj->RECORDS(array(‚tables‘ => ‚tt_content‘, ’source‘ => $uids, ‚dontCheckPid‘ => 1));

Keine Lightobx bei ContentType „Image“ / Inhaltselement „Bilder“

Erstellt in TS Schnipsel, TYPO3 am 21. Januar 2014

Bei TYPO3 (Version 6.1.1) und der Extension Perfectlightbox (Version 3.1.4) tritt ein Problem auf wenn man Sie bei dem Inhaltselement „Bilder“ verwenden will. Abhilfe schafft folgender TS Schnipsel:

#
# Notlösung perfectlightbox EXT für Typo3 ab V6.x
#
  tt_content.image.20.1.imageLinkWrap {
  JSwindow = 0
  directImageLink = 1
  typolink.ATagParams {
    dataWrap = rel="lightbox[lb{field:uid}]"
    if.negate = 1
    if.isTrue = TEXT
  }
  typolink.ATagParams.if.isTrue.field = image_link
  typolink.ATagParams.if.isTrue.listNum < .typolink.parameter.listNum
}

Links in TYPO3 in einer Action im Controller generieren

Erstellt in Extension Entwicklung, TYPO3 am 12. Januar 2014

Um mit extbase Links in einem Controller zu generieren kann folgender Code verwendet werden:

$data[$k][‚detail_url‘] = $this
->controllerContext
->getUriBuilder()
->reset()
->setArguments(array(‚test‘ => ‚1‘))
->setTargetPageUid($this->settings[‚list_detail_pid‘])
->setCreateAbsoluteUri(true)
->buildFrontendUri(); 

Flexform mit Extbase und Fluid

Erstellt in Extension Entwicklung, TYPO3 am 2. Januar 2014

Möchte man sein TYPO3 Extbase Frontend Plugin mit Flexform konfigurieren, so muss in der ext_tables.php folgender Code verwendet werden:

$extensionName = t3lib_div::underscoredToUpperCamelCase($_EXTKEY);
$pluginSignature = strtolower($extensionName).’_frontend‘;
$TCA[‚tt_content‘][‚types‘][‚list‘][’subtypes_addlist‘][$pluginSignature] = ‚pi_flexform‘;
t3lib_extMgm::addPiFlexFormValue($pluginSignature, ‚FILE:EXT:‘.$_EXTKEY.’/Configuration/FlexForms/flexform_frontend.xml‘);

Die Flexformdatei muss dann unter /typo3conf/ext/{extensionkey}/Configuration/FlexForms/flexform_frontend.xml abgelegt werden und kann z.B. so aussehen:

<T3DataStructure>
<sheets>
<sDEF>
<ROOT>
<TCEforms>
<sheetTitle>List Ansicht</sheetTitle>
</TCEforms>
<type>array</type>
<el>
<settings.display_cols>
<TCEforms>
<exclude>1</exclude>
<label>Sichtbare Spalten</label>
<config>
<type>select</type>
<items type="array">
<numIndex index="0" type="array">
<numIndex index="0">Preis</numIndex>
<numIndex index="1">1</numIndex>
</numIndex>
<numIndex index="1" type="array">
<numIndex index="0">Marke</numIndex>
<numIndex index="1">2</numIndex>
</numIndex>
</items>
<maxitems>100</maxitems>
<size>5</size>
</config>
</TCEforms>
</settings.display_cols>
</el>
</ROOT>
</sDEF>
</sheets>
</T3DataStructure>

Wenn man die Felder im XML mit dem Prefix settings. versieht kann man im Controller einfach wie folgt zugreifen:

…
$this->cols = explode(‚,‘, $this->settings[‚display_cols‘]);
…

Statische Klassen mit TYPO3/Extbase

Erstellt in Extension Entwicklung, TYPO3 am 27. Dezember 2013

Statische Klassen für Helper etc. können unter /Classes/Utility/{ClassName}.php abgelegt werden und sollten innerhalb des Namensraums \{VendorName}\{PackageName}\Utility liegen. Der Aufruf von Methoden erfolgt dann über \{VendorName}\{PackageName}\Utility\{ClassName}::{Methodenname} aufgerufen werden.

 



Bitte genehmigen Sie die Verwendung von Cookies dieser Website! Mehr Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen