Kategoria: Pozycjonowanie
Seo Adder sprawdzanie niepoprawnych urli
2008 Luty 15 – 11:02Korzystają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.

One Response to “Seo Adder sprawdzanie niepoprawnych urli”
Sprawdziłem, i działa super. Dzięki
By samochody on cze 22, 2008