Plugin: wvdscond
Versione: 1.0.0
Namespace: lib/plugins/wvdscond/
Autore: Wolfgang van der Stille zeljko.petrusic@outlook.de
Licenza: GPL 2
Il plugin wvdscond consente contenuti condizionali e redirect basati su gruppi utente e lingua del browser. Unisce le funzionalità di wvdsif e i redirect di wvdslang.
<ifgroup nomegruppo>Contenuto per questo gruppo</ifgroup> <iflang codice_lingua>Contenuto per questa lingua</iflang> <iflang *>Contenuto di fallback</iflang>
{{wvds:redirect target="de:start"}}
{{wvds:redirect target="{lang}:start"}}
| Tag | Descrizione |
|---|---|
<ifgroup admin> | Contenuto per il gruppo admin |
<ifgroup user> | Contenuto per il gruppo user |
<ifgroup @ALL> | Contenuto per tutti (ospiti inclusi) |
| Tag | Descrizione |
|---|---|
<iflang de> | Contenuto per browser tedesco |
<iflang en> | Contenuto per browser inglese |
<iflang sl> | Contenuto per browser sloveno |
<iflang it> | Contenuto per browser italiano |
<iflang hr> | Contenuto per browser croato |
<iflang *> | Fallback per tutte le altre lingue |
| Parametro | Tipo | Descrizione |
|---|---|---|
target | string | Pagina di destinazione (supporta {lang} come placeholder) |
<ifgroup admin> **Area amministratori:** Accedi alle [[admin:settings|impostazioni]]. </ifgroup> <ifgroup user> Benvenuto nel tuo spazio personale. </ifgroup> <ifgroup @ALL> Benvenuto! [[wiki:login|Accedi]] per ulteriori funzionalità. </ifgroup>
<iflang de> Willkommen auf unserer Webseite! </iflang> <iflang en> Welcome to our website! </iflang> <iflang it> Benvenuti nel nostro sito web! </iflang> <iflang *> Welcome! (Default) </iflang>
start.txt (pagina root):
{{wvds:redirect target="{lang}:start"}}
Comportamento:
{{wvds:redirect target="{lang}:prodotti:panoramica"}}
Se la pagina di destinazione non esiste, il redirect viene ignorato e la pagina corrente viene visualizzata.
1. Lettura header Accept-Language └── Esempio: "it-IT,it;q=0.9,en;q=0.8" 2. Estrazione codice lingua primario └── "it-IT" → "it" 3. Verifica disponibilità └── "it" configurato? → Usa it └── Altrimenti: usa defaultLanguage
1. Trova tag {{wvds:redirect target="..."}}
2. Sostituisci {lang} con lingua rilevata
3. Verifica esistenza pagina destinazione
4. Redirect o ignora
Tramite Admin → Configurazione → wvdscond:
| Impostazione | Tipo | Default | Descrizione |
|---|---|---|---|
defaultLanguage | Testo | de | Lingua di fallback |
availableLanguages | Testo | de,en,sl,it,hr | Lingue disponibili |
| Scenario | Comportamento |
|---|---|
| Gruppo sconosciuto | Tag viene ignorato |
| Lingua non disponibile | Fallback su defaultLanguage |
| Pagina destinazione non esiste | Redirect ignorato |
| Redirect multipli | Solo il primo viene eseguito |
| Versione | Data | Modifiche |
|---|---|---|
| 1.0.0 | 2026-01-06 | Prima pubblicazione - unione di wvdsif e redirect di wvdslang |
File: lib/plugins/wvdscond/syntax.php
| Metodo | Descrizione |
|---|---|
getType() | Restituisce substition |
getSort() | Restituisce 300 |
connectTo($mode) | Registra i pattern per ifgroup, iflang, redirect |
handle($match, …) | Estrae i parametri |
render($mode, …) | Esegue la logica condizionale |
File: lib/plugins/wvdscond/action.php
| Metodo | Descrizione |
|---|---|
_detectLanguage() | Rileva lingua del browser |
_executeRedirect() | Esegue il redirect |