Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Tipps & Tricks ›

[HOWTO] Wie schreibt man in Drupal ein Modul

Eingetragen von torfnase (1491)
am 12.08.2010 - 20:37 Uhr in
  • Tipps & Tricks
  • Drupal 6.x

Diesmal habe ich mich mit der Frage, wie man ein Modul in Drupal schreibt, befaßt.
Das Tutorial richtet sich an Anfänger und es werden wirklich nur so ein paar Grundlagen erwähnt.

Es werden dabei im wesentlichen folgende Fragen beantwortet:

Wie ist ein Modul aufgebaut ?
Wie erzeugt man mit Drupal eine MySql-Tabelle?
Wie ändert man im Adminbereich das Menü?
Wie erzeugt man im Admin Bereich ein Formular und speichert die Angaben aus dem Formular in der erzeugten MySql-Tabelle ?
Wie ließt man die Daten aus der Mysql-Tabelle wieder aus und läßt sie an einer bestimmten Stelle auf der Seite anzeigen ?

Das ist so ein grober Überblick über die einzelnen Punkte. Das Tutorial besteht aus 3 Teilen. Leider ist es mir nicht so gut gelungen, die einzelnen Programm-Snippets wirklich umfangreich und ausführlich zu kommentieren.

Viel Spaß beim Anschauen :-)

‹ [HOWTO]Wie installiert man einen WYSIWYG-Editor in Drupal [HOWTO] Newsfeeds mit Views erstellen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Nur eine Vermutung, aber...

Eingetragen von Exterior (2903)
am 12.08.2010 - 20:40 Uhr

Nur eine Vermutung, aber... hast du diesmal die Video-Links vergessen? ^^

  • Anmelden oder Registrieren um Kommentare zu schreiben

Da hast du natürlich

Eingetragen von torfnase (1491)
am 12.08.2010 - 22:13 Uhr

Da hast du natürlich vollkommen recht....
also hier die URL
http://www.youtube.com/watch?v=G7CWrVomaH0

man kann es aber auch leicht finden, wenn man bei YouTube nach Drupal Modul sucht....

Danke für den Hinweis :-))

Drupal Video-Tutorials

  • Anmelden oder Registrieren um Kommentare zu schreiben

Anmerkungen

Eingetragen von stBorchert (6003)
am 13.08.2010 - 13:21 Uhr

Hallo.
Ersteinmal vorweg: ich finde es gut, dass Du Dir die Zeit nimmst, diese Videos aufzunehmen und auch soviel Arbeit in die Erstellung der Tutorials steckst.

Jetzt kommt allerdings das "aber".
Leider vermittelst Du im Video nicht die Coding-Standards von Drupal sondern bringst die Zuseher unglücklicherweise auf einen Pfad abseits der Standards.

Das fängt bereits mit der .info Datei an. Dort hinterlegst Du die Beschreibung des Moduls in deutscher Sprache. Das funktioniert zwar, ist so jedoch leider falsch. Texte (auch Modulbeschreibungen) werden generell in englischer Sprache angegeben und dann notfalls per mitgelieferter .po Datei bei der Installation automatisch übersetzt.

Weiter geht das dann mit [api:hook_menu] (eigentlich überall). Auch dort verwendest Du deutsche Texte (Zitat aus der API-Dokumentation: The untranslated title of the menu item).

Viel weiter habe ich mir den Screencast jetzt nicht angeschaut, jedoch sind da so einige Haken drin, die so nicht wirklich korrekt sind und zu Verwirrungen führen können.

Oh, nachdem ich die Screencasts doch noch durchgeschaut habe, ist mir noch etwas aufgefallen ... Du fügst die zu speichernden Werte einfach so ohne jegliche Validierung in die SQL-Query von [api:db_query] ein. Das ist höchstgradig gefährlich und darf so nicht gemacht werden! Damit erzeugst Du eine richtig schöne Sicherheitslücke.
Gerade Anfänger wissen nichts von diesen Gefahren und stolpern so in eine ganz böse Falle.

Auch ist $node nicht immer in der page.tpl.php vohanden. Die Variable ist nur da, wenn exakt eine Node angezeigt wird.

Wie schon gesagt: es ist schön, dass Du Dir die Mühe machst, diese Tutorials zu erstellen. Aber dann vermittle die Grundlagen bitte auch korrekt und ohne diese Fehler.

 Stefan

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich glaube, wir haben uns da

Eingetragen von torfnase (1491)
am 13.08.2010 - 14:05 Uhr

Ich glaube, wir haben uns da auch ein wenig falsch verstanden....
aber ich hoffe, ich kann das noch aufklären :-)

du hast natürlich in allem, was du oben schreibst Recht, aber

und nun kommt das ABER :-)

Meiner Meinung nach erwartest du viel zu viel von einem kleinen Tutorial......

es ging bei diesem Tutorial nicht darum, eine Modul zu schreiben, welches Drupal tatsächlich ergänzen könnte, sondern es ging nur darum, zu zeigen, wie man überhaupt mittels Hooks Einfluß auf das Geschehen in Drupal nehmen kann. Ich habe darauf hingewiesen, dass man an der Stelle nicht ohne ein Handbuch auskommt. Natürlich kann man in den Beschreibungen englische Text eintragen und dann auch noch eine Übersetzungsdatei erstellen, um diese wieder ins Deutsche zu übersetzen. Natürlich existiert die Variable $node nicht immer in der page.tpl.php. Ich hatte versucht, dass so zu beschreiben, dass ich gesagt haben, der Text wird auf allen INHALTS-Seiten angezeigt. Ich fand das wesentlich klarer, als wenn ich gesagt hätte: der Text wird auf allen Seiten angezeigt, die eine node sind.

@Grundlagen vermitteln
Meiner Meinung nach kann ein kleines Tutorial von noch nicht mal 30 Minuten keine Grundlagen vermitteln, sondern es kann lediglich "Appetit" auf die Beschäftigung mit Drupal machen. In dieser Art und Weise sind ja die meisten Videos, die man zu diesem Thema bei YouTube finden kann. Grundlagen werden z.B. von der Firma Lullabot (das ist dir sicher ein Begriff) vermittelt, aber da kostet auch das volle Programm so ca. 1000 USD.

@Fehler
Ein Fehler ist es, wenn etwas nicht funktioniert. Ich würde in diesem Zusammenhang höchstens von Warning oder Notice sprechen wollen :-)

Drupal Video-Tutorials

  • Anmelden oder Registrieren um Kommentare zu schreiben

Fehler

Eingetragen von stBorchert (6003)
am 13.08.2010 - 14:20 Uhr
torfnase schrieb

es ging bei diesem Tutorial nicht darum, eine Modul zu schreiben, welches Drupal tatsächlich ergänzen könnte, sondern es ging nur darum, zu zeigen, wie man überhaupt mittels Hooks Einfluß auf das Geschehen in Drupal nehmen kann.

Schon klar. Jedoch darf man dabei nicht sämtliche Regeln über den Haufen werfen und Anfängern falsche Vorgehensweisen vermitteln.

torfnase schrieb

Ein Fehler ist es, wenn etwas nicht funktioniert. Ich würde in diesem Zusammenhang höchstens von Warning oder Notice sprechen wollen :-)

Sicherheitslücken einzubauen und diese dann per Tutorial als gängige Praxis zu vermitteln (genau das tut man nämlich mit einem Tutorial für Anfänger) halte ich für einen kritischen Fehler. Und mit dieser Meinung stehe ich nicht wirklich alleine da.
Der Smiley macht Deine Aussage übrigens nicht wirklich besser.

Wie soll denn ein Anfänger den korrekten Umgang mit Drupal lernen, wenn er schon in dem kleinsten Howto solche groben Fehler vorgesetzt bekommt? Wenn man bisher noch keine Erfahrung damit gemacht hat, tappt man doch vollkommen ahnungslos in diese Falle und wundert sich später, warum die Seite (im besten Fall) nicht mehr funktioniert.

Also nochmal: bitte vermeide in zukünftigen Tutorials solche groben Fehler. Das schadet nicht nur den Leuten, die danach handeln.

Tipp: Beachte die Verhaltensregeln des DrupalCenter.

Logo undpaul

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich denke, wir haben unsere

Eingetragen von torfnase (1491)
am 13.08.2010 - 15:08 Uhr

Ich denke, wir haben unsere Standpunkte eindeutig formuliert und es ist alles dazu gesagt.

Ich kann dir aber nicht versprechen, dass es den Inhalt meiner Tutorials, die ich auf YouTube veröffentliche, beeinflussen wird.

btw: mach doch an dieser Stelle etwas zur Validierung von SQL-Abfragen, das würde doch eine prima Ergänzung zu meinem Beitrag sein.

Drupal Video-Tutorials

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • [gelöst]Zufallsausgabe von Inhalt
  • Views für 2 Kategorien
  • Drupal 8/9 SEO-Beratung/Coaching
  • Hilfe zu Views und Filter?
  • Variable aus dem inkludierten Partial Template auslesen
  • Probleme beim Versand von Mails via Drupal 9
  • Drupal 9: Wie kommt der Inhalt eines selbst erstellten Feldes in page-title.html.twig
  • Drupal DACH Meetup - Donnerstag 4. März 2021, 19 Uhr
  • Layout-Builder hängt
  • Sollte das Forum vielleicht lieber offline gehen?
  • Cronjob für Multisite
  • Drupal oder Symfony Web Entwickler (m/w/i*) in Hamburg
Weiter

Neue Kommentare

  • Habs gefunden
    vor 13 Stunden 33 Minuten
  • eine View ist eine Datenbankabfrage
    vor 13 Stunden 46 Minuten
  • manarak schrieb Ich konnte
    vor 1 Tag 17 Stunden
  • Geschafft!
    vor 1 Tag 19 Stunden
  • montviso schrieb Bist Du auf
    vor 1 Tag 20 Stunden
  • bewerben Sie sich bitte wie
    vor 2 Tagen 29 Minuten
  • Dann per persönlicher
    vor 2 Tagen 1 Stunde
  • da es sich um eine
    vor 2 Tagen 1 Stunde
  • Danke AliGerne möchte ich
    vor 2 Tagen 1 Stunde
  • Danke für den Tipp! Ich werde
    vor 2 Tagen 1 Stunde

Statistik

Beiträge im Forum: 246076
Registrierte User: 18884

Neue User:

  • uniquename
  • xapizm
  • maklko

» Alle User anzeigen

User nach Punkten sortiert:
wla9015
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3917
ronald3832
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 7 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association