Webentwicklung bequem mit Chrome und dem Netbeans-Connector

Klassisches Webdevelopment bedeutete früher ständiges wechseln zwischen IDE/Editor. Änderungen im Code schreiben, in den Browser wechseln, Seite neu laden und Änderungen prüfen.

Später kam dann die Möglichkeit hinzu mit Firebug im Firefox oder dann später auch in Chrome mit den Chrome Developer Tools den DOM direkt zu manipulieren und wenn die Änderungen gut waren, diese heraus zu kopieren und händisch in das ursprüngliche Dokument einzupflegen und dann persistent zu speichern.

Mit den Netbeans Connector wurde nun die Möglichkeit geschaffen Änderungen in den Chrome Developer Tools von Netbeans übernehmen zu lassen und direkt nach Änderung persistent über Netbeans als IDE zu speichern. Eine sehr große Erleichterung, welche sehr viel Zeit in der Frontend-Entwicklung einsparen kann.

Bildschirmfoto 2015-01-16 um 16.06.25

Nach der Installation der Chrome-Extension Netbeans Connector kann dieser über Netbeans gestartet werden, in dem man die entsprechende Browser-Einstellung in Netbeans wählt

Bildschirmfoto 2015-01-16 um 16.16.47

und das Projekt startet. In diesem Fall habe ich ein leeres HTML5-Projekt angelegt und dieses dann gestartet.

Bildschirmfoto 2015-01-16 um 16.22.41

Neben der Möglichkeit die Änderungen in Netbeans die Änderungen vorzunehmen und beim speichern die Änderungen direkt durch ein von Netbeans ausgelöstes Neuladen der Seite zu begutachten gibt es noch die Möglichkeit nun die Chrome Developer Tools zu starten, dort die Änderungen vorzunehmen und Netbeans wird die Änderungen registrieren und für uns wegschreiben.

Bildschirmfoto 2015-01-16 um 16.28.22

Google+

Title und Meta-Description in Extbase setzen

Gerade kürzlich stand ich vor dem Problem, dass ich in einem Extbase-Plugin, welches non-cacheable sein musste, den Title-Tag und die Meta-Description dynanisch aus der Extension setzen musste.
Der häufig genutzter Ansatz den Title und die Description im GLOBALS-Array zu überschreiben

$GLOBALS['TSFE']->page['title'] = $newTitle;
$GLOBALS['TSFE']->indexedDocTitle = $newTitle;
$GLOBALS['TSFE']->page['description'] = $newDescription;

was in dem Fall eines nicht-cachebaren Plugins leider nicht funktioniert. Daher habe ich dann einen eher einfachen aber effektiven Ansatz verfolgt. In den Projekt wird die seo_basics-Extension genutzt, also deaktivieren wir alle Head-Tags der seo_basics-Extensin im Typoscript-Template der entsprechenden Seite:

plugin.tx_seobasics >

Nun werden kein Title und keine Meta-Description mehr in den Head gerendert und wir können diese in unserer Extension „händisch“ mittels der addAddtionalHeaderData-Methode in unserem Controller neu setzen:

$title = '<title>' . $myNewTitle . '</title>';
$metaDescription = '<meta name="description" content="' .  $myNewMetaDescription . '">';
$this->response->addAdditionalHeaderData($title . PHP_EOL . $metaDescription);
Google+