« Mai 2012»
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Kategorien

Blogrolls

Letzte Kommentare

Inline
04.02.2011 13:09

Archiv

Kopieren Sie diesen Link in Ihren RSS-Reader

RSS 0.91Nachrichten
RSS 2.0Nachrichten

Meist gelesene Posts

Wochentag lokalisiert mit Fluid aus einem DateTime Objekt...
918 mal angeschaut
03.02.2011 15:38
TYPO3 Backend Layouts
675 mal angeschaut
27.04.2011 23:57
TYPO3 4.5 und kb_nescefe und Security Token
658 mal angeschaut
18.03.2011 17:43
JQuery und IE9
625 mal angeschaut
24.03.2011 10:31

Zur Zeit wird gefiltert nach: typo3
Filter zurücksetzen

12.05.2012
18:35

TYPO3 und Bilder bei Facebook Links

Warum keine Bilder bei Facebook Verlinkungen zur Auswahl angeboten werden?

Setzt man RealUrl auf seiner TYPO3 Seite ein, so kann - trotz der Angabe der BaseURL - Facebook keine Bilder laden, wenn man eine Unterseite verlinken will. Dies liegt wohl daran, daß Facebook die <base href="..."/> Angabe ignoriert.

Für Abhilfe sorgt ein:

config.absRefPrefix = / 

im TypoScript Template - aber Achtung: es gibt auch Extensions die damit nicht klar kommen! 

Zurück

26.02.2012
10:58

"Nervige" Title-Tags bei Links in TYPO3

Aufgabenstellung

Standardmäßig generiert TYPO3 bei Links einen Title Tag wie "Öffnet internen Link im aktuellen Fenster". Löscht der Redakteur diesen Text nicht, so wird er im Frontend gerendert. Dies ist dann nicht unbedingt schön und aus SEO Sicht auch nicht hilfreich, da der Code-Text-Ratio ungünstig beeinflußt wird.

Lösung

In das Seiten-TS-Config der Root Seite folgenden Eintrag machen:

 

RTE.classesAnchor {
  internalLink {
    altText =
    titleText =
  }
  internalLinkInNewWindow {
    altText =
    titleText =
  }
  externalLink {
    altText =
    titleText =
  }
  externalLinkInNewWindow {
    altText =
    titleText =
  }
  download {
    altText =
    titleText =
  }
  mail {
    altText =
    titleText =
  }
}

Zurück

20.02.2012
21:28

TYPO3 Install Tool und session.auto-start is enabled

Aufgabenstellung

Nach einem TYPO3 Update (von 4.4.4 auf 4.5.11) geht das Install Tool nicht mehr. Ruft man es auf (ENABLE_INSTALL_TOOL ist erstellt) kommt die Meldung "session.auto-start is enabled". Per .htaccess wurde session.auto_start auf Off gestellt - dies kann man auch mit einem phpinfo() Aufruf validieren.

Lösung

In den neueren TYPO3 Versionen findet man in der typo3/sysext/install/mod/class.tx_install_session.php Zeile 123 folgenden Eintrag

if (ini_get('session.auto_start')) {

ändert man diesen wieder auf

if (ini_get('session.auto_start') == 1) {


so kommt man auch wieder ins Install Tool.

Zurück

28.11.2011
12:30

Extbase, AJAX und sys_language_mode = strict

Aufgabenstellung

Datensätze sollen in einem JQGrid angezeigt werden. Es sollen jedoch nur die lokalisierten Datensätze dargestellt werden. Standardmäßig werden die Datensätze der Standardsprache angezeigt, wenn keine Übersetzung in der ausgewählten Sprache vorliegt.

sys_language_mode = strict

Im TYPOScript für die XML Ausgabe den sys_language_mode setzten:

tx_toco3whatever_ajax = PAGE
tx_toco3whatever_ajax {
 typeNum = 6001
  config {
    disableAllHeaderCode = 1
    disablePrefixComment = 1
    additionalHeaders = Content-type: text/xml
    xhtml_cleaning = 0
    admPanel = 0
    sys_language_mode = strict
  }

 

  10 = COA_INT
  10.10 < tt_content.list.20.toco3whatever_ajax
}

 

Zurück

16.05.2011
11:21

tt_news, powermail und direct_mail_subscription verknüpfen

Aufgabenstellung

Events sollen mit tt_news (und newscalendar) dargestellt werden. Zu den einzelnen Veranstaltungen kann man sich per Formular anmelden. In dem Anmeldeformular gibt es auch eine Check-Box, die den Double-Opt-In zur Newsletteranmeldung anstoßen soll.

Daten aus tt_news an powermail übergeben

Auf die "Single-View" Seite von tt_news plazieren wir zusätzlich powermail. Über ein Erweiterungstemplate lesen wir den Newstitel (dieser Beinhaltet den Eventnamen) und das Datum aus und übergeben diese an powermail:

lib.news = COA
lib.news {
10 = RECORDS
10 {
# id des template-records
source = {GPvar:tx_ttnews|tt_news}
source.insertData = 1
tables = tt_news
conf.tt_news >
conf.tt_news = TEXT
conf.tt_news.field = title
}

20 = RECORDS
20 {
# id des template-records
source = {GPvar:tx_ttnews|tt_news}
source.insertData = 1
tables = tt_news
conf.tt_news >
conf.tt_news = TEXT
conf.tt_news.field = tx_newscalendar_calendardate
conf.tt_news.strftime =  am %A, %d.%m.%Y
}
}


lib.newsTitel = COA
lib.newsTitel{

5 = TEXT
5.value = <input type="hidden" id="uid7" name="tx_powermail_pi1[uid7]" value="

10 = COA
10 < lib.news

15 = TEXT
15.value = "/>

20 = COA
20 < lib.news
}

Im Powermail fügt man ein TYPOScript Objekt ein - in unserem Fall als erstes Element, so dass der Name des Events gleich ganz oben steht.

Double-Opt-In von direct_mail_subscription auslösen

Powermail unterstützt userfunc somit kann man beim Absenden des Formulars den Double-Opt-In starten:

Wir ergänzen das Erweiterungstemplate um folgenden TYPOScript:

# include library
includeLibs.user_powermailvorgangsnummer = fileadmin/libs/user.tx_powermaildirectmailsubscription.php


plugin.tx_powermail_pi1.dynamicTyposcript {
directmailsubscription = USER
directmailsubscription {
userFunc = user_powermaildirectmailsubscription->subscribe
# subscribe field
userFunc.subscribe = uid5
# name field
userFunc.name = uid1
# email field
userFunc.email = uid3
#content uid
userFunc.formuid = 24
}

}

die Ids muss man sich entsprechend aus dem Formular heraussuchen.

user.tx_powermaildirectmailsubscription.php könnte z.B. so aussehen:

<?php
require_once (PATH_tslib.'media/scripts/fe_adminLib.inc');
require_once(t3lib_extMgm::extPath('direct_mail_subscription').'pi/class.dmailsubscribe.php');


class user_powermaildirectmailsubscription {
 
 
 /**
  * subscribe() subscribe user
  *
  * @param string  $content: content to userFunc is empty
  * @param array  $conf: conf array from ts
  * @return void
  */
 function subscribe($content = '', $conf = array()) {
  $subscribe = $GLOBALS['TSFE']->fe_user->sesData['powermail_'.$conf['userFunc.']['formuid']][$conf['userFunc.']['subscribe']];
  if (strlen(implode(",", $subscribe)) > 0) {
      $email = $GLOBALS['TSFE']->fe_user->sesData['powermail_'.$conf['userFunc.']['formuid']][$conf['userFunc.']['email']];
      $name = $GLOBALS['TSFE']->fe_user->sesData['powermail_'.$conf['userFunc.']['formuid']][$conf['userFunc.']['name']];    

             $conf = $GLOBALS['TSFE']->tmpl->setup['plugin.']['feadmin.']['dmailsubscription.'];

               // simulate registerprocess
               $_POST['FE']['tt_address']['email'] = $email;
               $_POST['FE']['tt_address']['module_sys_dmail_html']     = 1;

               // Initialisierung feAdmin Objekt              
               $ua = new user_feAdmin();
               $ua->cObj = t3lib_div::makeInstance('tslib_cObj');
               $ua->init($content,$conf);

  }
 }
}

?>

Jetzt muss man noch diese Userfunktion auslösen. Dazu bauen wir folgenden Marker in die Empfänger-Mail:

###POWERMAIL_TYPOSCRIPT_DIRECTMAILSUBSCRIPTION###

Zurück