Beitrags-Archiv für die Kategorie 'TYPO3'

RealUrl in eID-Service verfügbar machen

Dienstag, 25.03.2014 21:34

Benötigt man innerhalb eines eID-Services einen RealUrl-konformen Link, muss man etwas nachhelfen:

Innerhalb der eid_main – Methode fügt man folgende Zeilen hinzu:

if(t3lib_extMgm::isLoaded('realurl')){
require_once(t3lib_extMgm::extPath('realurl').'class.tx_realurl.php');
$this->realurl = t3lib_div::makeInstance('tx_realurl');
$GLOBALS['TSFE']->config['config']['tx_realurl_enable'] = 1;
}

und an entsprechender Stelle:

$conf['LD'] = $GLOBALS['TSFE']->tmpl->linkData(array('uid' => $targetPageUid), '', 0, 'index.php', '', t3lib_div::implodeArrayForUrl('', array('param1' => $param1)));
$url = $conf['LD']['totalURL'];

Die Methode linkData ist definiert:
t3lib_TStemplate::linkData($page, $oTarget, $no_cache, $script, $overrideArray = '', $addParams = '', $typeOverride = '')

und ist hier auch noch mal beschrieben.

 

Anmerkungen gern hier in den Kommentaren.

Thema: TYPO3 | Kommentare (0) | Autor:

Mehrsprachige News auch ohne Default-Übersetzung

Dienstag, 03.12.2013 20:20

Im Normalfall legt man im TYPO3 eine News zuerst in der Standardsprache an und legt dann zu dieser News die Übersetzungen an.

Möchte man nun eine News nur in einer speziellen Sprache erstellen, ohne vorher die News in der Default-Sprache zu erstellen, hilft man sich mit folgendem TypoScript-Schnipsel im tt_news-TypoScript-Setup:


plugin.tt_news.sys_language_mode = strict
plugin.tt_news.showNewsWithoutDefaultTranslation = 1

Thema: Extensions, TYPO3, TypoScript | Kommentare (0) | Autor:

Eindeutige ID für Body-Tag

Dienstag, 09.07.2013 19:03

Manchmal möchte man Elemente, die auf verschiedenen Seiten wiederkehren, für spezielle Seiten per CSS formatieren. Lösungsansätze gibt es hierfür verschiedene. Inhalts-Elemente besitzen ja schon eigene IDs (c123), über die man das Element ansprechen kann.

Dennoch ist es manchmal von Vorteil, der BODY-Tag hätte eine eigene ID (oder Klasse), über die man alle Inhalte innerhalb ansprechen kann.

Dazu ist folgendes TypoScript (Setup) notwendig:

page.bodyTag >
page.bodyTagCObject = TEXT
page.bodyTagCObject.field = uid
page.bodyTagCObject.wrap = <body id="page-|">

Wenn wir jetzt noch eine Klasse hätten, die auch noch die ID der übergeordneten Seite ausgäbe, so wäre es natürlich noch besser.

page.bodyTag >
page.bodyTagCObject = TEXT
page.bodyTagCObject.field = uid
page.bodyTagCObject.wrap = <body id="page-|" class="parent-{field:pid}">

Thema: TYPO3, TypoScript | Kommentare (0) | Autor:

Rechte-Problem trotz Admin

Sonntag, 23.12.2012 11:19

Bei der aktuellen (4.7.7) Version von TYPO3 wurde das Anlegen von neuen Inhaltselementen mit der Meldung „Sorry, you didn’t have proper permissions to perform this change.“ (oder auf deutsch: „Sie haben nicht die nötigen Rechte, um diese Änderung durchzuführen“) abgebrochen. Trotz angemeldeten Admin-Nutzers.

Hierbei scheint es sich um einen Bug im TYPO3 (bzw. TemplaVoilá) zu handeln (http://bugs.typo3.org/view.php?id=18583). Dabei scheint TemplaVoilá auf ein Feld in der pages-Tabelle zugreifen zu wollen, das aber nicht mehr existiert.

Abhilfe schafft ein einfacher Trick, nämlich das Feld einfach wieder hinzuzufügen:

ALTER TABLE pages ADD t3ver_swapmode tinyint(4) NOT NULL default '0'

Bei einem Versionsupgrade kann es beim „Compare“ im InstallTool schnell mal passieren, dass ein Feld aus der Datenbank entfernt wird, da dieses TYPO3 selbst nicht mehr benötigt. Fremd-Extensions (wie in unserem Fall TemplaVoilá) sind darauf natürlich nicht vorbereitet.

Thema: TYPO3 | Kommentare (0) | Autor:

cObj in Scheduler-Task verwenden

Mittwoch, 31.10.2012 13:02

Scheduler-Tasks haben nicht den vollen Umfang aller TYPO3-Funktionen zur Verfügung, da diese ohnehin oftmals nicht benötigt werden. Manchmal braucht man aber spezielle Funktionen/Methoden, um z.B. Bilder rendern zu lassen oder mit HTML-Templates arbeiten zu können. Hierzu wird oft das cObj benötigt, welches im Scheduler-Task aber nicht vollständig vorliegt bzw. komplett fehlt.

Hierzu sorgen folgende Zeilen für Abhilfe:

chdir(PATH_site);
if(!$GLOBALS['TSFE'] instanceof tslib_fe){
    $GLOBALS['TSFE'] = t3lib_div::makeInstance('tslib_fe', $GLOBALS['TYPO3_CONF_VARS'], 0, 0);
    $GLOBALS['TSFE']->config['config']['language'] = null;
    $GLOBALS['TSFE']->initTemplate();
}
if(!isset($GLOBALS['TT'])){
    $GLOBALS['TT'] = t3lib_div::makeInstance('t3lib_TimeTrackNull');
}
$GLOBALS['TSFE']->tmpl->getFileName_backPath = PATH_site;
$cObj = t3lib_div::makeInstance('tslib_cObj');

Thema: Extensions, TYPO3 | Kommentare (3) | Autor:

Standard-Überschrift eines FCE verwenden

Freitag, 26.10.2012 18:33

Das Standard-Überschrift-Feld wird bei Flexible Content Elements (FCE) nicht ausgegeben. Wenn man dies aber möchte (z.B. im aktuellen Fall für eine Akkordion-Funktionalität), hilft etwas TypoScript (Setup):

tt_content.templavoila_pi1.10 < lib.stdheader

Man beachte: Diese Zeile TypoScript schaltet das Überschrift-Feld für alle FCE´s frei! Man sollte also – wenn man diese dann nicht verwenden möchte – explizit auf „nicht ausgeben“ stellen.

Thema: TYPO3, TypoScript | Kommentare (1) | Autor:

Keine Thumbnails mehr auf 1&1 Server

Freitag, 06.07.2012 19:32

Auf 1&1-Servern wurden keine Thumbnails mehr dargestellt. Nach längerer Suche haben wir endlich eine Lösung gefunden.

Abhilfe schafft hierbei eine zusätzliche Zeile in der localconf.php (vor den Kommentar: „## INSTALL SCRIPT EDIT POINT TOKEN – all lines after this points may be changed by the install script!“):

putenv('MAGICK_THREAD_LIMIT=1');

Dabei setzt putenv die Umgebungsvariable MAGICK_THREAD_LIMIT auf 1.

Thema: TYPO3 | Kommentare (0) | Autor:

Statt Icons nur noch drei Punkte im Extension Manager

Mittwoch, 09.05.2012 20:26

Sollten im Extension Manager statt den Icons zum (de-)installieren nur noch drei Punkte erscheinen, so hat dies mit dem neuen Firefox (12) und einem Bug im Extension Manager zu tun.

Abhilfe schafft hier ein Workaround, indem man in der typo3/sysext/em/res/css/t3_em.css ab Zeile 283 statt

.paddingNoActionIcon img {
    margin-right: 20px;
}

jetzt

.paddingNoActionIcon img {
    margin-right: 5px;
}

schreibt. Der Bug ist auch hier beschrieben.

Thema: TYPO3 | Kommentare (0) | Autor:

Zeichen ersetzen per TypoScript

Mittwoch, 28.03.2012 06:35

Um per TypoScript Zeichen oder Worte durch andere (oder auch bestimmte Zeichenfolgen durch ein Bild) zu ersetzen, kann man mit folgendem Snippet arbeiten (hier am Beispiel des gesamten Page-Bereichs):

page.stdWrap.parseFunc.short.meineFirma  = <span class="highlight">meineFirma</span>

Diese Zeile bewirkt, dass überall auf der Seite, wo „meineFirma“ vorkommt, dieser Name mit der angegebenen Phrase („<span class="highlight">meineFirma</span>“) ersetzt wird. Natürlich sind auch Mehrfachanweisungen möglich:

page.stdWrap.parseFunc.short {
	alterFirmenname  = <span class="highlight">neuerFirmenname</span>
	alterGeschaeftsfuehrer = <span class="highlight">neuerGeschaeftsfuehrer</span>
	schreipfeler = Schreibfehler
}

Thema: TYPO3, TypoScript | Kommentare (0) | Autor:

Probleme mit RealUrl und jQuery Tabs

Mittwoch, 14.12.2011 16:40

Bei der Arbeit mit jQuery Tabs in Verbindung mit RealUrl tauchte das Phänomen auf, dass im aktiven Tabinhalt die Seite selbst dargestellt wurde. Dies setzte sich endlos fort, bis der Browser voll lief. Nach einiger Recherche wurde klar, dass sich RealUrl und jQuery Tabs nur bedingt vertragen.

Hier nun die Lösung:

Direkt vor dem Initialisieren der Tabs mittels

$('.tabsContainer').tabs();

müssen die Link-href´s per jQuery überschrieben werden:

$(".tabsContainer > ul a").attr("href", function() {
if ($(this).attr("href").indexOf("#") > -1) { return "#" + $
(this).attr("href").split("#")[1]; } else { $(this).attr("href"); }
});

Thema: TYPO3 | Kommentare (2) | Autor:

TYPO3 Internetagentur Dresden