Collegamenti alle categorie improvvisamente danno errori 404

23 dic 2010, 21:53:13
Visualizzazioni: 15.5K
Voti: 3

Il mio blog WordPress sembra aver iniziato improvvisamente a restituire errori 404 quando accedo alle pagine delle categorie. Ad esempio, http://blog.rtwilson.com/category/tok-related/. Curiosamente, ciò non accade per le sottocategorie (come GIS e Remote Sensing, mostrate nella sidebar del link sopra) ma accade per le categorie genitore (es. Academic) e per le categorie senza figli (come TOK-related).

Qualcuno ha idee sul perché questo potrebbe essere accaduto? Recentemente ho modificato la struttura dei permalink per i post del blog, ma non per le categorie. Devo ricostruire in qualche modo l'elenco delle categorie? Se sì, come?

Aggiornamento Contenuto del file .htaccess:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
2
Commenti

Non ricevo alcun errore 404 su http://blog.rtwilson.com/category/tok-related/

hakre hakre
24 dic 2010 04:36:56

Questi sono permalink normali e le tue categorie sembrano funzionare ora.

markratledge markratledge
24 dic 2010 05:07:54
Tutte le risposte alla domanda 6
6

La prima cosa da provare è risalvare i permalink dall'amministrazione di WordPress.

Assicurati che le tue modifiche vengano salvate nel file .htaccess. Se WordPress ti avvisa che .htaccess non è scrivibile, utilizza manualmente FTP per cambiare i permessi del file .htaccess a 644 e riprova.

Il "." davanti al nome del file significa che normalmente è invisibile, quindi controlla nel tuo client FTP che sia impostato per visualizzare i file nascosti se non vedi il file .htaccess nella tua directory web. Il file .htaccess si trova allo stesso livello della directory del tuo file index.php, indicato dall'impostazione Indirizzo del sito (URL) nella pagina Opzioni generali.

Questo è un blocco standard di riscrittura di WordPress:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Se ricevi un errore 500 del server, significa che la codifica dei caratteri del file è errata e potrebbe essere stata modificata quando hai editato il file .htaccess. Puoi provare a rinominare il file .htaccess corrente e utilizzare il tuo client FTP per creare un nuovo file chiamandolo .htaccess.

Se continui a ricevere errori 404 o comportamenti strani dopo aver salvato i permalink e verificato che il file .htaccess contenga il blocco di riscrittura sopra indicato, prova ad aggiungere

global $wp_rewrite; $wp_rewrite->flush_rules();

nel file functions.php del tuo tema, torna indietro e aggiorna la homepage, poi rimuovi il codice. Questo cancellerà le regole di riscrittura dalla cache e dai transient.

Ci sono ulteriori suggerimenti per la risoluzione dei problemi e esempi su Utilizzo dei Permalink « WordPress Codex

23 dic 2010 22:04:33
Commenti

WP non mi ha avvisato di nulla. I permalink per gli articoli del blog funzionano bene, sono solo le pagine delle categorie e non ho cambiato la struttura dei permalink per quelle!

robintw robintw
23 dic 2010 22:07:32

L'ho letto; ma il primo passo è comunque quello di risalvare i tuoi permalink.

markratledge markratledge
23 dic 2010 22:10:34

Grazie. Ho risalvato le mie preferenze per i permalink e ho controllato il file .htaccess. Il file .htaccess ha un orario di modifica corrispondente al momento in cui ho risalvato le preferenze dei permalink. Ho inserito il contenuto del file .htaccess in fondo alla domanda.

robintw robintw
23 dic 2010 22:38:57

Prova ad aggiungere global $wp_rewrite; $wp_rewrite->flush_rules(); nel file functions.php del tuo tema, torna indietro e aggiorna la homepage, poi rimuovi il codice.

onetrickpony onetrickpony
24 dic 2010 04:14:29

@songdogtech Risposta contenente solo un link. Forse è il caso di aggiornarla visto che sta attirando lettori?

kaiser kaiser
15 mar 2015 14:42:15

@kaiser, Grazie, buona idea. Ho aggiornato la mia; e ho notato che il link nella risposta accettata non è più valido.

markratledge markratledge
15 mar 2015 18:33:38
Mostra i restanti 1 commenti
0

Qualcuno ha idea del perché potrebbe essere successo?

Non ricevo un errore 404 su quella pagina, ma per rispondere alla domanda: non ho idea del perché accada o non accada.

Recentemente ho modificato la struttura dei permalink per gli articoli del mio blog, ma non per le categorie. Devo ricostruire in qualche modo l'elenco delle categorie?

Ogni volta che modifichi la struttura dei permalink dall'amministrazione, i permalink vengono ricostruiti automaticamente, quindi non devi preoccupartene. E non esiste una cosa come "ricostruire l'elenco delle categorie", quindi non devi preoccuparti nemmeno di questo.

24 dic 2010 04:39:30
0

Avevo lo stesso problema - avevo installato il plugin 'advanced permalinks', che presenta un bug... ho scoperto che commentando questa riga

$this->add_filter ('category_rewrite_rules');

nel plugin. La risposta originale non è mia (anche se ha funzionato per me) ma proveniva da qui

3 feb 2014 00:55:30
0

Ho installato il plugin "Advance Permalink" di John Godley, il 31 marzo 2015 per reindirizzare la mia precedente struttura di permalink di http://punch2crunch.com

Dopo 36 ore tutte le mie categorie hanno iniziato a generare automaticamente errori 404 e una categoria funzionava ma rimaneva bloccata su un singolo post. Se ti sta succedendo la stessa cosa, devi incollare solo una cosa.

Segui i passaggi:

  1. Dalla dashboard, vai su Plugin, scegli Editor.
  2. Seleziona "Advance-permalink/Advance-permalink.php"
  3. Scorri verso il basso fino a trovare il codice qui sotto

    $this->add_filter ('post_rewrite_rules');
    $this->add_filter ('author_rewrite_rules');
    $this->add_filter ('category_rewrite_rules');
    $this->add_filter ('rewrite_rules_array');
    
  4. Semplicemente aggiungi due barre // prima di $this->add_filter ('category_rewrite_rules'); come mostrato sotto

    $this->add_filter ('post_rewrite_rules');
    $this->add_filter ('author_rewrite_rules');
    //$this->add_filter ('category_rewrite_rules');
    $this->add_filter ('rewrite_rules_array');
    

Aggiorna il tuo sito e tutto tornerà a funzionare perfettamente. Se non succede, devi cercare altrove la soluzione.

2 apr 2015 11:33:25
0

Ho avuto lo stesso tipo di problema.

  • Assicurati che il modulo Apache rewrite sia attivato e che il file .htaccess sia corretto
  • Se il passo precedente non funziona, vai nelle impostazioni dei permalink e inserisci "category" come base per le categorie
  • Alcuni plugin SEO potrebbero causare problemi con le riscritture
  • Se hai un plugin di cache, svuotala
12 nov 2015 20:30:24
0

Questo mi è successo dopo che il mio host ha migrato su un server diverso. La soluzione per me, come markratledge ha indicato sopra, è stata "risalvare i tuoi permalink dall'amministrazione di WordPress".

Per espandere questo in dettaglio:

  1. Accedi al tuo sito WordPress.

  2. Clicca su Dashboard->Impostazioni->Permalink

  3. Supponendo che la tua impostazione sia su "Nome articolo", seleziona "Numerico" poi il pulsante "Salva".

  4. Ora clicca nuovamente sul pulsante radio "Nome articolo", e seleziona "Salva".

Questo dovrebbe risalvare le tue impostazioni e i tag e le categorie dovrebbero funzionare.

28 set 2023 22:54:27