Come disabilitare l'accesso alle pagine delle categorie

9 set 2014, 12:18:50
Visualizzazioni: 16.4K
Voti: 2

Voglio che le mie categorie rimangano attive ma allo stesso tempo desidero rendere inaccessibili le pagine delle categorie. È possibile? Se sì, come?

Perché voglio farlo? (Questo potrebbe aiutare)

Sto lavorando a un sito UGC (contenuto generato dagli utenti). Mi è stato chiesto di modificare gli URL da /category/nome-categoria a /nome-categoria. Inoltre devo aggiungere un'altra pagina /nome-categoria/add dove gli utenti possono pubblicare contenuti solo per una categoria specifica. Non è possibile aggiungere la pagina /nome-categoria/add finché non creo una pagina (non la pagina della categoria) /nome-categoria. Se creo una pagina /nome-categoria, entrerà in conflitto con la pagina della categoria /nome-categoria. Ecco perché ho pensato di disabilitare la pagina della categoria /nome-categoria e usare una pagina normale in /nome-categoria per elencare i post della categoria.

4
Commenti

Vuoi che le categorie siano attive per l'organizzazione nel backend del sito, ma non attive nel frontend? Potrebbe aiutare aggiungere qualche dettaglio in più al tuo problema.

Chris Morris Chris Morris
9 set 2014 12:32:02

@ChrisMorris, l'aggiornamento ha aiutato? E... Va bene se le pagine delle categorie non sono accessibili nel backend...

Tabrez Ahmed Tabrez Ahmed
9 set 2014 12:49:30

Leggere i tuoi altri post ha dato un po' di chiarimenti. Anche se non sono sicuro su quale sia l'obiettivo finale che stai cercando. Che cosa stai cercando di costruire?

Chris Morris Chris Morris
9 set 2014 12:53:40

@ChrisMorris, spero che l'aggiornamento alla risposta abbia chiarito il tuo dubbio.

Tabrez Ahmed Tabrez Ahmed
9 set 2014 13:20:39
Tutte le risposte alla domanda 2
4

Puoi aggiungere qualcosa come questo nel tuo file category.php.

if ( ! is_admin() ) {
     wp_redirect( home_url() );
     exit;
}

Questo reindirizzerà i visitatori alla homepage del sito, ma le pagine delle categorie rimarranno attive e accessibili solo agli amministratori.

9 set 2014 12:28:15
Commenti

la modifica dei file di wp non è ciò che mi è permesso fare . . . .

Tabrez Ahmed Tabrez Ahmed
9 set 2014 12:52:12

Spero che l'aggiornamento alla domanda aiuti . . .

Tabrez Ahmed Tabrez Ahmed
9 set 2014 12:52:28

category.php è un file del tema, non un file del core. (supponendo che sia questo ciò che intendi con "file di wp")

totels totels
9 set 2014 12:56:12

Ops, scusa. Ma pensavo di implementare una soluzione cross-theme.

Tabrez Ahmed Tabrez Ahmed
9 set 2014 13:24:32
0

Dovrai fare almeno due cose (possibilmente di più, non ci ho pensato fino in fondo), nella sua forma più semplice:

  1. Impedire che gli elenchi delle categorie generino collegamenti:

    Dovresti emulare get_the_category_list() e creare il tuo elenco di categorie senza ancore, oppure potresti semplicemente filtrare i tag <a>:

    add_filter( 'the_category', function ( $thelist, $sep, $parents ) {
      return strip_tags( $thelist, '<ul><li>' );
    } );
    
  2. Reindirizzare gli URL delle categorie da qualche parte.

    category.php

    <?php wp_redirect( home_url() );
    
9 set 2014 12:54:29