Kategorie: Web-Development

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

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

Above-the-Fold CSS & JS mit TYPO3 richtig optimieren

Wer heutzutage eine neue Website erstellt und diese nach neusten Standards und Techniken optimieren möchte, kommt am Google Page Speed Tool nicht vorbei. Dabei fällt auf, dass das Tool des Platzhirsches relativ viel Wert darauf legt, CSS und JS Daten, die nicht im Sichtbereich beim Aufruf der Seite liegen, am Ende des Dokumentes zu laden. Das heißt, Daten die nicht benötigt werden, um den sofort sichtbaren Bereich darzustellen, sollen später nachgeladen werden. Dabei bedeutet später natürlich: Sofort nachdem das eigentliche HTML Dokument geladen wurde. Da es beim Nachladen durchaus zu einer kurzen sichtbaren Darstellung ohne geladene Stylesheets kommen kann, werden die Stylesheets, die für die Darstellung des sichtbaren Teils zuständig sind, weiterhin im <head>-Bereich geladen – allerdings nicht wie üblich als externe Datei, sondern direkt als Inline-CSS.

TYPO3 Extension Scriptmerger

Mit der Extension Scriptmerger lassen sich alle JavaScript und CSS Dateien zusammenfassen – und genau das möchten wir. Wichtig für uns: Durch folgende Konfigurationsparamter können wir die Extension anweisen, die erstellten und zusammengefassten Daten nicht wie üblich im Kopf, sondern ganz unten am Ende des Dokumentes einzubinden.

plugin.tx_scriptmerger {
	javascript {
		mergedHeadFilePosition = </body>
	}
	css {
		mergedFilePosition = </body>
	}
}

Above-the-Fold CSS in den <head> einbinden

Als erstes sollte erwähnt werden, dass alle via page.includeCss eingebundenen CSS Dateien nun durch Scriptmerger an das Ende des Dokumentes gepackt werden. Deshalb brauchen wir eine effektive Methode unser Above-the-Fold CSS Inline in den Header zu bekommen. Dafür eignet sich folgendes TypoScript:

page {
  headerData {
    # Inline CSS
    10 = TEMPLATE
    10 {
      stdWrap.wrap = <style type="text/css">|</style>
      template = FILE
      template.file = fileadmin/templates/css/abovethefold.css
    }
  }
  
  # CSS-Dateien
  includeCSS {
    mainCss = fileadmin/templates/css/main.css
	...
  }
}

Eine externe CSS Datei wird ausgelesen, in Style-Tags verpackt und in den Head eingebunden. Für uns ist das eine wunderbare Möglichkeit, denn wir haben unser CSS im Head wie wir es benötigen (Inline), um das Laden nicht zu blockieren und wir haben dennoch eine externe CSS Datei die für Ordnung sorgt.

Weiterlesen

TYPO3 mit WordPress: So spielen beide Systeme zusammen

Möchte man eine leistungsfähige Website mit dem Content-Management-System TYPO3 aufbauen aber nicht auf WordPress – dem Blog-System schlechthin – verzichten wollen, stellt man sich die Frage: Wie arbeiten beide System am besten zusammen? Ich habe genau das auf meiner neuen Webpräsenz gemacht und zeige euch nun, wie ich Navigation, Footer und Sidebar Elemente eingebunden habe.

WordPress parallel zu TYPO3 installieren

WordPress habe ich ganz normal im Root Verzeichnis unter dem Ordner „/blog/“ installiert. In TYPO3 habe ich eine leere Seite im Seitenbaum erstellt um im meinem TYPO3 Menü auch den Punkt „Blog“ einzubinden. Natürlich verweist der Menüpunkt via RealURL auf /blog/. Damit wird vom TYPO3 zu WordPress gesprungen.

WordPress vorbereiten

Kurz vorab: Ich bin kein WordPress-Profi und konzentriere mich mit meiner Arbeit (abgesehen von diesem Projekt) lediglich auf TYPO3.

Meine HTML Struktur der TYPO3 Seite habe eins zu eins in das WordPress Template eingebunden. Somit kann ich sämtliches CSS und JS auch für WordPress nutzen. Wie man ein WordPress Template anpasst liest man am besten extern nach. Sind wir damit fertig und haben auch die nötigen CSS / JS Dateien eingebunden sollten wir einen Blog haben, der so aussieht wie unsere normale Website. Sicherlich muss man an ein paar Stellen ein paar spezifische Anpassungen am HTML Konstrukt vornehmen und auch ein paar extra Stylesheets hinterlegen (diese extra Blog-Stylesheets habe ich in die style.css vom WordPress Theme verpackt).

Weiterlesen

Retina- & Resolution-Detection auf Serverseite (PHP)

Mobile Geräte mit Retina / HDPI Display sind heutzutage Standard. Ein Grund mehr auf einer neuen Website Bildmaterial zur verfügung zu stellen, welches diese Technik bedienen kann – macht man dies nicht, wirken Grafiken und Bilder unscharf. Aber wie zum Teufel soll man das vernünftig anstellen?

Es ist egal ob man ein CMS wie TYPO3 verwendet oder eine einfache statische HTML Seite hat, das Problem bleibt gleich. Die ausgelieferten Bilder sollten zugunsten der Ladegeschwindigkeit nur so groß sein, wie sie tatsächlich benötigt werden. Sind die Bilder größer verursacht das unnötige Datenübertragung, verlangsamt den Seitenaufbau / die Darstellung und wirkt sich ebenfalls negativ auf ein Google Page Speed Ranking aus.

CSS

Innerhalb CSS hat man diese Problematik nicht. Durch Media-Querys können wir ganz einfach zwischen normalem und Retina- / HDPI-Display unterscheiden und so andere Hintergrundgrafiken verwenden.

@media only screen and (-webkit-min-device-pixel-ratio: 1.3),
       only screen and (-o-min-device-pixel-ratio: 13/10),
       only screen and (min-resolution: 120dpi) {
          /* Retina / HDPI Background Images */ 
}

Doch wie sollte man normale Bilder (<img>) ausliefern?

Serverseitig mit PHP?

Aktuell gibt es keine richtige Möglichkeit um auf Serverseite herauszufinden ob es sich um ein hochauflösendes Gerät handelt. An dieser Stelle frage ich mich allerdings: Warum wird das nicht über den User-Agent oder einem anderen Parameter übermittelt? Der Stand der Technik würde genau diese Informationen (Auflösung in DPI, Screengröße in Pixel) dringend benötigen um sofort entscheiden zu können, welches Bild in welcher Größe ausgeliefert werden muss.

So ist es leider – derzeit gibt es keine Möglichkeit dazu. Auch wenn ich (wie viele andere sicher auch) lange darüber nachdenken wie man das Zustande bekommen könnte.

Weiterlesen

HTML5 Tags – Die Website inhaltlich auszeichnen

HTML5 kennt neue Tags wie header, section, article oder nav. Mit diesen ist es möglich, Website-Abschnitte für Crawler von Suchmaschinen wie Google und Co erkennbar auszuzeichnen. Bisher konnten wir diese Bereiche lediglich optisch für den User kenntlich machen. Jetzt definieren wir mit den HTML5 Tags, welcher Bereich unserer Website die entsprechende Aufgabe hat. Und so verstehen ebenfalls die Suchmaschinen diese Segmente und deren Aufgaben. Außerdem sind die HTML5 Tags ein deutlicher Fortschritt in der Barrierefreiheit. Blinde erkennen nun, wo sich eine Navigation und der eigentliche Inhalt befinden – auch ohne die Website komplett zu verstehen. Wir nutzen dazu die folgenden Tags:

<header>

Das <header>-Tag dient dazu, den Kopf sowie die Überschrift einer Seite zu definieren. Es fungiert praktisch als erster Einblick in das Thema. Das <header>-Tag umschließt den gesamten Kopfbereich (Logo, Titel, Überschrift, Navigation) einer Webseite.

<article>

In das <article>-Tag von HTML5 kommt der eigentliche, themenrelevante Inhalt einer Seite. Die Suchmaschine erkennt somit, dass hier der „wichtige“ Bereich dargestellt wird, um den sich die Webseite dreht. Blinden ermöglicht die HTML-Auszeichnung den direkten Sprung mit dem Ausgabegerät in diesen Bereich. Sie lesen so den entsprechenden Artikel – ohne den Anfang zu suchen.

<section>

Mit <section>-Tags teilen wir unseren Inhalt (article) in unterschiedliche Sektionen auf. Jede <section> erhält eine passende Überschrift zu ihrem eigenen Teilthema. Somit können Blinde sofort in den nächsten Abschnitt eines Artikels springen und erhalten direkt die gewünschten Informationen und Inhalte.

Weiterlesen

Adobe Nav: Photoshop Werkzeuge über iPad nutzen

Photoshop ist ein mächtiges Programm für Grafikdesigner und Webentwickler. Die linke Hand bleibt dabei jedoch meist „ungenutzt“. Jetzt können sich iPad Besitzer freuen: Es gibt eine App, welche man mit seinem Photoshop CS5 / CS6 auf dem Computer verbinden kann.

Adobe Nav

bafc6642e0Durch die iPad App „Adobe Nav“ könnt ihr euer iPad als Werkzeug Selektor nutzen. Dadurch ist es euch möglich blitzschnell zwischen eure favorisierten Werkzeugen zu wechseln, vordefinierte Werkzeug-Palatten zu wählen und auch durch in Photoshop geöffeneten Dateien zu springen.

Adobe Nav im Apple AppStore

Weiterlesen