Einfaches "Hello World!"-Modul erstellen - wie?

am 04.06.2006 - 17:59 Uhr in
Tach,
Ich bin neu hier, hab die Suchfunktion benutzt, und zu keinem Ergebnis gekommen.
Mein Problem: Ich möchte gerne einen Text in einem Kasten (wie z.B. "Wer ist online") anzeigen lassen. Leider habe ich keine PHP-Kenntnisse, und habe das "Module erstellen"-Tutorial nicht so richtig verstanden. Wie kann ich das umsetzen?
PC: Das einzige was ich weiß, ist, dass ich Text in PHP mit echo "Hello World!".
- Anmelden oder Registrieren um Kommentare zu schreiben
Re: Einfaches "Hello World!"-Modul erstellen - wie?
am 04.06.2006 - 22:17 Uhr
Ich möchte gerne einen Text in einem Kasten (wie z.B. "Wer ist online") anzeigen lassen.
"Wer ist online" ist ein Block.
Und neue Blöcke können sehr einfach dem System hinzugefügt werden indem zuerst der Block unter administer > blocks > add block erstellt und danach aktiviert wird.
Dagegen kann ein Modul ohne PHP-Kenntnisse nicht erstellt werden.
Achso. Ich dachte da gäbs
am 05.06.2006 - 10:06 Uhr
Achso. Ich dachte da gäbs keinen Unterschied...
Danke!
Re: Achso. Ich dachte da gäbs
am 05.06.2006 - 10:30 Uhr
Es gibt zwei Wege Blöcke zuerstellen.
Der oben genannte Weg ist der einfachere und benötigt keine PHP-Kenntnisse.
Die zweite ist die Modul-Programmierung und setzt PHP- und Drupal-Wissen vorraus.
Hello World Ausgabe
am 29.03.2009 - 23:21 Uhr
Da mir Drupal 6.x ganz gut gefallen hat wollte ich mal testen ob ich auch auf die schnelle ein eigenes Modul schreiben kann.
Als nächstes wollte ich über den hook_menu callback aufruf ein hook_page ausgabe machen.
Obwohl ich so viele beispiele gefunden habe, bekomme ich irgendwie user access probleme.
Das themes wird korekt angezeigt aber leider mit der Fehlermeldung:
Zugriff verweigert
Sie haben keine Zugriffsberechtigung für diese Seite.
Könnte Ihr mir Bitte erklären warum der code nicht funzt.
function teo_help($path, $arg) {
$output = ''; //declare your output variable
switch ($path) {
case "admin/help#teo":
$output = '<p>'. t("This Screen Displays teos help site") .'</p>';
return $output;
}
}
function teo_perm() {
return array('access teo', 'create teo', 'administer teo');
}
function teo_menu() {
$items = array();
$items['teo'] = array(
'title' => 'teo list items',
'access' => TRUE,
'callback' => 'teo_page',
'type' => MENU_CALLBACK,
);
return $items;
}
function teo_page(){
print '<p>Hello world!</p>';
}
Re: Hello World Ausgabe
am 30.03.2009 - 00:44 Uhr
<?php
function teo_help($path, $arg) {
$output = ''; //declare your output variable
switch ($path) {
case "admin/help#teo":
$output = '<p>'. t("This Screen Displays teos help site") .'</p>';
return $output;
}
}
function teo_perm() {
return array('access teo', 'create teo', 'administer teo');
}
// Genaueres steht in
// <code>http://api.drupal.org/api/function/hook_menu</code>
function teo_menu() {
$items = array();
$items['teo'] = array(
'title' => 'teo list items',
'page callback' => 'teo_page', // War in Drupal 5 'callback'
'access arguments' => array('access teo'), // Wurde in teo_perm definiert
'type' => MENU_NORMAL_ITEM, // Damit die Seite im Menü erscheint
);
return $items;
}
// Die Callback-Funktion macht selbst keine Ausgabe. Sie liefert
// die Ausgabe an Drupal zurück, damit Drupal Blöcke drumherumpacken
// kann.
function teo_page(){
return '<p>Hello world!</p>';
}
?>
--
Re: Hello World Ausgabe
am 30.03.2009 - 01:05 Uhr
// Die Callback-Funktion macht selbst keine Ausgabe. Sie liefert
// die Ausgabe an Drupal zurück, damit Drupal Blöcke drumherumpacken
// kann.
ich habe das 'Page callback' angepasst leider kommt immer noch die Fehelrmeldung:
Zugriff verweigert
Sie haben keine Zugriffsberechtigung für diese Seite.
'page callback' => 'teo_page', // War in Drupal 5 'callback'
warum ruft diese zeile meine funktion teo_page() nicht auf und warum bekomme ich immer noch die fehlermeldung ?
Handbuch
am 30.03.2009 - 07:52 Uhr
Moin!
Nur mal so nebenbei: es existiert auf drupal.org ein sehr gutes Tutorial zum Erstellen von Modulen (und zufälligerweise hier auf DrupalCenter auch eine Übersetzung davon).
Stefan
Cache leeren
am 30.03.2009 - 09:55 Uhr
... und warum bekomme ich immer noch die fehlermeldung ?
Wahrscheinlich hast du die Menu-Cache nicht geleert.
--

Vielen dank
am 30.03.2009 - 10:30 Uhr
Es wahr wirklich der Cache.