Kategorie: Uncategorized

  • Drupal Advanced Theme Construction Kit

    Ich bin eher zufällig über das Advanced Theme Construction Kit (ATCK) gestolpert (Projektseite). Ich konnte es auch noch nicht in jedes Detail testen, aber was ich auf die Schnelle gesehen habe, hat mich sehr positiv überrasch.

    Via Klick lässt sich ein Gridlayout erstellen. Sprich, man gibt an, wo man welche Regionen haben will und bekommt dann den Source Code angezeigt.

    Der Sourcode dazu würde wie folgt aussehen:


    @import "/fix-ie-6.css";


    @import "/fix-ie-7.css";



    Dann kommt natürlich noch das CSS dazu und schon hat man etwas, womit es sich arbeiten lässt. Für den Webdesigner, welcher täglich mit HTML/CSS arbeitet, ist das wahrscheinlich nichts, aber für Entwickler wie mich, welche sich nicht mit den Fehlern und Tücken der Browser auskennen ist das sicher eine coole Sache.

    Wie gesagt, ich habe es noch nie richtig ausprobiert, aber der erste Eindruck ist auf jeden Fall sehr positiv.

  • Kritische Drupal Stimmen

    Drupal hat nicht nur Freunde sondern auch "Feinde". Hiveminds Magazin wirft einen kritischen Blick auf die Architektur von Drupal mit "5 reasons why the Drupal  CMS is not ready for the enterprise". Dabei werden vor allem folgende Punkte bemängelt:

    • Es ist nicht möglich, Drupal auf verschiedene Datenbanken aufzuteilen. Es wäre z.B. wünschenswert, dass man die node Table für verschiedene Nodetypes auf verschiedene Datenbanken aufteilt, um die Last zu reduzieren. -> Ja, das stimmt, das wäre sicher ein Perfmance-Gewinn.
    • Caching ist gut, macht jedoch wenig Sinn, bei Echtzeit-Informationen.
    • Das Front-Controller-Pattern (also alles geht über index.php) wird bemängelt.
    • Dein Einsatz von Globals für grosse Systeme ist nicht das gelbe vom Ei.

    Ich habe leider noch zu wenig Erfahrung, um diese Mängel objektiv zu beurteilen. Ich persönlich fände jedoch den Einsatz von OOP in Drupal sehr wünschenswert, was jedoch wieder das Problem bringt, dass Drupal von Grund auf neu geschrieben werden muss, was schlussendlich das ganze Projekt wieder zurückwerfen wird. Die Frage, welche man sich jedoch an dieser Stelle als Core Entwickler stellen sollte: Ein Umstellung auf OO wirft mich zwar für das kommende Release zurück, aber wie sieht es in 3 Jahren aus? Oder denkt man in Drupal gar nicht so weit 😉

    Wie gesagt, ich mag zwar eine Ahnung von Java und PHP haben, ich kann etwas mit Design Patterns und co anfangen, aber wenn es um solch grosse und komplexe Systeme wie Drupal geht und deren Architektur, dann überlasse ich diese Grundkonzepte lieber anderen, welche schon Erfahrung haben.

    Ich habe einmal ein Blogsystem mit Benutzerverwaltung mit dem Zend Framework von Grund auf gebaut und muss sagen, dass es schon recht komplex ist… daher grosses Lob auf jeden Fall.

    Der Artikel ist auf jeden Fall sehr interessant und wirft doch auch mal einen kritischen Blick auf das sonst glorifizierte Drupal… und das Magazin selber braucht übrigens auch Drupal 😉

  • Drupal CVS

    Ich habe mir heute mal das ganze Contributed CVS ausgecheckt (lediglich die Heads -> sprich, die neusten Versionen, an den momentan entwickelt wird):

    • 222 MB
    • 64'958 Dateien
    • 2703 Projekte

    Gar nicht übel…

     

  • Mehrsprachiger Footer

    Das i18n ist für Drupal 6 massiv verbessert worden 🙂 Hurra, denn in D5 gab es einige ziemlich lästige Dinge. Will man jedoch, Footer, Header, Slogan und solche Sachen mehrsprachig machen, so geht das recht einfach, braucht jedoch noch eine kleine Änderunge der settings.php:

    Mehr interessante Sachen: im i18n Handbuch… es lohnt sich.

     

  • Drupal Chat support via rapsli.ch

    IRC ist wohl nicht jedermanns Sache -> es hat auch bei mein ein paar Minuten gedauert, bis ich das einigermassen kapiert habe. Um das ganze zu vereinfachen habe ich jetzt ein kleines Java Applet eingebaut, welches den Besucher direkt mit dem Kanal #drupal.de verbindet. Dadurch kommen hoffentlich mehr Leute in den Chat… mal sehen. Default Username ist: from_rapsli 😉

    Auch erreichbar unter http://chat.rapsli.ch

    Chatten hat ja seine Vor- und Nachteile 🙂 sehr passende Grafik… kommt aber im drupal chat weniger oft vor, da es um Drupal geht, und nicht um andere Sachen 😉

    [Grafik von http://www.thaiguru.de/Internet_Bekanntschaften__beziehungen.html]

  • String nach x Zeichen abschneiden – Snippet

    Diese Funktion kann jedoch noch zu Problemen führen, wenn auch noch HTML Tags im $string vorkommen. Um dieses Problem zu beheben, ist es wahrscheinlich am Einfachsten, alle HTML Tags via Regex zu entfernen.

    Diese Funktion kann für einen speziellen Teaser oder ähnliches verwendet werden.

    <?php
    /*
    Diese Funktion schneidet einen String nach bestimmten
    Anzahl an Zeichen ab. Dabei wird jedoch erst beim Wort
    ende abgeschnitten.

    @param string $string – Zu beschneidender String
    @param int $pos – Wo soll der String abgeschnitten werden

    @return string $string – abgeschnittener String
    /
    function cutStr($string,$pos)
    {
    if ( $pos

    Einen Dank an Tom.

  • Zak McKracken

    Das muss einfach hier rein… 🙂 Vor 10-15 Jahren habe ich diese Adventure Games bis zum Abwinken gespielt: Indiana Jones, Monkey Island, Dig und co. und natürlich ZakMcKracken. Das fand ich am schwierigsten… und jetzt gibt es eine Fortsetzung 😉 und sogar gratis.

    Homepage Zak McKracken

  • Drupal und Google Pageranking

    In den letzten paar Wochen ist rapsli.ch vom Pageranking 3 auf Pageranking 4 aufgestiegen. Dadurch ist eine bessere Platzierung in Google möglich.

    Page Rank Check

     Ich muss sagen, dass Google allgemein gerne Drupal Seiten besucht. Ich bin leider keine SEO (Search Engine Optimization) Guru, aber ein paar Sachen, die ich herausgefunden habe:

    • Clean URLs verwenden!
    • Path Auto und dann irgend etwas schlaues einstellen
    • Hohes internes Linking (durch diverse Blöcke erreichbar, z.B. Similar, Recent Comments usw.)
    • Externe Links
    • Sitemap hatte ich mal installiert, weiss aber nicht wieviel das hilft.

    Ich bin nach wie vor der Meinung, dass das beste SEO Zeit und Inhalt ist. Wie sagt man so schön: "Von nichts kommt nichts" und das ist wohl auch beim Bloggen und auf Google so. Falls sich jemand mehr mit Google beschäftigen will gibt es noch ein praktisches Webmastertool. Hat noch interessante Statistiken, ich bin jedoch der Meinung, dass zuerst auf jede Seite ein vernünftiger Inhalt muss!

     

  • Debuggen mit PHPEclipse

    So. Der Debugger unter PHPEclipse läuft und ich bin extrem begeistert! Wirklich extrem. Nachdem ich gestern noch ein wenig Probleme bekundet habe, läuft er jetzt 😉

    PDT vs. PHPEclipse

    Das ist nicht das gleiche! PDT wird von Zend entwickelt, während PHPEclipse von der Community entwickelt wird. Daher sollte man auch vermeiden, PDT und PHPEclipse nebeneinander laufen zu lassen, da dies anscheinend zu Problemen führen kann. Einfach PDT weglassen.

    Debugger

    Unter PHPEclipse hat man die Wahl zwischen xDebug und DBG. Mit PDT hat man die Möglichkeit mit zend Debug zu debuggen. Da ich mich für die PHPEclipse Version entschieden habe, habe ich DBG genommen.

    Eine genaue Anleitung, bezüglich den Einstellunge hat Schnittmenge als Kommentar bereits gepostet (Link).

    PHP Eclipse installieren

    Einfach unter Help -> Software update -> Find and install -> new Software

    Dann folgende neuen Remote Sites:

    Wichtig! xDebug nicht installieren! könnte zu problemen führen.

    Damit sind eigentlich die wichtigsten Sachen vorhanden. Jetzt kann man nach dieser Anleitung vorgehen und dann sollte es wunderbar klappen.

    Probleme:

    Mein Problem war, dass ich:

    1. Die ganze Zeit versuchte habe den Zend Debugger zum Laufen zu bringen und dabei PHPEclipse und PDT installiert habe, obwohl beide für das gleiche sind -> das hat wohl dann zu Problemen geführt.
    2. Als ich das endlich kapiert habe (danke an ed_mann aus #phpeclipse), hatte ich jedoch noch eine alte PHPEclipse Version und aus irgend welchen Gründen hat die nicht richtig funktioniert.

    Fazit:

    Ich konnte nur schnell mal testweise debuggen, aber ich bin echt begeistert von der Geschwindigkeit. Mit dem Zend Studio hat das wahrscheinlich jedes mal mind. 10 Sekunden gedauert, bis ich mal an einem Break Point angekommen bin. Jetzt mit PHPEcipse und DBG geht es 2 Sekunden.

    Wie bereits gesagt, im Juni werde ich wohl wieder ein bisschen entwickeln und da wird dann der Debugger auch auf Herz und Niere getestet 🙂 …. Vielleicht ändert sich meine Meinung ja noch, aber ich denke mal wohl kaum.

    -> 4 Sterne für PHPEclipse (den fünften muss es sich erst noch im Langzeittest verdienen)

  • Eclipse als PHP IDE für Drupal

    Gestern beim Drupaltalk hat jemand auf die Eclipse IDE hingewiesen. Ich arbeite eigentlich seit rund 5 Jahren mit Eclipse, jedoch für die Java Entwicklung. Ich habe dann auch vor ca. 3 Jahren mal das PHP Plugin für Eclipse angeschaut und war ziemlich enttäuscht. Es wollte einfach nicht wirklich so, wie ich mir das vorgestellt habe. So habe ich mich dann wieder abgewandt und diverse andere verwendet.

    Heute habe ich es mal wieder versucht und ich muss sagen, ich bin begeistert :). Jetzt ohne Witz. Ich habe kürzlich Open Komod probiert und war auch hier enttäuscht, da keine Funktionen aufgelistet werden, welche die aktuelle Datei enthält. Komod war also innerhalb von 3 Tagen wieder weg vom Fenster.

    Eclipse bietet das alles. Mit Eclipse habe ich bereits Erfahrung und kenne mich relativ gut aus (ich habe es sogar mal geschafft, C++ mit Eclipse zu entwickeln). Ich fühle mich einfach wohl und ich weiss, wo die Sachen sind. Daher finde ich es echt genial.

    Einziger Wehrmutstropfen: Der Remote Debugger will noch nicht so recht. Laufen tut er zwar und ich habe eigentlich alle nötigen Sachen, aber es fehlt einfach noch das Pünktchen auf dem i. Also, wenn der jetzt auch noch schneller läuft, als ich mir das vom Zend gewöhnt bin, dann amen.

    Hier noch meine Ressourcen:

    Ich musste bei mir noch eine kleine Änderung anbringen in der php.ini Datei:

    [Zend]
    ;zend_extension_ts = "C:xamppphpzendOptimizerlibZendExtensionManager.dll"
    zend_extension_manager.optimizer_ts = "C:xamppphpzendOptimizerlibOptimizer"
    zend_optimizer.enable_loader = 0
    zend_optimizer.optimization_level=15
    ;zend_optimizer.license_path =
    ; Local Variables:
    ; tab-width: 4
    ; End:
    

    Die erste Zeile musste ich auskommentieren, sonst ist es einfach nicht gelaufen. Mal schauen, wie wir dem Eclipse noch den Debugger beibringen.

    Fazit:

    Wer bereits an Eclipse gewöhnt ist, sollte auf jeden Fall umsteigen! Ich finde die Geschwindigkeit ist echt nicht schlecht und das auf einem Oldi-Computer (Dell Inspiron, 1.7 GHz -> nix mit Core Duo oder so, 1.2 GB RAM).

    Leider bin ich im Moment noch gerade in den Prüfungen und für richtiges Testen hat es noch nicht gereicht 🙁 … aber im Juni wird wieder entwickelt 🙂