TYPO3, iOS & Web-Development Blog

TYPO3 Fluid: DTD / RNG Auto-Complete mit HTML 5

Hier findet ihr eine von mir generierte DTD Auto-Complete Datei für eure IDE. Die DTD Datei wurde vom XML Schema in RNG und von dort aus nach DTD convertiert.

Leider sind nicht alle Elemente korrekt verschachtelt wie im HTML5 Anteil. Das bedeutet, dass sämtliche Elemente innerhalb jeglicher anderen Elemente integriert werden können – immerhin ist das meist auch der Fall. Wer sich allerdings dennoch die Arbeit machen möchte und sämtliche Elemente korrekt verschalten will, kann mir gerne eine angepasst DTD Datei zusenden, damit ich sie ggf. hier veröffentlichen kann.

Dazu muss ich leider auch sagen, dass die Auto-Completion der Attribute bei mir in Komodo IDE 9 leider auch nicht richtig funktioniert. Soweit ich das sehen kann, sind die Attribute in der DTD Datei korrekt angelegt. Falls sich dem Problem auch Jemand annehmen möchte, ist der herzlich dazu eingeladen. Gerne erwarte ich auch euer Feedback, ob bei euch das Attribut Auto-Complete funktioniert. Sollte dies so sein, bitte Kommentar hinterlassen. Danke!

Weiterlesen

Plesk 12.5: HTTP/2 unter Apache 2.4

In der vergangenen zeit haben die Macher des Plesk Control Panel HTTP/2 Support zum Update freigegeben. Allerdings bezieht sich der Support von HTTP/2 bisher nur auf Nginx Webserver. Betreiber von Apache Webserver müssen sich noch etwas gedulden. Oder nicht?

HTTP/2 ist was feines und löst das 1999 eingeführte HTTP 1.1 ab. Doch wie kann man nun in einem Debian 8.x System (Jessie) Apache 2.4 mit HTTP/2 Support installieren und nutzen? Seit Apache 2.4.17 steht HTTP/2 Support zur Verfügung, doch in Debian Jessie lässt sich derzeit ohne weiteres nur Apache 2.4.10 über die Paketverwaltung installieren.

Installation von Apache 2.4 mit HTTP/2 Support unter Plesk 12.5

Firebug HTTP/2Tom Geißler hat auf seiner Website nun ein Debian Repository für genau diesen Zweck veröffentlicht: Hier werden die nötigen Pakete für den HTTP/2 von Debian Sid in Jessie zur Verfügung gestellt.

Bei der Installation solltet ihr euch an seine Anleitung halten. Leidglich das Apache Modul proxy_fcgi muss deaktiviert werden. Dazu einfach das Laden des Moduls in /etc/apache2/mods-enabled/proxy_fcgi.load mit einem # auskommentieren.

Seither läuft Apache 2.4.20 und somit HTTP/2 auf unserem Server einwandfrei und völlig ohne jegliche Probleme. Bedenkt: HTTP/2 Server Push zu aktivieren und zu nutzen!

Achtung: Sämtliche Angaben ohne Gewähr. Wir übernehmen natürlich keinerlei Haftung für Schäden an deinem System.

SpeedBuddy: Google Pagespeed als iOS App!

Vor wenigen Tagen haben wir RankBuddy für iOS vorgestellt. Mit dieser App lässt sich die Google Search Console auch unterwegs nutzen. Seit Version 2.0 ist ein neues Feature enthalten: Google Pagespeed checks innerhalb der App! Da RankBuddy nur Webseiten checken kann, deren Profile man in seiner Google Search Console hat, haben wir uns dazu entschieden dieses neue Feature als eigenständige iOS App zu veröffentlichen.


Download App


SpeedBuddy für iOS ist geboren

SpeedBuddy iOS AppMit SpeedBuddy lässt sich jede Website durch Google Pagespeed Insights checken. Man kann unterwegs oder vor Ort im Kunden-Meeting die aktuelle Performance und Nutzerfreundlichkeit der Website checken und dem Kunden ggf. Maßnahmen vorschlagen um entsprechende Punkte zu optimieren. Durch die direkte Beratung des Kunden vor Ort mit dem Live-Ergebnis vom Google Pagespeed kann sofort im Gespräch auf die einzelnen Optimierungspunkte eingegangen werden. Ein großer Pluspunkt für euch als Dienstleister.

Auch für ambitionierte Web-Entwickler

Natürlich kannst du auch deine eigenen Webseiten prüfen und optimieren. In Falle vom Google Pagespeed sollte man diese Optimierungen wohl weitestgehend ausführen um ein Plus im Google Ranking zu erhalten. Wer, wenn nicht Google selbst, sollte denn am besten wissen, wie eure Website perfekt für ein gutes Ranking vorbereitet wird?

Viel Spaß mit der App!

Google Search Console als iOS App: RankBuddy

Es ist soweit! Durch unsere neue iOS App RankBuddy für iPhone und iPad wird die Google Search Console endlich mobil! Die App bietet eine vollständige Integration der Google Search Console API und zeigt dir sämtliche Statistiken zu deiner Website auf – ein must have für jeden Entwickler, Webseiten-Betreiber oder SEO-Experten!


Download App


Die Features von RankBuddy

RankBuddy App für iOS - ChartViewGoogle Login

Du loggst dich innerhalb der App mit deinem Google Account ein. Du solltest schon Profile in der Search Console haben oder ein neues Profil anlegen (Hinweis: Beim Erstellen eines Profils dauert es ein paar Tage bis Daten zur Verfügung stehen). Nach dem Login findest du deine Profile in der App und kannst auf sie zugreifen.

Gesamtstatistik

Mit der Gesamtstatistik siehst du unabhängig von Suchanfrage, Land, Gerät oder sonstigen Kriterien wie deine Website performt. Wie oft wurde deine Seite in den Google Ergebnisse angezeigt (Impressionen)? Wie oft wurde sie angeklickt? Wie gut oder schlecht ist die Click-Through-Rate (CTR, prozentual Anzeige zu Klick)?

Suchanfragen

In der App können alle Suchanfragen aufgelistet werden bei der deine Website angezeigt wurde. Ist die CTR eher gering, solltest du daran arbeiten den Seitentitel und Meta-Beschreibung zu verbessern bzw. diese dem Suchenden attraktiver zu gestalten, damit er zum Klick angeregt wird. Beachte aber auch, ob nicht die gleiche Seite bei anderen Suchanfragen schon ganz gut „funktioniert“. Einfach blind etwas zu ändern kann auch nach hinten losgehen. Chart-Ansicht natürlich pro Suchanfrage inklusive!

Weiterlesen

TYPO3 Installation via FTP: Ohne stundenlanges hochladen

Wahrscheinlich jeder TYPO3 Entwickler hat es einmal erlebt: Ein neues Projekt soll erstellt werden, externer Server, kein SSH Zugang. Es bleibt also nur die Möglichkeit sämtliche TYPO3 Sourcen via FTP hochzuladen. Und das kann dauern…dauern…sehr lange dauern…

Ich habe ein kleines PHP Script geschrieben,

mit dem das Installieren der TYPO3 Sourcen sogar fast schneller erfolgt als über SSH mit entsprechenden Befehlen zu arbeiten. Das Script lädt die entsprechende TYPO3 Version herunter, entpackt das Tar-Archiv und löscht das Archiv wieder. Übrig bleibt ein Ordner mit den TYPO3 Sourcen den man verwenden kann, wie man es möchte.


Update!

Das Script wurde etwas erweitert. Nun kann man auch neuere TYPO3 Versionen damit aktualisieren. Einfach in der PHP Datei oben die Wunsch-Version eintragen. Ist noch kein TYPO3 vorhanden, kann man TYPO3 mit dem Script installieren.

Das Script gibt es hier zum Download!


<?php
$url  = 'http://prdownloads.sourceforge.net/typo3/typo3_src-7.6.4.tar.gz?download';
$filename = 'typo3.tar.gz';

// Download File -> typo3.tar.gz
$path = __DIR__.'/'.$filename;
$ch = curl_init($url);
$fp = fopen($path, 'w'); 
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_exec($ch);
curl_close($ch);
fclose($fp);
print 'TYPO3 archive downloaded...<br />';

// Unpack File
system('tar xzf typo3.tar.gz');
print 'TYPO3 archive extracted...<br />';

// Delete Tarball
unlink($path);
print 'TYPO3 archive removed...<br />';

print '<b>Completed!</b>';

Achtung: Verwendung auf eigene Gefahr. Keine Haftung.

Gridelements Flexform-Inhalte in Page-Modul anzeigen

Gridelements ist eine mächtige, beliebte aber auch einfach zu verwendende TYPO3 Extension. Neben klassischem Spaltenaufbau bietet Gridelements auch die Möglichkeit individuelle Elemente via Flexforms zu erstellen. Allerdings werden diese Felder im Page-Modul nicht ausgegeben, sodass ein Redakteur meist nicht weiß, was in diesem Element enthalten ist. Genau hier kommt eine neue, von mir entwickelte TYPO3 Extension ins Spiel:

Gridelements Flexform Page Preview

Diese Extension erweitert gridelements über XClass dahingehend, dass nach der Installation sämtliche Flexform Felder und deren Inhalt in der Seitenansicht in TYPO3 dargestellt werden. Simple & gut.

gridelements_ffpagepreview im TYPO3 Extension Repository

Die Extension gibt es derzeit in der ersten Version 1.0.0 im TER unter dem Extension Key „gridelements_ffpagepreview“. Ein Extension Manual wird nicht benötigt, da die Extension lediglich installiert werden muss.

Optional kann mittels TypoScript die maximale Bildbreite und -höhe für die Bild-Vorschau gesetzt werden:

plugin.tx_gridelementsffpagepreview.settings.imageWidth = 200
plugin.tx_gridelementsffpagepreview.settings.imageHeight = 200

gridelements_ffpagepreview

Feedback wird jederzeit gerne entgegengenommen. Viel Spaß mit der Extension!

TYPO3 7.6: Ext. compatibility6

In der aktuellen TYPO3 Version 7.6 ist der Kompatibiltiäts-Layer für Extensions nicht wie bei 6.2 direkt im Core verpackt, sondern kann nach belieben als eigenständige Extension nachinstalliert werden. Das macht Sinn, denn nicht jeder benötigt diese Komapibilität für ältere Extensions.

Allerdings verursacht diese Extension auch Performance-Einbußen, daher haben wir einmal gecheckt, wie diese Performance Einbußen in unserem Benchmark Projekt (Ausgabe: HELLO WORLD!) aussehen. Klar sollte sein: Bei diesem Projekt ist die Extension compatibility6 zwar installiert, verrichtet aber keine Arbeit, da in diesem Projekt nahezu keine Inhalte existieren. In einem größeren Projekt, welches auch tatsächlich ältere Extensions nutzt, werden die Performance-Einbußen sicherlich etwas höher ausfallen.

compatibility6 – wofür?!

Mit der installieren Extension laufen nahezu sämtliche alte TYPO3 Extensions. Ich habe sogar spaßeshalber mal ganz alte t3lib-Extensions getestet (tt_news für TYPO3 4.5) – auch diese können lauffähig gemacht werden, man sollte nur bei Fehlern einmal im error.log des Webservers schauen – dort wird nämlich vermerkt, welche Probleme auftreten.

Weiterlesen

TYPO3 LTS Benchmark: Version 6.2 vs. 7.6

Ich dachte es wäre mal wieder an der Zeit einen kurzen Speed-Checkup zwischen den TYPO3 Versionen 6.2 LTS und 7.6 LTS durchzuführen. Jetzt, nachdem ich meinen Server auf die neueste Debian Version aktualisiert habe und ich nun endlich mit neuesten MySQL und PHP Versionen arbeiten kann, habe ich auch die Möglichkeit endlich mal einen Blick in die neueste TYPO3 Schöpfung zu werfen. Ich muss sagen, das Backend gefällt mir im neuen Design ziemlich gut und fühlt sich auch irgendwie schneller an. Aber heute soll es erst einmal nur um die FrontEnd Performance gehen.


Update: TYPO3 7.6 mit PHP 7 unschlagbar

Kleines Update zu diesem Artikel: TYPO3 Version 7.6 ist mit PHP 7 unschlagbar schnell. Den bisher schnellsten Benchmark brachte uns damals TYPO3 Version 4.5. Für 1500 Anfragen (50 gleichzeitig) brauchte das CMS damals genau 3,246 Sekunden. Und nun haltet euch fest, denn diese Marke wurde von TYPO3 7.6 mit PHP 7 (ohne compatibility6 Extension) soeben gebrochen. Es dauerte gerade einmal 2,457 Sekunden um alle Anfragen abzuarbeiten. Gefällt mir richtig gut!

Server Software:        Apache
Server Hostname:        TYPO3 7.6.2 mit PHP 7
Server Port:            80

Document Path:          /
Document Length:        640 bytes

Concurrency Level:      50
Time taken for tests:   2.457 seconds
Complete requests:      1500
Failed requests:        0
Total transferred:      1329000 bytes
HTML transferred:       960000 bytes
Requests per second:    610.43 [#/sec] (mean)
Time per request:       81.909 [ms] (mean)
Time per request:       1.638 [ms] (mean, across all concurrent requests)
Transfer rate:          528.17 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.3      0       2
Processing:    21   80   8.4     81     110
Waiting:       21   80   8.4     81     110
Total:         23   81   8.2     81     110

Percentage of the requests served within a certain time (ms)
  50%     81
  66%     83
  75%     85
  80%     86
  90%     88
  95%     91
  98%     95
  99%     99
 100%    110 (longest request)

Weiterlesen