Bir URL'den sonra ? işareti sayfaya get parametresi gönderir. Eğer sayfa halihazırda açılıyorsa gelen parametre sizi 404 sayfasına yönlendirmez.

Aşağıdaki kodu header.php'ye yapıştırırsanız ve gerekli yönlendirme kodunu yazarsanız işinizi görür sanırım. Kodu denemedim, şimdi burada yazdım.

$full_url = basename($_SERVER['REQUEST_URI']);
$find= '?';
$parameter = strpos($full_url , $find);
if ($parameter === false) {
// sayfa içeriği
} else {
// 404 sayfasına yönlendime
}
Tabi bunun şöyle bir dezavantajı var, temanızda herhangi bir eklenti veya temanızın özelliği sayfaya get parametresi gönderiyorsa temanız sorun çıkartabilir. Kolay gelsin.