Autore Topic: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati  (Letto 19855 volte)

Offline marcellov

  • Esploratore
  • **
  • Post: 79
    • Mostra profilo
Ciao a tutti, su forum.joomla.org ho trovato un interessantissima discussione in cui viene spiegato come nascondere un modulo (ad esempio un menu) solo agli utenti registrati (se vi capitato di creare un menu del tipo "iscriviti" avrete notato quanto sia antipatico continuarlo a vederlo anche dopo essersi loggati).
Io che non sono un programmatore l'ho trovato semplicissimo e molto utile, posto qui il link:
http://forum.joomla.org/index.php/topic,114630.msg568882.html

Per chi non conosce l'inglese o non ha tempo, segue la procedura in italiano.

Dunque, l'operazione consta di due piccoli passaggi:
 
1) Bisogna aprire la cartella /modules nella root ed editare l'xml relativo al modulo che ci interessa (nel mio caso mod_mainmenu.xml), ed inserire il seguente breve codice in qualsiasi punto insieme agli altri param (naturalmente i valori degli attributi label e description possono essere cambiati/tradotti a proprio piacimento):
 
Codice: [Seleziona]
<param name="show_registered" type="radio" default="1" label="Show Menu When Logged In" description="Show the menu also when a registered user is logged in">
   <option value="0">No</option>
   <option value="1">Yes</option>
  </param>

2) Infine, basta aprire il file /includes/frontend.php e andare alla linea 155, dove c' il seguente codice:
 
Codice: [Seleziona]
foreach ($modules as $module) {
  $params = new mosParameters( $module->params );

Subito dopo di esso va aggiunto:
 
Codice: [Seleziona]
// HACK: added code to check if module should be shown when a user is logged in
  if (!$params->get('show_registered', 1) && $my->id) {
   // simply continue the loop without outputting this module
   continue;
  }
  // --- end HACK ---

Il gioco fatto. A questo punto andando nel backend, gestione moduli, e selezionando un qualsasi mod_mainmenu, noterete che alla fine della pagina apparsa un'ulteriore opzione che permette di scegliere se visualizzare o meno il modulo per gli utenti loggati. Semplicemente fantastico.
« Ultima modifica: 12 Apr 2007, 16:16:18 da marcellov »

Offline LucaZone

  • Abituale
  • ****
  • Post: 1311
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #1 il: 13 Apr 2007, 15:49:03 »
Grazie del tuo utile contributo, penso cha a molti utenti sar utile

Ciao
gioielleria online

Offline napo

  • Instancabile
  • ******
  • Post: 6532
  • Sesso: Maschio
  • NO MP TECNICI, verranno ignorati
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #2 il: 13 Apr 2007, 15:53:11 »
Ottima cosa!
Ma strutturalmente non mi piace molto mettere mano al core di Joomla, perch in caso di aggiornamento devi ripristinare tutto ogni volta.
Ma anche vero la 1.0.12 dovrebbe essere l'ultima release della 1.0.


AllOne.it Consulting: http://www.allone.it Gens Joomla, il : http://www.gensjoomla.org  [url=http://www.allone.it/jooml

Offline dmiao

  • Esploratore
  • **
  • Post: 63
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #3 il: 29 Mag 2007, 12:39:21 »
Ho provato a seguire qsta guida... solo ke io vorrei nascondere un mod creato da me... cio un mod di tipo utente.... dove trovo i file per modificarli?? grazie

Offline GMarche

  • Appassionato
  • ***
  • Post: 493
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #4 il: 19 Giu 2007, 12:21:35 »
Sai se possibile fare in modo che un modulo venga visto solo dall'admin e non dagli altri gruppi?

Grazie 1000

Offline matrix845

  • Appassionato
  • ***
  • Post: 483
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #5 il: 19 Giu 2007, 14:49:20 »
metti accesso special ai moduli! ;D

Offline GMarche

  • Appassionato
  • ***
  • Post: 493
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #6 il: 19 Giu 2007, 15:14:51 »
Non ho capito.. potresti spiegarmi meglio? ;)

Offline matrix845

  • Appassionato
  • ***
  • Post: 483
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #7 il: 23 Giu 2007, 02:32:24 »
Cia ragazzi  a me questa guida non funziona (non appare nessuna nuova voce nelle propriet del modulo), provato gia su mod installate che da installare (modificando l'xml prima di installare)
Come posso fare? ;)

Offline matrix845

  • Appassionato
  • ***
  • Post: 483
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #8 il: 23 Giu 2007, 02:33:56 »
Non ho capito.. potresti spiegarmi meglio? ;)
metti accesso special al modulo ;)
« Ultima modifica: 23 Giu 2007, 02:43:05 da matrix845 »

Offline matrix845

  • Appassionato
  • ***
  • Post: 483
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #9 il: 23 Giu 2007, 02:46:49 »
edit
« Ultima modifica: 23 Giu 2007, 02:57:29 da matrix845 »

Offline GMarche

  • Appassionato
  • ***
  • Post: 493
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #10 il: 23 Giu 2007, 03:15:44 »
E se metto special in automatico lo vede solo l'admin?

Grazie 1000

Offline matrix845

  • Appassionato
  • ***
  • Post: 483
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #11 il: 23 Giu 2007, 15:21:46 »
si Gmarche , cmq siamo offtopic , basta cercare o aprire un altro topic ;)

Offline GMarche

  • Appassionato
  • ***
  • Post: 493
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #12 il: 23 Giu 2007, 15:29:41 »
Ok grazie.

Ciao ciao

Offline thor486

  • Esploratore
  • **
  • Post: 60
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #13 il: 22 Set 2007, 15:09:21 »
sapere come si deve fare per joomla 1.5? Il file frontend.php non c'.... ??? ??? ???

Offline marcellov

  • Esploratore
  • **
  • Post: 79
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #14 il: 20 Nov 2007, 18:25:41 »
ma state gi passando alla nuova versione? Ma stabile? Io l'ho installata in locale ma ancora non la uso per i clienti.

Comunque sarebbe utile riuscire ad adattare questo piccolo hack. Se qualcuno ci riesce ce lo fa sapere? Io appena ho un minuto ci provo!

Offline Maxdesck

  • Esploratore
  • **
  • Post: 87
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #15 il: 04 Gen 2008, 11:36:11 »
Help!!!!

non riesco a modificare il file mod_xxx nella root (Nel mio caso mod_acajoom) percorso= server/website/modules/mod_acajoom.xml
Premetto che ho tutti i permessi di scrittura, utilizzo Filezilla ,e l'errore riportato "errore trasferimento critico"

Vi Ringrazio in anticipo

Saluti
Mario

Offline rinuccio

  • Moderator
  • Instancabile
  • *****
  • Post: 3140
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #16 il: 13 Gen 2008, 15:34:16 »
Ho provato a seguire qsta guida... solo ke io vorrei nascondere un mod creato da me... cio un mod di tipo utente.... dove trovo i file per modificarli?? grazie

ecco il mio prob  :-[

Offline matrix845

  • Appassionato
  • ***
  • Post: 483
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #17 il: 25 Feb 2008, 01:27:39 »
Allora ... il problema si presenta con moduli differenti dal mod mainmenu , infatti se leggete qui http://forum.joomla.org/index.php/topic,114630.msg568882.html propne la modifica , che dovrebbe funzuionare con altri mdouli e non creare problemi di spaginazione (ad esempio nel mio template se manca una posizione automaticamente il mainbody si allarga , e con la modifica in evidenza qui si spaginava tutto)

Offline No Killer

  • Nuovo arrivato
  • *
  • Post: 29
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #18 il: 10 Ago 2008, 12:02:25 »
grazie marcello sei un grande ho risolto un problema grosso quanto una montagna con questo piccolo hack.. ;) ;)

Offline dom66

  • Nuovo arrivato
  • *
  • Post: 7
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #19 il: 29 Set 2008, 18:49:41 »
Salve,
da una ricerca che ho fatto c' un metodo meno invasivo per risolvere il problema, ma purtroppo sto iniziando adesso ad affacciarmi a questo mondo e non ci capisco nulla di codice; sono un neofita... si dice cosi, vero?
Dunque, la soluzione sta nel caricare un estensione chiamata
metamod
http://www.brandonitconsulting.co.uk/mod_metamod/
Se qualcuno lo ha usato e mi da istruzioni in merito, ne sarei molto grato.
Grazie

Offline gippy88

  • Esploratore
  • **
  • Post: 127
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #20 il: 06 Mar 2009, 12:00:09 »
da quel che ho potuto vedere metamod ti permettere di creare dei moduli e di renderli visibili a tutti, solo utenti registrati, solo utenti non registrati, non si interfaccia con i moduli gia presenti quindi nn fa al caso nostro.

Offline marcothemix

  • Appassionato
  • ***
  • Post: 406
  • Sesso: Maschio
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #21 il: 12 Mar 2009, 14:09:12 »
ottimo grazie
Semplicemente fantastico!!  ;D ;D
« Ultima modifica: 12 Mar 2009, 14:11:46 da WLFMARCUS »

Offline Blackworm.it

  • Nuovo arrivato
  • *
  • Post: 19
  • Sesso: Maschio
  • www.blackworm.it
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #22 il: 31 Mar 2009, 06:47:15 »
Grazie anche da parte mia
hotel rimini

Offline sgs

  • Appassionato
  • ***
  • Post: 644
    • Mostra profilo
Re: (Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #23 il: 05 Apr 2009, 16:36:01 »
per J 1.5 ci sono soluzioni?

Offline selene84

  • Nuovo arrivato
  • *
  • Post: 1
    • Mostra profilo
Re:(Tutorial) Come nascondere un modulo SOLO agli utenti registrati
« Risposta #24 il: 30 Mag 2011, 13:21:48 »
Salve a tutti, per joomla 1.5 la soluzione quihttp://forum.joomla.org/viewtopic.php?p=1703898#p1703898
In pratica bisogna scaricare e installare Jumi che trovate qui http://extensions.joomla.org/extensions/1023/details
Andate in "gestione moduli", scegliete il modulo che volete modificare e nel menu a tendina del campo "Posizione" digitate un'etichetta a vostro piacere, per esempio user100, salvate. Create poi un nuovo modulo Jumi, scegliete la posizione e di non mostrare il titolo e nel campo "Code written" digitate il seguente codice:

Codice: [Seleziona]
<?php
$position 
'user100';
$user =& JFactory::getUser();
if(
$user->guest)
{
  
$document   = &JFactory::getDocument();
  
$renderer   $document->loadRenderer('modules');
  
$contents '';
  echo 
$renderer->render($position, array('style'=>'xhtml'));
}
?>

 

Host

Torna su