หนึ่งจะระงับรหัสสถานะ 404 ในหน้า WordPress ได้อย่างไร


13

ฉันมีไซต์ WordPress ที่มีหน้าที่ดึงมาจากฐานข้อมูลอื่น ปัญหาคือหน้าอื่น ๆ เหล่านี้ส่งคืนรหัสสถานะ 404 (โพสต์ / หน้า WordPress ไม่เป็นไร)

หน้าเว็บ 404'ed แสดงผลได้ดีและฉันลบข้อความ "ไม่พบหน้า" ออกจากแท็กชื่อใน WordPress แต่ Googlebot และ W3C เห็นส่วนหัว 404

ดังนั้น: ว้าวจะบอก Apache ให้หยุดสถานะ 404 หรือไม่? Apache จะแทนที่ส่วนหัวของ 404 ของ WordPress หรือไม่

มันสมเหตุสมผลไหม ฉันควรดูข้อมูลและสิ่งอื่นใดอีกบ้าง

ฉันสามารถระงับรหัสสถานะใน. htaccess ดังนั้นฉันจะไม่เปลี่ยนไฟล์ WP core?

คำตอบ:


11

คุณสามารถเพิ่มการเขียนใหม่ที่กำหนดเองในหน้าของคุณ หรือด้านบนของแฟ้มแม่แบบที่ห่อหน้าอื่น ๆ header('HTTP/1.1 200 OK');ของคุณเพียงแค่เอาท์พุท


2
การแก้ไขที่ดีแทนที่จะใช้. htaccess และสำหรับการแก้ไขเทมเพลตหน้า php ที่ไม่ใช่ WP ขอบคุณ!
markratledge

มีฟังก์ชันในตัวสำหรับสิ่งนี้: status_header (200);
guidod

5

WordPress เสนอฟังก์ชั่นstatus_header()เพื่อส่งคืนรหัสสถานะที่ถูกต้อง

คุณสามารถเรียกฟังก์ชั่นนี้ได้จากแม่แบบ / ฟังก์ชั่น WordPress ของคุณ:

// Will return http status header "200 OK"
status_header(200);

2

Wordpress คือ PHP ดังนั้นมองหาที่ที่มันส่งอะไรเช่น:

header("HTTP/1.0 404 Not Found");

ลดระดับลงโดยบังเอิญคุณ แต่ได้เปลี่ยนแปลง ฉันไม่ต้องการเปลี่ยนไฟล์ WP หลัก
markratledge

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.