Kategoria: Pozycjonowanie

Seo Adder sprawdzanie niepoprawnych urli

2008 Luty 15 – 11:02

Korzystając z Addera można zauważyć ze bardzo często przy dodawaniu strony wyskakują błędy typu:

  • Brak formularza
  • Brak gł. kategorii
  • Brak strony

najczęściej dzieje się tak, ponieważ nasz url w bazie jest błędny, czyli nie wskazuje na stronę główną katalgu lub bloga, np mamy http://blog.empriz.pl/category/pozycjonowanie/ a powinno być http://blog.empriz.pl/.
Można naturalnie wywalić wszystkie niepoprawne wpisy (zawierajace słowa category, archive, datę wpisu itp), ale może się okazać że wyrzuciliśmy dobry katalog i nie mamy linka do jego strony głównej.

Skrypt który napisałem sprawdza bazę katalogów pod kątem niepoprawnych wpisów, po czym próbuje je poprawić.
Niepoprawne wpisy są oznaczane jako „niedziałające” i w następnym kroku, po udanym skróceniu url, są oznaczane znowu jako poprawne. Taka procedura zaznacza wielokrotne urle do tego samego katalogu oraz urle nie wskazujące na strone główną katalogu.

UWAGA: Skrypt nie usuwa wpisów, jedynie oznacza je jako „niedziałające”. Usunąć je można jednym kliknięciem z menu Addera.

#!/bin/bash
###############
# skrypt oznaczajacy niepoprawne wpisy z bazy spr=1
# Jedrzej Schmeidel - Yunnan
# www.yunnan.tk
# Licencja GNU GPL
# uzywanie na wlasna odpowidzialnosc !!!
###############
#### lista niepoprawnych zwrotow w urlach katalogow
listaslow="%/admin/ %/manual/ %/detail/ %/archive/% %/archives/% %/category/% %/kat/% %/dir/% %/tag/% %/2006/% %/2007/% %/2008/%";
#### konfiguracja bazy
baza='nazwa_bazy';
user='user';
haslo='haslo';

#### zerowanie licznika spr
mysql -vvv -u$user -p$haslo $baza -e "update adder_url set spr=0;";

#### sprawdzanie niepoprawnych wpisow
for slowo in $listaslow; do
    echo $slowo;
    mysql -vvv -u$user -p$haslo $baza -e "update adder_url set spr=1 where url like '$slowo';";
done;

#### przywrocenie str=0 dla katalogow %/kat/ i %/dir/, poniewaz czesto pod takimi linkami sa faktyczne katalogi
mysql -vvv -u$user -p$haslo $baza -e "
update adder_url set spr=0 where url like '%/kat/';
update adder_url set spr=0 where url like '%/dir/';
";

#### korekta i skracanie linkow
for slowo in $listaslow; do
echo $slowo;

listaa=`mysql -u$user -p$haslo $baza --skip-column-names -e "select url from adder_url where spr=1 and url like '$slowo';";`;
slowo_sed=`echo $slowo | sed 's/^%\///' | sed 's/\/%/\\\\\/\.\*/';`;
echo $slowo_sed;

for id in $listaa; do
    id_new=`echo $id | sed 's/'$slowo_sed'//';`;
    echo $id_new;
    # jesli uda sie url skrocic jest oznaczany jako spr=0
    mysql -vvv -u$user -p$haslo $baza --skip-column-names -e "update adder_url set url='$id_new' where url='$id';" && \
    mysql -vvv -u$user -p$haslo $baza --skip-column-names -e "update adder_url set spr=0 where url='$id_new';" ;
done;

done; 

Możliwe że powyżej się poucinały linie itp, więc najbezpieczniej jest go ściągnąc sobie stąd -> mark_kat.

  1. One Response to “Seo Adder sprawdzanie niepoprawnych urli”

  2. Sprawdziłem, i działa super. Dzięki

    By samochody on Cze 22, 2008

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *