رفتن به مطلب

مشکل در تغییر پیوند یکتا در وردپرس


پست های پیشنهاد شده

سلام به دوستان
بنده در بخش پیوندهای یکتا، ساختار لینک پست ها را تغییر داده ام. اما بعد از چند ماه، هنوز در وبمسترتولز لینک های قدیمی را به صورت 404 به من نشان می دهد.
به نظرم معنی اش این است که: آثار این لینک ها در سایت وجود دارد(هرچند آن صفحه با آدرس قدیمی اش در سایت موجود نیست). و گوگل در کراول کردن سایت، آنها را می بیند و به عنوان خطای 404 گزارش می کند. 
چطور لینک های قدیمی را برای همیشه از سایت پاک کنم؟؟

لینک به ارسال
در 2 ساعت قبل، nozar.it@gmail.com گفته است :

از فرمت زیر:

domain/postid

به فرمت زیر:

domain/post-name

شما کد زیر رو بذار توی فایل functions.php قالب سایت زیر

<?php

عبارت بالا.

add_action('template_redirect', function() {
	
	if(!is_404())
		
		return false;
	
	global $wpdb;
	$slug = htmlspecialchars(basename($_SERVER['REQUEST_URI']));
	$id = $wpdb->get_var($wpdb->prepare("SELECT ID FROM $wpdb->posts WHERE post_name = '%s' AND post_status = 'publish'", $slug));
	
	if($id) {
		
		$url = get_permalink($id);
		wp_safe_redirect($url, 301);
		exit;
		
	}
	
});

بعد چک کن ببین حالت قبلی ریدایرکت میشه روی حالت جدید.

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...