Back to top

Autore Topic: Modificare moduli dal front end  (Letto 1804 volte)

Offline giovapd

  • Appassionato
  • ***
  • Post: 307
  • Sesso: Maschio
  • Mi no digo gnente, ma gnanca no taso.
    • Mostra profilo
Modificare moduli dal front end
« il: 01 Feb 2010, 17:22:09 »
è possibile?
perche loggandosi come admin puoi modificare solo pagine... esiste qualche metodo per renderli modificabili?
grazie!

mau_develop

  • Visitatore
Re:Modificare moduli dal front end
« Risposta #1 il: 01 Feb 2010, 17:49:00 »
e il backend che l'hanno fatto a fare?

M.

Offline giovapd

  • Appassionato
  • ***
  • Post: 307
  • Sesso: Maschio
  • Mi no digo gnente, ma gnanca no taso.
    • Mostra profilo
Re:Modificare moduli dal front end
« Risposta #2 il: 01 Feb 2010, 17:52:21 »
l'hanno fatto per me che amministro il sito e che non voglio che gli altri ci mettano le mani.

Offline 56francesco

  • Fuori controllo
  • *
  • Post: 29585
  • Sesso: Maschio
    • Mostra profilo
Re:Modificare moduli dal front end
« Risposta #3 il: 01 Feb 2010, 19:09:48 »
no, putroppo no..
per i banner forse.. ci sono accrocchi possibili ma sempre di la occorre passare..

il backend di joomla è pensato anche per altri non a caso ci sono diverse categorie di utenti..
altrimenti facevano solo il superadmin..
(uso XP perchè win98 non si installa) 
PS: non sono un dipendente dello sbonzor quindi è necessario un "per favore" alla richiesta e un "grazie" alla risposta, sempre! PPS: non scrivo mai per primo in MP, in caso contrario chiedimi una conferma, Grazie.

Offline Noein

  • Nuovo arrivato
  • *
  • Post: 30
    • Mostra profilo
Re:Modificare moduli dal front end
« Risposta #4 il: 17 Mag 2012, 16:29:22 »
Mi permetto di rispondere a questo topic, nonostante sia piuttosto vecchio, perché credo di poter suggerire una soluzione (anche se si tratta di uno di quelli che 56francesco ha definito simpaticamente accrocchi) nel caso qualche nostalgico della 1.5 avesse un problema simile a quello posto nel topic.

Innanzitutto è necessario scaricare e installare il modulo Place here.

Una volta installato questo componente potrai piazzare moduli contenenti articoli in qualsiasi parte del sito. In pratica, è come avere un contenitore "vetrina" (il modulo) con all'interno un contenuto visibile (l'articolo).
Il contenitore può essere modificato unicamente da CSS (e quindi  da backend) ma il contenuto può essere modificato anche da frontend. E' quindi possibile modificare almeno in parte il modulo utilizzando la funzione "Modifica" dell'articolo al suo interno.

A questo punto il problema che si presenta è che, in condizioni normali, il modulo Place here può essere modificato da frontend solo dal superadmin. Per ovviare a questa situazione è necessario fare una modifica (nemmeno troppo invasiva) al file authorization.php (si trova in: libraries/joomla/user) di Joomla. Ad ogni buon conto, prima di procedere alle modifiche necessarie sarebbe buona cosa fare un backup del file in questione in modo da poter ripristinare l'originale se qualcosa andasse storto.

Alla riga 135 del file si legge:

Codice: [Seleziona]
// uncomment following to allow managers to edit modules
quindi basta togliere i due slash alla riga successiva

Codice: [Seleziona]
//array( 'administration', 'edit', 'users', 'manager', 'modules', 'all' );
A questo punto un secondo gruppo di utenti (i managers, appunto) che può modificare i moduli Place here da frontend.

Se si avesse la necessità (come è capitato a me) di limitare però gli interventi dei vari utenti sull'aspetto della pagina, le righe da 200 a 202 del file authorization.php gestiscono i permessi di modifica articoli da parte del gruppo manager ovvero:

Codice: [Seleziona]
   $this->addACL( 'com_content', 'add', 'users', 'manager', 'content', 'all' );
      $this->addACL( 'com_content', 'edit', 'users', 'manager', 'content', 'all' );
      $this->addACL( 'com_content', 'publish', 'users', 'manager', 'content', 'all' );

Cambiando all con own, ad esempio cambiando:

Codice: [Seleziona]
$this->addACL( 'com_content', 'edit', 'users', 'manager', 'content', 'all' );
in

Codice: [Seleziona]
$this->addACL( 'com_content', 'edit', 'users', 'manager', 'content', 'own' );
è possibile limitare gli interventi dei manager solo agli articoli scritti da ognuno di loro (in breve, il Manager1 non potrà modificare gli articoli del Manager2 e viceversa).

Il problema, a questo punto, potrebbe porsi se si volesse evitare che i manager, avendo il permesso di accedere al backend del sito. Credo esistano varie soluzioni ma quel che ho fatto io è stato installare il plugin Ksecure che protegge l'accesso al backend con una password. in questo modo, chiunque cercasse di accedere al backend, pure avendo il permesso, non potrebbe senza la password.

Spero che questo intervento possa essere utile a qualcuno
« Ultima modifica: 17 Mag 2012, 16:30:55 da Noein »

 



Web Design Bolzano Kreatif