Visualizzazione Stampabile
-
Uniforum workshop
Sto creando un plugin e una serie di modifiche - anche a livello di template - che permettono di mostrare sottosezioni di un singolo forum come se fossero dei forum separati.
Il sistema applicato è ideale per forum tematici, che si dividono anche in settori a livello di nomi di dominio o sottodomini. La gestione del forum e degli utenti rimane unica.
Ho pensato che potrebbe essere interessante per alcuni sistemisti, per cui pubblico qui i vari passi da seguire via via che li sviluppo e applico. E' "workshop" in quanto è in sviluppo e aperto a suggerimenti e migliorie.
-
Plugin hook: global_bootstrap_init_start
Titolo: Set bburl
Codice:
Codice PHP:
$vbulletin->options['bburl'] = 'http://' . $_SERVER['HTTP_HOST'];
Questo codice fa sì che le URL siano tradotte accuratamente in base al dominio o sottodominio indirizzato. Per funzionare, Enforce Canonical URL deve essere impostato a Off.
-
Plugin hook: global_bootstrap_init_start
Titolo: Set bbtitle
Codice:
Codice PHP:
switch($_SERVER['HTTP_HOST'])
{
case 'forum.pagerobot.com';
case 'www.pagerobot.com';
case 'pagerobot.com';
$vbulletin->options['bbtitle'] = 'Pagerobot';
break;
}
Questo codice imposta accuratamente il titolo del forum, che potrebbe essere uguale, ma anche diverso a secondo i casi. E' possibile aggiungere altri domini e altri titoli, che sovrasscrivono il valore impostato nelle opzioni. E' un'ottima idea utilizzare le opzioni per il dominio predefinito e le modifiche per le sottosezioni che dovranno apparire come forum separati.
-
Per provare il sistema, che già da ora funziona, è necessario aggiungere un dominio fittizio nella vostra gestione DNS (oppure nel file hosts), e aggiungere un record Apache per Virtual Hosts, e riavviare il server web.
Un record valido potrebbe essere:
Codice:
<VirtualHost 1.2.3.4:80>
ServerName testsite.com
ServerAlias www.testsite.com
ServerAlias www.sito.com sito.com
ErrorLog /vhosts/testsite.com/weblogs/error.log
DocumentRoot /vhosts/testsite.com/httpdocs
<Directory /vhosts/testsite.com/httpdocs>
Include conf/standard.conf
</Directory>
</VirtualHost>
-
E' importante che tutti i file si trovino sempre nello stesso dominio. Dal momento che si utilizzano domini realmente diversi, non funziona più nulla. Lo stesso vale anche per il database. Comunque, già ora è possibile ammirare il fatto che la URL non cambia durante la navigazione e che l'utente abbia l'impressione di navigare su un sito fisicamente separato.
-
In base al record Apache di sopra, si aggiusta il codice del plugin per il titolo del forum come segue:
Codice:
Codice PHP:
switch($_SERVER['HTTP_HOST'])
{
case 'www.testsite.com';
case 'testsite.com';
$vbulletin->options['bbtitle'] = 'Test Site';
break;
case 'www.sito.com';
case 'sito.com';
$vbulletin->options['bbtitle'] = 'Sito';
break;
}
-
Il seguente plugin sostituisce tutte le referenze a "forum.php" con "/". E' necessario per evitare che si salti incidentalmente al livello superiore.
Plugin hook: global_complete
Titolo: Replace forum.php
Ordine esecuzione: 9999 (o comunque per ultimo)
Codice PHP:
$output = str_replace('"forum.php"', '"/"', $output);
Inoltre è necessario creare delle regole aggiuntive nel file .htaccess:
Codice:
RewriteCond %{HTTP_HOST} ^forum\.kalorienbombe\.com$ [NC]
RewriteRule ^$ forumdisplay.php?f=7
In questo particolare caso, viene mostrato una categoria, se l'accesso avviene con la URL diretta senza specificare un file o una sottocartella particolare, ad esempio: http://forum.kalorienbombe.com/
-
Bella Giovanni.
Da provare :) .
-
davvero eccezioanale sei un mago del web giovanni..stasera comincio a far le prove ..a me mi piace
-
Citazione:
Originariamente Scritto da
colin
davvero eccezioanale sei un mago del web giovanni..stasera comincio a far le prove ..a me mi piace
solo una precisazione ,ma a livello legale si rischia qualcosa???anche se credo conoscendoti che hai gia' esaminato la cosa molto dettagliatamente