Gepostet am:08.01.2006 09:53
#1
Modul erstellen
08.01.2006 09:53 Hallo zusammen,
ich beschäftige mich gerade mit dem Erstellen von eigenen Modulen und komme nicht weiter.
Als Grundlage habe ich mir verschiedene fertige Module angesehen. Nun habe ich das bb-blanko-Modul (hier aus dem Forum) heruntergeladen und versucht um einen Block zu erweitern. Mir geht es zunächst einmal darum einen Block zu erstellen der nur einen Namen ausgibt (die Steuerung mit der Datenbank soll später dazukommen).
die xoops-version.php sie so aus:
<?php
$modversion['name'] = "bb_blanko";
$modversion['version'] = "1.00";
$modversion['description'] = "baerchns Blanko Modul";
$modversion['author'] = "baerchn";
$modversion['credits'] = "http://www.baerenbuch.de";
$modversion['help'] = "http://www.baerenbuch.de";
$modversion['license'] = "GPL see LICENSE";
$modversion['official'] = 1;
$modversion['image'] = "images/logo.gif";
$modversion['dirname'] = "bb_blanko";
// Admin things
$modversion['hasAdmin'] = 0;
$modversion['adminpath'] = "";
// Menu
$modversion['hasMain'] = 1;
$modversion['blocks'][1]['file'] = "blocks/bb_blanko_block.php";
$modversion['blocks'][1]['show_func'] = "bb_blanko_show";
$modversion['blocks'][1]['name'] = "Blanko-Modul";
$modversion['blocks'][1]['template'] = "bb_blanko_block.html";
$modversion['blocks'][1]['description'] = "Testmodul";
?>
im Unterordner blocks steht die Datei bb_blanko.php:
<?php
// function to display
function bb_blanko_show($options) {
$block = array();
$message = array();
$message['vorname'] = "Hans";
$message['nachname'] = "GuckindieLuft";
$block['liste'][] = $message;
}
return $block;
}
?>
schließlich noch im Unterordner templates/blocks die Datei bb_blanko-block.html:
<ul>
<{foreach item=message from=$block.liste}>
<li>
<{$message.vorname}> <{$message.nachname}>
</li>
<{/foreach}>
</ul>
Das Modul läßt sich problemlos installieren und deinstallieren, auch der Block erscheint in der Blockadministration und läßt sich freischalten. Nur wird auf meiner Webseite dieser Block nicht mit ausgegeben.
Ein Phänomen ist mir aber noch aufgefallen:
in der Zeile $modversion['blocks'][1]['file'] = "blocks/bb_blanko_block.php"; habe ich den Unterordner blocks mit angegeben. Wenn "blocks" fehlt dann bleibt die gesamte Webseite leer (wenn der Block sichtbar geschalten ist).
Es wäre toll wenn mir jemand Tipps geben könnte was ich vergessen oder falsch gemacht habe.
Ralf