Issuu on Google+

Creazione di un componente: guida passo passo Nome finale del componente: Galleria Kart (semplice galleria immagini) Lavoro eseguito su script “Digital Myth Photo Album Script” Numero dei file di partenza: 2 Numero delle directory di partenza: 2

(index.php e header.php) (thumbs e image)

Numero dei file al termine del lavoro: 8 (admin.galleria_kart.html.php, admin.galleria_kart.php, install.galleria_kart.php, galleria_kart.xml, galleria_kart.php, galleria_kart.html.php, header.php, direct.php) ---------------------------------------------------------------------------------------------

1) Operazione: prova in locale dello script e stesura del file XML La prima operazione e’ stata quella di testare lo script in locale al fine di verificare il corretto funzionamento. Percui semplicemente andiamo a creare una directory nella root (per convenzione provascript) e si richiama il file inserendo il percorso assoluto, ovvero http://localhost/provascript/index.php. Ok lo script funziona correttamente, percui prepariamoci al passo successivo. Il primo file da creare e’ l’ XML al quale ho dato il nome: galleria_kart.xml (qui sotto eccolo nel listato) 1 <?xml version="1.0" ?> 2 <mosinstall type="component"> 3 <name>galleria_kart</name> 4 <creationDate>16 gennaio 2006</creationDate> 5 <author>Paolo555</author> 6 <copyright>This component is released under the GNU/GPL License, </copyright> 7 <authorEmail>paologogni@tin.it</authorEmail> 8 <authorUrl>www.valbossaracing.org</authorUrl> 9 <version>0.2a</version> 10 <description>Semplice Galleria Immagini</description> 11 <params /> 12 <files> 13 <filename>galleria_kart.php</filename> 14 <filename>header.php</filename> 15 <filename>galleria_kart.html.php</filename> 16 <filename>direct.php</filename> 17 </files> 18 <images /> 19 <install> 20 <query /> 21 <query /> 22 </install> 23 <installfile>install.galleria_kart.php</installfile> 24 <uninstall> 25 <queries /> 26 </uninstall> 27 <administration> 28 <menu>galleria kart</menu> 29 <submenu> 30 <menu task=></menu> 31 <menu task=></menu> 32 </submenu> 33 <files> 34 <filename>admin.galleria_kart.php</filename> 35 <filename>admin.galleria_kart.html.php</filename> 36 </files> 37 <images /> 38 </administration> 39 </mosinstall>


Riga 2:la stringa ci dice che abbiamo a che fare con un componente. Righe dalla 3 alla 10: qui diamo il nome al componente e compiliamo con i nostri dati (vedi email,copyright ecc nel mio caso galleria_kart ,ma potremmo benissimo chiamarlo Sempronio o con qualsiasi altro nome) Righe dalla 12 alla 17: questi non sono altro che i file che io ho creato e che voglio che vengano caricati.Questi file,in questo esempio,verranno caricati nella directory “components/com_galleria_kart/”. Mi soffermo un attimo su queste righe, in quanto e’ proprio qui che ho incontrato i primi problemi. La riga 3 “ <name>galleria_kart</name> “ non solo da il nome al componente, ma anche ad alcuni file del listato (fate attenzione al maiuscolo e minuscolo! In locale tutto funziona sempre,ma in remoto no!); percui passo successivo e’ stato quello di rinominare il file index.php in galleria_kart.html.php. Ho poi creato un altro file a cui ho dato il nome: galleria_kart.php . Il file e’ strettamente legato al galleria_kart.html.php in quanto permette di far partire proprio lo script. Senza questo file sicuramente vi ritroverete questo genere di errore: “La pagina alla quale stai provando ad accedere non esiste. Per favore seleziona una pagina dal menu principale”. Di seguito riporto il listato del file in questione: galleria_kart.php 1<?php 2 3 defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); 4 5 require_once( $mainframe->getPath( 'front_html' ) ); 6 ?> La riga 5 e’ quella principale. Da notare sempre il nome del file, strettamente collegato alla riga 3 del file XML. Il file header.php non ha subito nessuna modifica. Riga 23: install.galleria_kart.php 1 <?php 2 //Installation 3 // Don't allow direct linking 4 defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); 5 function com_install() 6{ 7 echo 'Componente Installato Correttamente!'; 8 return true; 9 } 10 $handle = fopen("http://valbossaracing.org/components/com_galleria_kart/direct.php", "r+"); 11 ?> Dalla riga 23 entriamo nella sezione Admin (tutti i file vengono salvati nella cartella “administrator/components/com_galleria_kart/”), ovvero ritroveremo un richiamo al nostro componente sotto la voce Componenti. Il file originale e’ senza la riga 10 che altri non e’ che un richiamo ad aprire il file direct.php (questa riga quindi non e’ necessaria a meno che non abbiate intenzione di richiamare un file esterno …inutile dire che se aggiungente un richiamo ad un file,questo necessariamente dovra’ comparire anche nel listato XML (nel mio caso compare nella riga 16)).Questo file altro non fa che creare 2 cartelle (image e thumbs) tramite il comando Mkdir contenuto nel file direct.php.

Righe 27 alla 38: Riga 28: Nel pannello amministratore sotto componenti comparira’ la dicitura Galleria Kart. Nelle righe 34 e 35 si fanno riferimento a 2 file: admin.galleria_kart.php e admin.galleria_kart.html.php. Iniziamo con admin.galleria_kart.php


1 <?php 2 // Don't allow direct linking 3 defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); 4 require_once( $mainframe->getPath( 'admin_html' ) ); 5 galleria_kart_html::aboutHTML(); 6 ?> La riga 5 prende il nome del componente, percui se avete deciso di chiamare la vostra galleria Sempronio la stringa sara’ compilata come segue: “ Sempronio_html::aboutHTML(); “. Anche in questo caso il resto rimane invariato. Passiamo ora all’ultimo file admin.galleria_kart.html.php . 1 <?php 2 // Don't allow direct linking 3 defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' ); 4 class galleria_kart_html { 5 function aboutHTML() { 6 ?> 7 <table cellpadding="4" cellspacing="0" border="0" width="100%"> 8 <tr> 9 <td width="100%"> 10 <span class="sectionname"> 11 Galleria Kart Test: OK!! 12 </span> 13 </td> 14 </tr> 15 </table> 16 <table cellpadding="4" cellspacing="0" border="0" width="100%" class=""> 17 <tr> 18 <td width="10%"> 19 Version 20 </td> 21 <td> 22 0.2a</td> 23 </tr> 24 </table> 25 <?php 26 } 27 } 28 ?> Anche in questo caso andremo a modificare qualcosa, ed esattamente la riga 4 (con il riferimento Sempronio otterremo: “class Sempronio_html { “ e la riga 11 inserendo al posto di Galleria Kart “ Sempronio Test: OK! “.

2) Operazione: esecuzione del componente Terminato di compilare tutti i file (attenzione ancora una volta al maiuscolo e minuscolo!) si andra’ a zippare tutti i file per ottenere “nomefile.zip” . Una piccola precisazione: avendo utilizzato come nome galleria_kart, quasi tutti i miei file prendono questo nome, logico che se avessi utilizzato Sempronio come nome del componente i file si sarebbero trasformati in admin.Sempronio.html.php, admin.Sempronio.php, install.Sempronio.php, Sempronio.html.php, Sempronio.php e cosi’ via. Fatta questa operazione carichiamo il componente e attendiamo che tutto vada a buon fine (se notate il nome del componente e’ comparso sotto la lista dei componenti).


Passo finale e’ quello di creare un collegamento dal menu’ principale del sito. Andiamo su mainmenu sotto menu (sempre da admin) e posizioniamoci su NUOVO (in alto a destra). Ora selezioniamo “componente” (situato nella lista Componenti).Selezionare poi Avanti

Nella voce nome metteremo il nome che dovra’ comparire nel menu’ (nel mio caso ho messo Foto Kart) Poco piu’ sotto selezioniamo il nostro componente appena creato nella voce Componente (galleria kart o Sempronio o il nome del vostro componente) Ora diamo applica (menu’ in cima a sinistra).

A questo punto il lavoro e’ terminato.


ProvaFB_S_15