Hi David,
I have received a message from GWT about unusual increase in soft 404 errors over the past few days.
They all have the same/similar pattern when I look at the source of the errors in GWT, i.e. originated from the search.php
Page not found:
http://www.bforbag.com/search.php?q=category%3ADuffel%3A&brandFilter%5B%5D=ASAKS
According to Google the above page is linked from this page:
http://www.example.com/search.php?q=category:Duffel:
Another example:
Not found:
http://www.example.com/search.php?q=category%3ALuggage%3A&brandFilter%5B%5D=Antler&categoryFilter%5B%5D=Luggage
Linked from:
http://www.example.com/search.php?q=category%3ALuggage%3A&page=1&brandFilter%5B%5D=Antler&sort=priceDesc
http://www.example.com/search.php?q=category%3ALuggage%3A&brandFilter%5B%5D=Antler
I'm a bit confused on what is going on here.
Can you help?
Thanks,
Birgir
Hi David,
I applied this fix and cleared the errors in GWT. I will let you know if they resurface or not over the coming days.
Again, many thanks for your support.
Cheers,
Birgir
David,
Just to report back that your recommendation fixed the issue. I have not received any further soft 404 error messages from Google.
Many thanks for all your help.
Cheers,
Birgir
Hello Birgir,
The links showing as soft 404 are using the multiple select filter version of the filter values in the URL, which it doesn't look like you are currently using, so I think these must be "left over" links from when you were using this modification in the past.
If that sounds like it's the case, perhaps it would be best for your search engine positioning to 301 (Moved Permanently) these links to the style of URL currently in use. If you'd like to try this, in search.php look for the following code at line 20:
$priceWhere = "";
...and REPLACE with:
$redirectHREF = "";
if (is_array($merchantFilter))
{
$redirectHREF = $config_baseHREF."search.php?q=".$urlencode($q);
$redirectHREF .= "&merchantFilter=".urlencode($merchantFilter[0]);
}
if (is_array($categoryFilter))
{
$redirectHREF = $config_baseHREF."search.php?q=".$urlencode($q);
$redirectHREF .= "&categoryFilter=".urlencode($categoryFilter[0]);
}
if (is_array($brandFilter))
{
$redirectHREF = $config_baseHREF."search.php?q=".$urlencode($q);
$redirectHREF .= "&brandFilter=".urlencode($brandFilter[0]);
}
if ($redirectHREF)
{
header("HTTP/1.1 301 Moved Permanently");
header("Location: ".$redirectHREF);
exit();
}
$priceWhere = "";
Cheers,
David.
--
PriceTapestry.com