Úvodní stránka › Fórum podpory WordPressu › Problémy s WordPressem › Přesměrování
Štítky: .htaccess, Přesměrování, redirect, SEO, Struktura trvalých odkazů, Trvalé odkazy, WP Redirect Permallink
Zvolené téma obsahuje celkem 8 odpovědí. Do diskuze (3 účastníci) se naposledy zapojil uživatel admin a poslední změna je stará 6 let, 8 měsíců.
-
AutorPříspěvky
-
12. září 2016 (17:34) #29008
Zdravím,
klient změnil nastavení url adres z: číselnéhttp://mujweb.cz/archiv/123
na Název příspěvkuhttp://mujweb.cz/nazev-prispevku/
a chci se zeptat zda je možné udělat nějakou úpravu, tak aby staré adresy byly automaticky přesměrovány na nový typ url adresy.Děkuji
12. září 2016 (18:23) #29009Nejjednodušší řešení je vložit do
.htaccess
tento parametrRedirect 301 /archiv/123 /nazev-prispevku/
tzn, že to bude vypadat takto:
# 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> Redirect 301 /archiv/123 /nazev-prispevku/ Redirect 301 /archiv/124 /nazev-prispevku-2/ # END WordPress
A nebo použít plugin, ale na toto bych opravdu použil tu úpravu.
12. září 2016 (18:26) #29010Nešlo by to přesměrování řešit nějak univerzalněji? Přeci jen neznám všechny staré adresy (uvedl jsem to jen jako ukázku)
12. září 2016 (18:36) #29011:) nevím jestli existuje něco “univerzálního”, zkuste tento plugin, WP Redirect Permallink, tváří se, že by to snad měl umět. Pokud to nepůjde tak pak nezbude než jít na to ručně a to tak, že si zjistíte ID příspěvku, protože když najedete myší v administraci na příspěvek, tak dole se vám objeví stavový řádek a v něm je uvedeno
/post.php?post=123
a pak uděláte ty redirecty.12. září 2016 (22:32) #29012Podle mě tam nemusíte vůbec nic nastavovat, protože ve WordPressu funguje při změně trvalých odkazů přesměrování automaticky?
12. září 2016 (22:36) #29013Dekuji za informaci. Takze by nemel byt zadny problem pri navsteve z vyhledavace, ktery bude mit zaindexovanou starou url adresu?
12. září 2016 (23:24) #29015@paja: Podle mě ne, zkuste navštívit starou adresu odkazu (třeba z vyhledávače) a měl byste být automaticky přesměrován na novou. Slyšel jsem i názory, že může samotné přesměrování webu nepatrně ublížit z hlediska SEO, ale další uživatelé to zase popírají, takže těžko říci. Z technického hlediska (aneb dohledatelnost) by to mělo být bez problémů…
13. září 2016 (11:02) #29019@azifaral: Díky za odkaz na plugin WP Redirect Permallink, vypadá to, že řeší trochu jiný problém (patrně souvisí se sedm let starou chybou), o kterém jsem zatím neměl ani tušení :-)
Pokud měl někdo nastavenou vlastní strukturu odkazů
/%postname%/%post_id%/
a změnil to na/%postname%/
, tak byla URL adresa funkční v obou variantách a nedošlo k přesměrování na nové URL adresy, ale vlastně vznikly duplicity. Takže to přesměrování pomocí pluginu vlastně neřeší, že by původní adresy nefungovaly, ale bohužel fungují obě varianty…@paja: Tak to asi nebude tak jednoduché :-(
– Pokud někdo změní strukturu trvalých odkazů z číselné podoby
/archiv/%post_id%
na název příspěvku/%postname%/
, tak to přesměrování bohužel nefunguje.– Pokud to někdo změní obráceně, tak to funguje. Moc to sice nechápu, ale je to tak, takže asi budete muset nějaké přesměrování řešit.
Ale zkuste to prosím také raději přímo na webu, zda k přesměrování dojde. Obecně mi ale připadá, že cokoli je změněno na
/%postname%/
, tak to nefunguje (ale obráceně ano).Nakonec asi budete muset přidat přesměrování do souboru .htaccess, ale můžete si ho nechat vygenerovat v obecné podobě pomocí online nástroje (musíte zadat URL adresu webu).
13. září 2016 (11:11) #29020Tak ještě doplním odkaz na další hlášenou chybu, kde je hezky popsané, u které změny přesměrování funguje a u které nikoli. A jsou tam i další odkazy na návazné problémy, každopádně jde o mnoho let hlášené chyby, které asi nebude moc jednoduché (a rychlé) vyřešit a stále bude potřeba doplňovat přesměrování :-(
-
AutorPříspěvky
Pokud chcete odpovědět na toto téma, musíte se nejdříve přihlásit.