Problema con AvReloaded, sh404SEF e i video in lightbox

AvReloaded è una estensione per Joomla che ci facilita la gestione di file multimediali: tramite un apposito modulo e plugin ci consente di riprodurre file audio e video di vari formati, permettendoci anche di creare delle playlist, e dandoci numerosi parametri per personalizzarne l’aspetto. E’ una estensione che rientra nelle nostre fondamentali, ovvero quelle che riteniamo di dover installare sempre sui nostri siti.

Recentemente abbiamo riscontrato e risolto un errore per una condizione particolare, tale per cui aprendo un video si riceveva un errore “Pagina non trovata”. Di seguito tutti i dettagli.

Situazione

Il sito che presentava il problema è realizzato con

  • Joomla 1.5.15
  • AvReloaded 1.2.6
  • sh404SEF 1.5.4.302

Un modulo di AvReloaded presenta sulla colonna destra la possibilità di visualizzare un video. Nella modalità normale, ovvero con il video che scorre nel riquadro esistente, non ci sono stati problemi.

Anomalia

Dopo qualche giorno, riceviamo una segnalazione in merito al fatto che cliccando per far partire i video, si ottiene la pagina di errore di Joomla relativa alla pagina non trovata. Verifichiamo subito il sito, e ci accorgiamo che il problema si presenta perchè nel frattempo è stata attivata la modalità “lightbox” del video: ovvero quando si clicca sulla immagine di anteprima del video, si attiva l’effetto lightbox e il player video diventa una finestra centrale circondata da uno sfondo scuro.

Dopo un po’ di debug, abbiamo finalmente scoperto che il problema era riconducibile all’utilizzo di un link relativo in una pagina “interna” del sito. Ovvero, grazie a sh404SEF la pagina nella quale si trova il video ha un indirizzo del tipo:

http://www.gibilogic.com/paginainterna/

e il plugin di AvReloaded (invocato dal modulo) passa un indirizzo del tipo

index.php?option=com_avreloaded&...

senza la barra iniziale. Il sito cerca quindi di presentare la pagina:

http://www.gibilogic.com/paginainterna/index.php?option=com_avreloaded&...

e ovviamente non la trova.

Soluzione

Si tratta di correggere il file /plugin/content/avreloaded.php, in particolare la funzione _renderToDB, che inizia intorno alla riga 562. La riga

$url = 'index.php?option=com_avreloaded&view=popup&Itemid='.$itemid.'&divid='.$divid;

diventa

$url = '/index.php?option=com_avreloaded&view=popup&Itemid='.$itemid.'&divid='.$divid;

Così il percorso è assoluto e la pagina viene nuovamente trovata.

Nota

L’uso di percorsi relativi è dovuto al fatto che Joomla potrebbe anche essere installato in una sottocartella del sito, ad esempio

http://www.gibilogic.com/sitojoomla/

Tuttavia, se avete intenzione di usare sh404SEF o un altro componente esterno per la riscrittura degli indirizzi, sconsiglio questa modalità di installazione.

Commenti (3)

  • @Luca:
    ti sbagli, “divid” non deve contenere il nome del video, ma è un modo per distinguere tra i vari elementi avreloaded presenti nella pagina. Se tu avessi diversi video, avresti infatti come link “divid=avreloaded1”, “divid=avreloaded2”, e così via.

    Quindi questo non è un malfunzionamento, ma un comportamento corretto del componente. Se ancora non riesci a vedere i video nonostante quanto spiegato nell’articolo sopra, significa che c’è qualche altro problema.

  • Grazie per la risposta. Si in effetti ho sbagliato: seguendo la documentazione il divid è un nome che assegni in maniera arbitraria…nel codice:
    {flv popup=”true” divid=”mypopup”}video{/flv}
    che rimane nascosto…poi però nella doc si dice di inserire un codice del tipo
    {avrpopup type=”window” id=”mypopup”}Klick here to show video in a popup window{/avrpopup}
    Ed è qui che ci dovrebbe essere l’assegnazione dell’id al video vero e proprio…ma questo codice nei campi di definizione del modulo del cms joomla non so dove posizionarlo…c’è un campo dedicato “Usepoup” e lo dovrebbe fare automaticamente…credo….qualche idea?

I commenti sono chiusi.


GiBiLogic srl Società a socio unico  |  via Aldo Moro 48, 25124 Brescia  |  P.IVA 02780970980
REG.IMPRESE N.02780970980 BRESCIA  |  CAP. SOC. € 10.000 I.V.
info@gibilogic.com  |  +39.030.7778980

iubenda Certified Gold
Partner