Kategorie: TYPO3

HTMLArea RTE Zeichen zählen

Um die getippten / eingefügten Zeichen eines TYPO3 HTMLArea Rich-Text-Editors auszulesen, benötigen wir nur ein simples, kleines JavaScript. An die serverseitige Variante haben wir ebenfalls schon gedacht.

setTimeout(function () {
	var editorName = 'name_and_rte_counterid'; // z.B. meinrtefield_1
	RTEarea[editorName].editor.iframe.events.htmlareaeventwordcountchange.addListener(function() { setTimeout(function() { RTECheckChars(RTEarea[editorName]); }, 20); });
	RTECheckChars(RTEarea[editorName]);
}, 1000);
 
function RTECheckChars(checkRte) {
	var text = checkRte.editor.getHTML();
	text = text.replace(HTMLArea.RE_htmlTag, ' ');
	text = text.replace(/ | /gi, ' ');
	console.log(text.length); // ---- AUSGABE ----
	return false;
}

Die Ausgabe im JavaScript könnt ihr natürlich dazu nutzen, um den User anzuzeigen wie viele Zeichen er bereits getippt hat, wie viele Zeichen er noch übrig hat (wenn die Zeichnanzahl begrenzt sein soll) und wie viele Zeichen er zu viel getippt hat.

Weiterlesen

TemplaVoila! Content einer Seite mit TypoScript auslesen

Unter Verwendung von TemplaVoila in einem TYPO3 Projekt ist es ohne weiteres nicht möglich, Inhalte einer bestimmten Seite mit dem CONTENT-Objekt auszulesen. Zumindest dann nicht, wenn man auch FCEs (flexible Content Elemente) nutzt.

Das Ergebnis wäre ein Mischung von FCEs samt deren Inhalten sowie die eigentlich Inhalte innerhalb des FCEs nochmals separat als eigene Content Elemente. Das sorgt – wie man sich vorstellen kann – dafür, dass Inhalte doppelt ausgegeben werden.

Wir haben eine Funktion geschrieben, die dennoch die Möglichkeit bietet, entsprechende Inhalte einer Seite auszugeben.

Was muss ich dazu machen?

Zunächst muss man ein PHP Script schreiben und dieses innerhalb TypoScript als USER bzw. USER_INT einbinden. Darauf gehe ich hier nicht weiter ein – wie das gemacht wird wir z.B. hier beschrieben.

Hat man das geschafft, kann man in diesem Script die folgen Funktion zum auslesen der Inhalte einer Seite integrieren. Der Rückgabewert dieser Funktion ist ein UID Array der Content Elemente / FCEs.

Weiterlesen

TYPO3 Geschwindigkeit: Im Test Version 4.5, 4.6 und 4.7

Im Zuge der Umsetzung des Gottschalk Live „66 Träume“ Projekts haben wir zur Wahl der TYPO3 Version einmal die Geschwindigkeit der einzelnen TYPO3 Versionen getestet. Als Test-Kandidaten haben wir folgende TYPO3 Versionen auf unseren Server eingeladen um am Benchmark teilzunehmen: Version 4.5.15, Version 4.6.8, Version 4.7.0.

Testgrundlage

Als Testgrundlage haben wir die jeweilige TYPO3 Version installiert, eine Seite erstellt und das Standard TypoScript Template beibehalten. Output: „Hello World!“ Die einzelnen TYPO3 Instanzen hatten alle exakt die gleichen Server-Settings. Somit hatte keine TYPO3 Version einen Vorteil.

Testergebnisse

Version 4.5.15

Server Software:        Apache
Server Hostname:        PROJEKT 4.5
Server Port:            80
 
Document Path:          /
Document Length:        853 bytes
 
Concurrency Level:      50
Time taken for tests:   3.246 seconds
Complete requests:      1500
Failed requests:        0
Write errors:           0
Total transferred:      1611000 bytes
HTML transferred:       1279500 bytes
Requests per second:    462.18 [#/sec] (mean)
Time per request:       108.184 [ms] (mean)
Time per request:       2.164 [ms] (mean, across all concurrent requests)
Transfer rate:          484.74 [Kbytes/sec] received
 
Connection Times (ms)
			  min  mean[+/-sd] median   max
Connect:        0    0   0.2      0       1
Processing:    52  107  14.5    108     173
Waiting:       52  107  14.8    107     173
Total:         52  107  14.5    108     174
 
Percentage of the requests served within a certain time (ms)
  50%    108
  66%    112
  75%    116
  80%    118
  90%    125
  95%    131
  98%    139
  99%    147
 100%    174 (longest request)

Weiterlesen

Trackback und Pingback für T3Blog Extension

Die TYPO3 Blog Extension t3blog (hier genutzt) ist eine sehr bequeme und funktional ausgereifte Extension. Artikel lassen sich schnell und einfach mit sämtlichen Content Typen erstellen und online bringen. Dennoch gibt es zwei Dinge, die t3blog nicht bzw. nicht vernünftig beherrscht: Trackback und Pingback. Wir gingen der Sache auf den Grund und haben die Funktionen als TYPO3 Extension nachgerüstet.

Was Trackbacks und Pingbacks sind erläutere ich hier jetzt nicht weiter. Dazu gibt es hier einen ausführlichen Artikel: Was sind Trackbacks?

Die Trackback Funktion

In T3Blog ist bereits eine Trackback Funktion integriert – doch leider funktioniert diese nicht bzw. nicht korrekt. So werden beispielsweise beim Senden eines Trackbacks vollkommen falsche URLs übermittelt.

Die Pingback Funktion

Auch eine Pingback Funktion wurde scheinbar vom Erstellter der Extension Snowflake zumindest angedacht. Die Pingback Funktion wurde bisher jedoch noch nicht lauffähig implementiert, daher haben wir uns jetzt darum gekümmert.

Weiterlesen

Anforderungen an professionelle TYPO3 Entwickler

Hier fassen wir einmal für euch zusammen, was einen guten TYPO3 Entwickler ausmacht. Heute reicht es nämlich nicht mehr aus, dass eine Website im Frontend funktioniert und wie gewünscht arbeitet, sich jedoch schlecht bis mittelmäßig gut pflegen lässt. Das Gesamtpaket TYPO3 sollte bei entsprechenden Kosten für Umsetzung natürlich auch zuverlässig und rund laufen, jedoch auch zukunftssicher umgesetzt werden, damit bei Updates von TYPO3 das Projekt weiterhin funktionsfähig ist und bleibt – mit jeder Funktion des Projektes.

Design und Layout

Das Design sollte W3C valide nach modernem HTML Doctype (XHTML 1.1, HTML 5) umgesetzt werden. Ein Aufbau als Div-Box-Modell setzen wir hier als Grundlage voraus. Tabellenlayouts sind seit vielen Jahren out (abgesehen von Newsletter Templates). Das Wunschdesign sollte so gut wie möglich nach Vorgaben mittels HTML und CSS erstellt werden – im Idealfall pixelgenau nach Vorgabe.

TYPO3 Grundlegendes

Daten die der Benutzer in ein TYPO3 Projekt ablegt kommen in den Ordner „fileadmin“. Alle weiteren Ordner werden automatisch von TYPO3 verwaltet und bedürfen im Normalfall keiner Benutzeraktion. Dass das Passwort des Admin Benutzer sowie des Install-Tools von TYPO3 auf ein besonderes sicheres Passwort gesetzt wird, sollte während der Grundeinrichtung erfolgen. Bedenkt: Das Standardpasswort „joh316“ kennt jeder TYPO3 Entwickler und damit könnte man so einiges an Unsinn machen.

Weiterlesen

TYPO3 PDFs für Redakteure Basics: Die Grundlagen

Da wir unseren Kunden bisher immer persönlich oder telefonisch eine kleine Einführung in das CMS TYPO3 geben durften, haben wir uns nun einmal dafür entschieden eine TYPO3 PDF Reihe zu erstellen, damit unseren Kunden der Umgang mit dem System zum Einen bebildert erklärt wird, zum Anderen aber auch als „TYPO3 Nachschlagewerk“ fungiert, sollte der Kunde vergessen haben, wie eine bestimmte Aktion ausgeführt wird.

Die PDFs werden je nach „Gebiet“ sehr verständlich (Basics) bis etwas anspruchsvoller umgesetzt werden. Dem liegt einfach die teilweise komplexität von TYPO3 zugrunde.

Wir beginnen hier und heute mit der TYPO3 Basics PDF für Einsteiger.

Die PDFs selber befinden sich hier: TYPO3 PDFs für RedakteureWir haben mit der TYPO3 Basics PDF begonnen und werden uns in der nächsten Zeit auch anderen PDFs zum Umgang mit TYPO3 widmen.

TYPO3 Basics kann hier sofort heruntergeladen werden.

Weiterlesen

SEO für sg_glossary: Titel, Keywords und Beschreibung

Heute zeigen wir euch, wie ihr die TYPO3 Extension sg_glossary etwas mehr in Richtung SEO optimieren könnt. Das ganze passiert lediglich über TypoScript und ist wirklich simple.

Zunächst sei gesagt, dass wird davon ausgehen, dass die Extension bereits installiert ist und läuft. Auf die „sprechenden URLs“ gehen wir hier nicht weiter ein, da es dazu schon viele Beiträge gibt, welche wunderbar funktionieren.


Update

Beim Neuaufbau unserer neuen Website haben wir bemerkt, dass der hiergenannte TypoScript Code leider nicht 100% einwandfrei überall funktionierte.Wir haben den Artikel aktualisiert.


Hinweis: Wir nutzen sg_glossary mit RealURL.

Um die Glossar-Einträge etwas mehr für Suchmaschinen zu optimieren müsst ihr lediglich folgendes TypoScript in euer Template einbinden (eine Erklärung dazu folgt danach):

[globalVar = GP:uid > 0]

# Bugfix sg_glossary
lib.tx_sgglossary_pi1.pageTitle.10.source >
lib.tx_sgglossary_pi1.pageTitle.10.source.data = GP:uid
lib.tx_sgglossary_pi1.pageKeywords < lib.tx_sgglossary_pi1.pageTitle
lib.tx_sgglossary_pi1.pageKeywords.10.conf.tx_sgglossary_entries.field = pagekeywords//word
lib.tx_sgglossary_pi1.headerData.title.15 < lib.tx_sgglossary_pi1.pageTitle
lib.tx_sgglossary_pi1.headerData.keywords.15 < lib.tx_sgglossary_pi1.pageKeywords

# Pagetitle
page.config.noPageTitle = 2
lib.tx_sgglossary_pi1.headerData.title.15.wrap = <title>|: Begriffserklärung im Mediendesign Glossar</title>
page.headerData.5 >
page.headerData.5 < lib.tx_sgglossary_pi1.headerData.title
 
# Keywords
lib.tx_sgglossary_pi1.headerData.keywords.15.wrap = <meta name="keywords" content="|,typo3,printdesign,mediendesign,webdesign,eifel,sinzig,bonn,köln,koblenz,online-shop" />
page.headerData.999.local.keywords >
page.headerData.1400 < lib.tx_sgglossary_pi1.headerData.keywords

# Description
lib.tx_sgglossary_pi1.pageDesc < lib.tx_sgglossary_pi1.pageTitle
lib.tx_sgglossary_pi1.pageDesc.10.conf.tx_sgglossary_entries.field = description//pagetitle//word
lib.tx_sgglossary_pi1.pageDesc.10.conf.tx_sgglossary_entries.stripHtml = 1
lib.tx_sgglossary_pi1.pageDesc.10.conf.tx_sgglossary_entries.crop = 156 | ... | 1
lib.tx_sgglossary_pi1.headerData.description.15 < lib.tx_sgglossary_pi1.pageDesc
lib.tx_sgglossary_pi1.headerData.description.15.wrap = <meta name="description" content=" | " />
page.headerData.999.local.description >
page.headerData.1300 < lib.tx_sgglossary_pi1.headerData.description

[global]

Weiterlesen

Welcher Opcache für TYPO3 ist am besten? Unsere Testergebnisse

Die Wahl eines Opcode Caches für TYPO3 war bei uns nach kurzen Tests relativ klar und eindeutig. Das Ergebnis möchten wir euch natürlich nicht vorenthalten. Im Test: ohne Opcode Cache, APC (bei PHP6 standardmäßig enthalten) und XCache von lighttp.

Da wir überwiegend TYPO3 Projekte erstellen und auf unserem Server laufen haben, begannen wir nach der Suche nach dem „richtigen“ Opcode Cache für PHP. Für TYPO3 wird ein solcher nämlich empfohlen.

zunächst Infos zum System

Debian 5.0Plesk 9.5.3Apache 2PHP 5

Unsere Test sprachen für sich und machten uns die Entscheidung relativ einfach.

Zunächst ein Benchmark ohne Opcode Cache. Dazu führen wir folgenden Befehl aus:

ab -n 500 -c 2 http://www.euerTYPO3Projekt.de/

Dieses Befehl führt einen Benchmark der entsprechenden Seite durch (welche natürlich auf eurem Server liegen sollte). Es sollen 500 Anfragen an den Server geschickt werden, jeweils 2 gleichzeitig.

Weiterlesen