RSS
RSS

Przekierowywanie adresów stron mediów WordPressa do stron nadrzędnych, do których są załączone


Kategorie: Wszystkie

0

W WordPressie używając wtyczki Yoast w wersji 6 i wcześniejszych można było przekierować strony przedstawiające pojedyncze media (zdjęcia, filmy itp.) do stron, do których te media były „załączone” przy pomocy mechanizmu załączania dostępnego w galerii WordPressa.

Wyjaśnienie: WordPress dla każdego medium tworzy osobną podstronę, prezentującą to medium, co niekorzystnie wpływa na pozycjonowanie i zazwyczaj jest zupełnie zbędne.

Można było używać tego mechanizmu np. do robienia galerii obrazów z odnośnikami, które (po odpowiednim załączeniu i automatycznym przekierowaniu) kierowały pod pożądane adresy podstron. Wersja 7 wtyczki zmieniła zachowanie tego mechanizmu – teraz albo adresy stron załączników nie są ruszane (co jest niekorzystne dla pozycjonowania), albo są przekierowywane na adresy tych załączników (co jest dobre dla pozycjonowania, ale uniemożliwia np. stosunkowo proste tworzenie menu przy użyciu mechanizmu galerii).

Aby przywrócić wcześniejsze zachowanie, należy wyłączyć przekierowanie załączników w ustawieniach Yoast i wprowadzić poniższy kod do pliku functions.php:

  add_action( 'template_redirect', 'sukcesstrony_attachment_url_redirect' );
  
  function sukcesstrony_attachment_url_redirect(){
	global $post;
	
	if ( is_attachment() && isset($post->post_parent) && is_numeric($post->post_parent) && ($post->post_parent != 0) ){
		wp_redirect( get_permalink( $post->post_parent ), 301 );
		wp_reset_postdata();
		exit();
	}

  }

Komentuj

Subscribe without commenting