Zazwyczaj po otrzymaniu żądania udostępnienia nieistniejącej strony serwer zwraca błąd 404 (nie znaleziono). Ten kod odpowiedzi HTTP jednoznacznie informuje przeglądarki i wyszukiwarki o braku strony. Dzięki temu zawartość strony (jeśli jest dostępna) nie jest pobierana ani indeksowana przez wyszukiwarki. Obsługa błędu w inny sposób niż wyświetlenia błędu może opóźnić wykrycie błędu w stronie ponieważ system google nie dowiaduje się o braku wywoływanej strony.
W joomla możemy wykonać własne przekierowanie na wyszukiwarkę w stronie i zwrot informacji w formie listy wyników.
Obsługa błędu strony odbywa się poprzez skrypt error.php znajdujący się w katalogu szablonu.
Definiujemy: $u =& JURI::getInstance(); – jako adres o który pyta klient.

Usuwamy z adres elementy związane z notacją zapytania html np. adres domeny (serwera), składniki ścieżek np. contet, component aby „wyciągnąć” z adresu szukaną treść.
Rozdzielmy elementy tekstowe wyszukiwania np – na spację.
Następnie za pomocą wyszukiwania testowego w joomla wywołujemy stronę wyszukiwania;
www.strona.pl/component/search/?searchword=’.$szukam.’&searchphrase=any
lub inną stronę w naszym serwisie.

Przykład w katalogu szabonu plik error.php bezpośrenio po:
defined(‚_JEXEC’) or die;

Dodajemy naszą obsługę błędu 404

if (($this->error->getCode()) == ‚404’) {
$u =& JURI::getInstance();
$elementy = array(„http://”,”www.”, „strona.”, „pl/”,”,”,”-„,”.”,”component/”,”content/”,”article/”);
$zamiana = array(„”,” „, „”, „”,” „,” „,” „,””,””,””);
$szukam = trim(substr(trim(str_replace($elementy,$zamiana,$u->toString())),0,190));
header(‚Location: /component/search/?searchword=’.$szukam.’&searchphrase=any’);
exit;
}

Print Friendly, PDF & Email