Martedì, Luglio 29, 2014
Tutorial & Examples HTML, Javascript, CSS e PHP Mod Site Disclaimer per Joomla 1.5

Mod Site Disclaimer per Joomla 1.5

Ho avuto l'esigenza di avere una pagina definita "disclaimer" che avvertisse l'utenza del sito sulla tipologia di contenuto trattato nel sito stesso.

Inizialmente ho pensato "Beh, semplice, potrei mettere una pagina prima del sito, dove all'apertura del'indirizzo principale si apra la pagina es: home.html invece che la index.php di joomla". Subito dopo però ho pensato che le pagine indicizzate da un motore di ricerca sarebbero state accessibili comunque, con o senza disclaimer, quindi necessitavo di un modulo o plugin che permettesse di verificare se un utente passasse prima di tutto per la pagina disclaimer. 

Così con qualche linea di codice ed un po di prove ho specializzato un modulo capace di gestire il redirect ad una pagina statica "disclaimer.html" oppure in alternativa un articolo specifico per accogliere i visitatori privi di responsabilizzazione sul contenuto del sito.

Prima di tutto scaricatevi il modulo da questa pagina: mod_disclaimer_1.0.zip e successivamente installatelo con lo strumento di installazione di Joomla.

Di seguito sono riportate le 2 configurazioni possibili, una con reindirizzamento ad un articolo di Joomla, l'altra con file html statico nella root del sito o in altra posizione. 

  • Modalità dislclaimer statico su file esterno a Joomla:

    1{ Per prima cosa bisogna creare la paginetta in html con il testo di entrata al sito internet, fare link "entra nel sito" che punti alla variabile configurata nel modulo per default utilizzeremo "agree", quindi il link sarà il file indice del sito in Joomla + la variabile: "index.php?agree=true".

    2{ Una volta che la pagina si trova nel nostro server configuriamo il parametro Url del modulo "Disclaimer" a puntare la nostra pagina e posizioniamo il modulo su un punto non visibile del nostro Template, es: "footer", salviamo il modulo ed ecco che il disclaimer è attivato.

     

  •  

  • Modalità dislclaimer su articolo Joomla:

    1{ Iniziamo col creare un articolo in Joomla chiamato Disclaimer, anche qui fare un link "entra nel sito" che punti alla variabile nel modulo, quindi il link sarà il file indice + la variabile: "index.php?agree=true", lasciare l'articolo su nessuna sezione e nessuna categoria e salvarlo.

    2{ Una volta salvato l'articolo, configuriamo il parametro ID del modulo "Disclaimer" a puntare l'ID del nostro articolo e posizioniamo il modulo su un punto non visibile del nostro Template, es: "footer", salviamo il modulo "Disclaimer" ed ecco che il disclaimer è attivato.

     

  •  

 

Riporto in fine il codice sorgente completo scritto per questo modulo:

mod_disclaimer.xml

<?xml version="1.0" encoding="utf-8"?>

	<install type="module" version="1.5.0">

	    <name>Disclaimer</name>

	    <author>Achilleterzo</author>

	    <version>1.5.0</version>

	    <description>Disclaimer module.</description>

	    <files>

	        <filename>mod_disclaimer.xml</filename>

	        <filename module="mod_disclaimer">mod_disclaimer.php</filename>

	        <filename>index.html</filename>

	        <filename>helper.php</filename>

	        <filename>tmpl/default.php</filename>

	        <filename>tmpl/index.html</filename>

	    </files>

	    <params>

	<param name="moduleclass_sfx" type="text" default="" label="CSS Module Class Suffix" description="CSS Style class" />

	     <param name="uri_var" type="text" rows="30" cols="60" default="agree" label="Variable Name" description="The name of uri variable, ex: index.php?agree (default value 'agree')" />

	     <param name="redirect_url" type="text" rows="30" cols="60" default="" label="Disclaimer URL" description="A static file to use instead of an article ID (let it blank if not used)" />

	     <param name="article_id" type="text" rows="30" cols="60" default="" label="Disclaimer Article ID" description="The ID of an article to use instead of a static file url (let it blank if not used)" />

	    </params>

	</install>

mod_disclaimer.php

<?php

	/**

	 * Disclaimer Module Entry Point

	 * 

	 * @package    Joomla.Disclaimer

	 * @subpackage Modules

	 * @license        GNU/GPL

	 */

	 

	defined( '_JEXEC' ) or die( 'Restricted access' );

	 

	require_once( dirname(__FILE__).DS.'helper.php' );

	 

	Disclaimer::check( $params );

	require( JModuleHelper::getLayoutPath( 'mod_disclaimer' ) );

	 

	?>

helper.php

<?php

	class Disclaimer

	{

	    function check( $params )

	    {

	     $data = JRequest::get("request");

	     $request_var = $params->get("uri_var");

	     if (isset($data[$request_var])) 

	     {

	     $session = JSession::getInstance('none', array());

	     $session->set( "disclaimer", $data[$request_var] );

	     }

	    }

	}

	?>

tmpl/default.php

<?php 
	
		 
	
		defined( '_JEXEC' ) or die( 'Restricted access' );
	
		 
	
		global $mainframe;
	
		$session  = JSession::getInstance('none',array());
	
		$uri = &JFactory::getURI();
	
		$currentPage = str_replace(JURI::base(), "", $uri->toString());
	
		 
	
		if (!$session->get( "disclaimer" ) || $session->get( "disclaimer" ) != "true") 
	
		{ 
	
		if (((int)$params->get("article_id")) != 0)
	
		{
	
		$redirect = "index.php?option=com_content&view=article&id=" . $params->get("article_id");
	
		if ( $currentPage != $redirect) $mainframe->redirect( JURI::base() . $redirect );
	
		}
	
		else if ( strlen($params->get("redirect_url")) > 0 )
	
		{
	
		$mainframe->redirect( $params->get("redirect_url") );
	
		}
	
		}
	
		 
	

		?>

Commenti  

 
0 #12 OK 2011-03-05 12:19
Ciao e Grazie per l'aiuto!
Ho risolto, finalmente!!

Ho messo:

[a href="/?agree=true"]Accetto ed entro[/a]

ovviamente al posto delle [ ] o messo < >

Ciao e Grazie
Citazione
 
 
0 #11 RE: Mod Site Disclaimer per Joomla 1.5Achilleterzo 2011-03-02 10:06
Citazione Matteo:
Scusa il ritardo..

Ecco il sito:

www.secretforex.it

Ciao e Grazie


Ciao da quello che vedo io, il link punta a questo:

/component/content/?agree=true

invece facendo un test, ho notato che così il problema non si pone:

/index.php?agree=true

Controlla la pagina html che contiene il link per accettare il disclaimer, in caso puoi anche farlo accettare in questo modo:

http://www.sito.com/?agree=true

o più semplicemente [a href="/agree=true"]Accetto ed entro[/a]
Citazione
 
 
0 #10 Mod Site disclaimer 2011-03-02 09:42
Scusa il ritardo..

Ecco il sito:

www.secretforex.it

Ciao e Grazie
Citazione
 
 
0 #9 RE: Mod Site Disclaimer per Joomla 1.5Achilleterzo 2011-01-31 10:13
Citazione Matteo:
Ciao achille ancora non ho risolto,
non capisco perchè non mi rimanda alla mia home page.
Ho le opzioni SEO e SEF attivate..


Ciao, hai modo di farmi vedere il difetto?
Anche io lo uso con sistemi SEF attivi, ma il problema non mi esce...
Citazione
 
 
0 #8 Problema sito 2011-01-30 16:49
Ciao achille ancora non ho risolto,
non capisco perchè non mi rimanda alla mia home page.
Ho le opzioni SEO e SEF attivate..
Citazione
 
 
0 #7 Mod Site.. 2010-12-27 09:50
Citazione Achilleterzo:
hai quale sistema SEF attivato? come Jomsef o sh404?


Sì, quello di joomla nativo..(e lo vorrei lasciare)
Citazione
 
 
0 #6 RE: Mod Site Disclaimer per Joomla 1.5Achilleterzo 2010-12-23 09:48
Citazione matteo:
Citazione Achilleterzo:
Ciao Matteo, grazie per aver scaricato il mio modulo.
Allora, nell'articolo che creerai come disclaimer, semplicemente crei un link alla home del sito che abbia un parametro get "agree=true"

Es: /index.php?agree=true

Questo permetterà di aprire la home del sito dopo aver accertato di poter passare per il disclaimer.


Ciao, ho fatto come hai detto, ma anzichè mandarmi nella home, mi va qui:

/component/content/?agree=true

Perchè?


hai quale sistema SEF attivato? come Jomsef o sh404?
Citazione
 
 
0 #5 Reindirizzamento sbagliato 2010-12-23 09:45
Citazione Achilleterzo:
Ciao Matteo, grazie per aver scaricato il mio modulo.
Allora, nell'articolo che creerai come disclaimer, semplicemente crei un link alla home del sito che abbia un parametro get "agree=true"

Es: /index.php?agree=true

Questo permetterà di aprire la home del sito dopo aver accertato di poter passare per il disclaimer.


Ciao, ho fatto come hai detto, ma anzichè mandarmi nella home, mi va qui:

/component/content/?agree=true

Perchè?
Citazione
 
 
0 #4 RE: Mod Site Disclaimer per Joomla 1.5Achilleterzo 2010-12-05 15:27
Citazione Stefano:
Ciao, ti faccio anch'io i complimenti!!

Ho provato a utilizzare il tuo modulo su un sito con installato anche joomfish ma probabilmente non è compatibile.
Hai in previsione di supportarlo?


Ciao e grazie per la segnalazione!
Quale problema hai riscontrato con l'uso di joomfish e disclaimer?
Citazione
 
 
+1 #3 compatibilità con joomfish 2010-12-05 13:43
Ciao, ti faccio anch'io i complimenti!!

Ho provato a utilizzare il tuo modulo su un sito con installato anche joomfish ma probabilmente non è compatibile.
Hai in previsione di supportarlo?
Citazione
 

Aggiungi commento


Codice di sicurezza
Aggiorna

Scroll To Top