Serving XOOPSers in the Nordic Countries

XOOPS NORDIC

Nordic Support Site for XOOPS CMS

Login

Username:

Password:

Remember me



Lost Password?

Register now!

Who's Online

6 user(s) are online (1 user(s) are browsing Articles)

Members: 0
Guests: 6

more...

New Members

ITYKenny 2013/5/18
WinfredJo 2013/5/5
patricksch 2013/5/3
HomerMont 2013/4/27
JadeUPT 2013/4/27
edbjan 2013/4/26
LenardKet 2013/4/15
FancyHalto 2013/4/15
max 2013/4/12
AugustusN 2013/4/11
http://www.danordesign.com/

Author : anderssk
Article ID : 10
Audience : Alle
Version 1.00.02
Published Date: 2008/11/7 5:50:00
Reads : 7698

Denne vejledning beskriver hvordan du kan lave dit eget simple modul til XOOPS.

Det er den første i en række af guides og jeg vil senere bygge videre på guiden, med flere modul-funktinaliteter.

Hvilket værktøj du vil benytte er op til dig selv. Du kan benytte Notepad, Wordpad, Notepad++, Dreamweaver eller en anden WYSIWYG editor.

I vejledningerne benytter jeg ikonerne fra XOOPS.
Disse ikoner kan hentes her

Basalt indhold

Opret en mappe og give den et sigende navn.
I dette eksempel kalder jeg den (og derved også modulet) for Test.

1. Opret en ny fil og kald den xoops_version.php

Filens indhold:

<?php 
// Test modul 
// Oprettet af XOOPSNORDIC.ORG 
$modversion['name'] = "Test"
$modversion['version'] = 1.00
$modversion['description'] = "Dette er et testmodul for at vise hvor nemt det er at lave sit eget modul"
$modversion['author'] = "XOOPSNORDIC.ORG"
$modversion['credits'] = "XOOPSNORDIC.ORG"
$modversion['help'] = ""
$modversion['license'] = "GPL see LICENSE"
$modversion['official'] = 0
$modversion['image'] = "images/test.png"
$modversion['dirname'] = "test"

// Admin 
$modversion['hasAdmin'] = 0

// Menu 
$modversion['hasMain'] = 1
?>


Lad os pille det fra hindanden og se hvad de forskellige ting betyder.

<?php
// Test modul
// Oprettet af XOOPSNORDIC.ORG

Den første linie starter PHP, hvilket betyder at alt herunder vil blive behandlet som PHP. Vigtigt! Indsæt aldrig et mellemrum i starten af første linie. Hvis du gør dette vil du få en fejlmeddelelse "headers already sent".
De to linier er kommenteret ud. Det er meget normalt at man skriver modulets navn og hvem der har lavet det.

$modversion['name'] = "Test";
$modversion['version'] = 1.00;
$modversion['description'] = "Dette er et testmodul for at vise hvor nemt det er at lave sit eget modul";

Disse 3 er ligetil. Som navnet siger er det navnet på modulet, versionen og en beskrivelse.


$modversion['author'] = "XOOPSNORDIC.ORG";
$modversion['credits'] = "XOOPSNORDIC.ORG";
$modversion['help'] = "";

De første to er også ligetil. Navnet på udvikleren og credits til andre.
Help skal, hvis det benyttes, pege på en hjælpefil som f.eks. help.html eller help.php. Funktionen benyttes ikke her.

$modversion['license'] = "GPL see LICENSE";
$modversion['official'] = 0;
$modversion['image'] = "images/test.png";
$modversion['dirname'] = "test";

Første linie er beskrivelsen på licens. Husk at XOOPS core benytter GPL, som betyder at dit modul også hører under GPL licens.
Du kan læse mere om GPL her.
Official viser om modulet er officielt. I de fleste tilfælde er det ikke officielt og værdien skal så være 0.
Image er modulets ikon, som ses i administrationssiderne.
Dirname er mappenavnet på modulet.

// Admin
$modversion['hasAdmin'] = 0;

// Menu
$modversion['hasMain'] = 1;
?>


hasAdmin=0 betyder at der ikke er nogen administrativ sektion i dette modul.
Da modulet skal vises i hovedmenuen, sættes hasmain til 1. Hvis værdien blev sat til 0, ville det ikke blive vist i hovedmenuen.
Hvis du satte hasAdmin og hasMain til 0, ville det stadig blive vist i moduladministrationen, så du kunne afinstallerer det.
Den sidste linie stopper PHP.
Vigtigt! Efterlad aldrig et mellemrum efter større end tegnet. Det kan give uforudsigelige fejl.


Nu skal vi lave noget indhold til modulet.
Lav en fil med navnet index.php
Filens indhold skal være;
<?php
// Test 
// Oprettet af XOOPSNORDIC.ORG
require('../../mainfile.php');
require(
XOOPS_ROOT_PATH.'/header.php');

require(
XOOPS_ROOT_PATH.'/footer.php');
?>


I virkeligheden er der kun 3 nye linier, i forhold til hvad du lige har lavet.
Dit indhold skal stå mellem linierne "....header.php" og "....footer"

Lad os prøve det.

<?php
// Test 
// Oprettet af XOOPSNORDIC.ORG
require('../../mainfile.php');
require(
XOOPS_ROOT_PATH.'/header.php');

echo 
"Hello world!"

require(
XOOPS_ROOT_PATH.'/footer.php');
?>


Du kan nu gemme filerne i ../modules/
Husk også at gemme test.png i ../modules/images

Nu kan du rent faktisk installerer modulet og se menupunktet i hovedmenuen.

Tillykke! - Det var dit første modul



Hvis du ikke ønsker at kode i ren PHP, kan du indsætte HTML-kode

<?php
// Test 
// Oprettet af XOOPSNORDIC.ORG
require('../../mainfile.php');
require(
XOOPS_ROOT_PATH.'/header.php');
?>

[i]html-kode indsættes her [/i] 

<?php
require(XOOPS_ROOT_PATH.'/footer.php');
?>


Som du kan se, så afsluttes PHP-koden lige efter ...header.php
Så kommer HTML-koden
Og derefter starter PHP-koden igen, for at få ...footer.php med.

Nemt, men måske ikke særlig kønt

5
Printer Friendly Page Send this Article to a Friend
The comments are owned by the author. We aren't responsible for their content.

Author Thread
Runeher
Published: 2009/4/23 4:06  Updated: 2009/4/23 4:07
Module Developer
Joined: 2008/7/11
From:
Comments: 195
 Re: Lav dit eget modul: Guide 1 - Basalt indhold
Det er en fordel å bruke html fremfor php, da html laster hurtigere enn php!

Derfor kan du med fordel bruke templates i moduler.

For å legge til en template, legg til mappen 'templates'. Der legger du html filen. Så legger du til i xoops_version.php:

$modversion['templates'][1]['file'] = "navnet_på_html_filen.html"
$modversion['templates'][1]['description'] = "Optional";


og index.php blir da sånn:

<?php 
include("../../mainfile.php"); 
$xoopsOption['template_main'] = "navnet_på_html_filen.html"
include(
XOOPS_ROOT_PATH."/header.php");   
$xoopsOption['show_rblock'] = 1;    
include(
XOOPS_ROOT_PATH."/footer.php");  
?>


Nå endrer du kun i templates/navnet_på_html_filen.html og du kan bruke MS Frontpage om du vil... men husk UTF8 wo/bom i Notepad++ om du bruker æøå...
Translate to other languages
 
Create a XOOPS module
This site have PageRank
Min PageRank!
Powered by Danordesign