Creazione pagine
- patrucco
- Utente
- Messaggi: 58
- Iscritto il: 09/04/2013, 1:46
- Link del Forum:
- Contatta:
Creazione pagine
Come posso creare delle pagine "esterne" al forum in cui poter mantenere comunque Header e footer al cui interno inserire una normale pagina html? chiaramente da linkare poi tramite apposito menù inserito nell'header...
www.patrucco.com
- alex75
- Amministratore
- Messaggi: 6268
- Iscritto il: 23/08/2012, 23:45
- Link del Forum: www.phpbb-italia.it
- Località: Palermo
Re: Creazione pagine
Serve un minimo di conoscenza di php e di html.
Va creata una pagina php per connettersi al database con la sua relativa pagina html dove includere header e footer.
Dovrebbe già esserci una guida se non ricordo male...
Questa mod ad esempio usa questo principio:
http://phpbb-italia.it/post4603.html
Va creata una pagina php per connettersi al database con la sua relativa pagina html dove includere header e footer.
Dovrebbe già esserci una guida se non ricordo male...
Questa mod ad esempio usa questo principio:
http://phpbb-italia.it/post4603.html
Regolamento Forum
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
- Lucky
- Utente
- Messaggi: 159
- Iscritto il: 15/10/2012, 20:33
- Link del Forum: http://www.portalxl.eu
- Località: Bari
- Contatta:
Re: Creazione pagine
C'è un'ottima guida di Micogian...
Creazione di pagine personalizzate in phpBB
Queste note vogliono essere una piccola guida per capire come sia strutturato un Forum phpBB e come si possa sfruttare questa conoscenza per creare nuove pagine utilizzando la struttura e lo stile del nostro Forum.
Mi riferisco a un interessante articolo datato 21 ago 2008 di "pentapenguin" su phpbb.com "Add a New Custom Page to phpBB" (Aggiungi una pagina personalizzata in phpBB).
Tutto il meccanismo del Forum phpBB si basa sul Database mysql che contiene e memorizza tutti i dati che fanno funzionare il Forum e che vengono via via inseriti attraverso i Topics.
Considerando che il Database contiene tutte le informazioni che ci possono servire, possiamo utilizzarlo per estrarre e visualizzare dati in maniera diversa da quella prevista per default.
Detto questo vediamo cosa si deve fare per aggiungere una pagina personalizzata nel nostro Forum.
Il meccanismo che ci permette di operare nel Forum è rappresentato da una pagina PHP che attraverso le funzioni e lo stile utilizzato ha il compito di eseguire la connessione al Database, il controllo e le autorizzazioni relative all'utente e attraverso opportune query predisporre i dati necessari da visualizzare.
La visualizzazione avviene tramite un file HTML inserito nel "template" del proprio style.
Questo file HTML contiene degli "INCLUDE" cioè delle righe di codice che inseriscono nella pagina file già pronti e che quindi non hanno necessità di essere riscritti ogni volta.
Avremo così dei file che inseriscono la testata ("overall.header.html"), il corpo (ad esempio "viewforum_body.html"), il piede ("overall.footer.html") e altri file tutti destinati a inserire una particolare sezione nella pagina.
Credo che la cosa migliore per capire questo meccanismo sia quella di realizzare una pagina di prova, vediamo come fare.
- Creare il file "user_page.php"
Con un editor di testo (Blocco Note o Note Pad) copiamo il seguente codice in un file che chiameremo "user_page.php".
Il prefisso "user_" da usare nei nostri file potrebbe essere una buona soluzione per evitare di confondere le nostre pagine personalizzate da quelle di sistema.
Fate attenzione che non ci siano spazi o righe vuote prima del tag <?php e alla fine del file.
Copiare il seguente codice in un file che chiameremo "user_page.php"
Vediamo cosa significano queste righe: le prime righe del codice hanno la funzione di abilitare il PHPBB, di
includere il file "common.php" che contiene tutte le funzioni di controllo del Database e dell'utente collegato.
- page_header('Title'); = è il titolo della pagina, quello che compare nella barra di controllo dei browser quando si
apre una pagina.
- $template->set_filenames(array('body' => 'user_page_body.html',)); = indica quale file HTML è collegato a questa pagina.
- make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx")); = è la parte a fondo pagina che consente di scegliere la Sezione del Forum.
- page_footer() = richiama il piede della pagina.
A questo punto potrebbe non essere necessario, ma se vogliamo includere nella nuova pagina le variabili nella nostra lingua
dobbiamo inserire il file che le contiene nella riga "$user->setup();"
in questo modo:
Sostituire il "nome_del_file_lingua" con il nome del file senza estensione che contiene la traduzione delle variabili in italiano.
Ad esempio, se le variabili utilizzate nella pagina sono inserite in "viewtopic.php" inserire:
Altra cosa che possiamo fare è inserire il Titolo della pagina modificando la riga:
Se volete creare una pagina accessibile solo agli iscritti dovete sostituire la riga:
con il seguente codice:
Nota: se volete restringere l'accesso dei motori di ricerca alla vostra pagina inserite il seguente codice:
In questo caso i "bot" verranno indirizzati verso la Home.
Il file "user_page_body.html"
Ora andremo a creare il file HTML necessario per visualizzare il file PHP appena creato.
Copiate con un editor di testo il seguente codice in un file nominandolo "user_page_body.html", il nome che abbiamo prima inserito nella sezione "template" del file PHP.
Se volete potete sostitituire il titolo della pagina e il contenuto.
Ad esempio sostituite la stringa "contenuto della pagina" con questo testo:
Abbiamo tutto quello che serve per fare una prova.
1) Copiamo il seguente codice in un file che chiameremo "user_page.php".
2) Copiamo il seguente codice in un file che chiameremo "user_page_body.html"
Caricate via FTP il file PHP nella root del Forum, mentre il file HTML va inserito nella cartella "template" del vostro stile.
Aprite il vostro browser e inserite l'url "http://www.vostro_sito.it/forum/user_page.php"
Naturalmente cambiate il nome "forum" se diverso, oltre al nome del dominio.
Se non ci sono stati errori avrete una pagina simile nella testata e piede al vostro Forum, ma con il corpo contenente il testo da voi inserito.
Con questa pagina di base possiamo inserire nel "corpo" quello che vogliamo.
Se invece vogliamo che la pagina sia visibile solo dagli utenti di un determinato gruppo (es.: group_id=2) , inseriamo il codice che rimanda al login tutti gli altri:
Se vogliamo escludere alcuni gruppi:
Creazione di pagine personalizzate in phpBB
Queste note vogliono essere una piccola guida per capire come sia strutturato un Forum phpBB e come si possa sfruttare questa conoscenza per creare nuove pagine utilizzando la struttura e lo stile del nostro Forum.
Mi riferisco a un interessante articolo datato 21 ago 2008 di "pentapenguin" su phpbb.com "Add a New Custom Page to phpBB" (Aggiungi una pagina personalizzata in phpBB).
Tutto il meccanismo del Forum phpBB si basa sul Database mysql che contiene e memorizza tutti i dati che fanno funzionare il Forum e che vengono via via inseriti attraverso i Topics.
Considerando che il Database contiene tutte le informazioni che ci possono servire, possiamo utilizzarlo per estrarre e visualizzare dati in maniera diversa da quella prevista per default.
Detto questo vediamo cosa si deve fare per aggiungere una pagina personalizzata nel nostro Forum.
Il meccanismo che ci permette di operare nel Forum è rappresentato da una pagina PHP che attraverso le funzioni e lo stile utilizzato ha il compito di eseguire la connessione al Database, il controllo e le autorizzazioni relative all'utente e attraverso opportune query predisporre i dati necessari da visualizzare.
La visualizzazione avviene tramite un file HTML inserito nel "template" del proprio style.
Questo file HTML contiene degli "INCLUDE" cioè delle righe di codice che inseriscono nella pagina file già pronti e che quindi non hanno necessità di essere riscritti ogni volta.
Avremo così dei file che inseriscono la testata ("overall.header.html"), il corpo (ad esempio "viewforum_body.html"), il piede ("overall.footer.html") e altri file tutti destinati a inserire una particolare sezione nella pagina.
Credo che la cosa migliore per capire questo meccanismo sia quella di realizzare una pagina di prova, vediamo come fare.
- Creare il file "user_page.php"
Con un editor di testo (Blocco Note o Note Pad) copiamo il seguente codice in un file che chiameremo "user_page.php".
Il prefisso "user_" da usare nei nostri file potrebbe essere una buona soluzione per evitare di confondere le nostre pagine personalizzate da quelle di sistema.
Fate attenzione che non ci siano spazi o righe vuote prima del tag <?php e alla fine del file.
Copiare il seguente codice in un file che chiameremo "user_page.php"
Codice: Seleziona tutto
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
page_header('Title');
$template->set_filenames(array(
'body' => 'user_page_body.html',
));
make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();
?>
includere il file "common.php" che contiene tutte le funzioni di controllo del Database e dell'utente collegato.
- page_header('Title'); = è il titolo della pagina, quello che compare nella barra di controllo dei browser quando si
apre una pagina.
- $template->set_filenames(array('body' => 'user_page_body.html',)); = indica quale file HTML è collegato a questa pagina.
- make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx")); = è la parte a fondo pagina che consente di scegliere la Sezione del Forum.
- page_footer() = richiama il piede della pagina.
A questo punto potrebbe non essere necessario, ma se vogliamo includere nella nuova pagina le variabili nella nostra lingua
dobbiamo inserire il file che le contiene nella riga "$user->setup();"
in questo modo:
Codice: Seleziona tutto
$user->setup('nome_del_file_lingua');
Ad esempio, se le variabili utilizzate nella pagina sono inserite in "viewtopic.php" inserire:
Codice: Seleziona tutto
$user->setup('viewtopic');
Codice: Seleziona tutto
page_header('Titolo della pagina');
Codice: Seleziona tutto
$user->setup();
Codice: Seleziona tutto
if ($user->data['user_id'] == ANONYMOUS)
{
login_box('', $user->lang['LOGIN']);
}
Codice: Seleziona tutto
if ($user->data['is_bot'])
{
redirect(append_sid("{$phpbb_root_path}index.$phpEx"));
}
Il file "user_page_body.html"
Ora andremo a creare il file HTML necessario per visualizzare il file PHP appena creato.
Copiate con un editor di testo il seguente codice in un file nominandolo "user_page_body.html", il nome che abbiamo prima inserito nella sezione "template" del file PHP.
Codice: Seleziona tutto
<!-- INCLUDE overall_header.html -->
<h2>Titolo della pagina</h2>
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<div class="content">
<p>
contenuto della pagina.
</p>
</div>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- INCLUDE jumpbox.html -->
<!-- INCLUDE overall_footer.html -->
Ad esempio sostituite la stringa "contenuto della pagina" con questo testo:
Codice: Seleziona tutto
Per creare una nuova pagina in phpBB è necessario:
<ul>
<li>creare un file PHP che stabilisce la connessione con il Database e fornisce i controlli necesssari.</li>
<li>inserire nei file "language" le eventuali variabili non previste per default.</li>
<li>creare il file HTML nel template del vostro stile che provvede a visualizzare i dati richiesti.</li>
</ul>
Abbiamo tutto quello che serve per fare una prova.
1) Copiamo il seguente codice in un file che chiameremo "user_page.php".
Codice: Seleziona tutto
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
page_header('Prova user_page');
$template->set_filenames(array(
'body' => 'user_page_body.html',
));
make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();
?>
Codice: Seleziona tutto
<!-- INCLUDE overall_header.html -->
<h2>Prova pagina personalizzata</h2>
<div class="panel">
<div class="inner"><span class="corners-top"><span></span></span>
<div class="content">
<p>
Per creare una nuova pagina in phpBB è necessario:
<ul>
<li>creare un file PHP che stabilisce la connessione con il Database e fornisce i controlli necesssari.</li>
<li>inserire nei file "language" le eventuali variabili non previste per default.</li>
<li>creare il file HTML nel template del vostro stile che provvede a visualizzare i dati richiesti.</li>
</ul>
</p>
</div>
<span class="corners-bottom"><span></span></span></div>
</div>
<!-- INCLUDE jumpbox.html -->
<!-- INCLUDE overall_footer.html -->
Aprite il vostro browser e inserite l'url "http://www.vostro_sito.it/forum/user_page.php"
Naturalmente cambiate il nome "forum" se diverso, oltre al nome del dominio.
Se non ci sono stati errori avrete una pagina simile nella testata e piede al vostro Forum, ma con il corpo contenente il testo da voi inserito.
Con questa pagina di base possiamo inserire nel "corpo" quello che vogliamo.
Se invece vogliamo che la pagina sia visibile solo dagli utenti di un determinato gruppo (es.: group_id=2) , inseriamo il codice che rimanda al login tutti gli altri:
Codice: Seleziona tutto
if ($user->data['group_id'] != '2')
{
login_box('', $user->lang['LOGIN']);
}
Codice: Seleziona tutto
if ($user->data['group_id'] == '2' || $user->data['group_id'] == '3' || $user->data['group_id'] == '4' )
{
login_box('', $user->lang['LOGIN']);
}
- legionario82
- Nuovo Utente
- Messaggi: 5
- Iscritto il: 07/10/2015, 14:57
- Link del Forum: www.napoliunicafede.it
Re: Creazione pagine
e se questa pagina avesse anche un codice css dove andrebbe inserito?
- alex75
- Amministratore
- Messaggi: 6268
- Iscritto il: 23/08/2012, 23:45
- Link del Forum: www.phpbb-italia.it
- Località: Palermo
Re: Creazione pagine
l'argomento si riferisce alla vecchia 3.0 comunque le modifiche css le aggiungerai al relativo file css di phpbb
Regolamento Forum
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<