- Co to jest mapa witryny XML
- Kilka ważnych faktów
- Wskazówka!
- Narzędzia do generowania mapy witryny XML
- Nie używaj XML-Sitemaps.com i podobnych usług
- Przykład tego, jak wygląda mapa witryny XML
- Wyjaśnienie priorytetu elementu
- Wyjaśnienie innych elementów
- Jak przesłać do wyszukiwarek
- Przykład jak wygenerować za pomocą PHP
- Wprowadź prawidłowe adresy URL
- Jak zweryfikować i kontrolować mapę witryny XML
- Spraw, by Twoja mapa XML była przydatna dla zwykłych ludzi
- Wykorzystanie pliku indeksu mapy witryny XML
- Korzystanie z wielojęzycznej mapy witryny XML
- Wideo i zdjęcia
- Doświadczenie jako konsultant SEO
Ten artykuł został całkowicie przepisany na 2017-08-17 (został opublikowany po raz pierwszy 2009-05-07).
Co to jest mapa witryny XML
Mapa witryny XML to zaprojektowany dokument XML zgodnie z protokołem w przypadku map witryn XML znajdujących się w Twojej witrynie i używanych przez wyszukiwarki do odczytywania adresów URL, z których składa się Twoja witryna, w miarę ich zmiany oraz ich wzajemnego priorytetu w zakresie indeksowania (wrzeciona) i prawidłowego indeksowania witryny.
Został wprowadzony przez Google w 2005 r. I zaczął być wspierany przez inne wyszukiwarki w następnym roku.
Kilka ważnych faktów
- Mapa witryny XML nie ma bezpośredniego wpływu na ranking wyszukiwarki. Może jednak mieć pośredni pozytywny wpływ, ponieważ można uzyskać więcej indeksowanych stron. 1
- Mapa witryny XML jest szczególnie ważna, jeśli witryna zawiera tysiące stron lub jeśli istnieją strony, do których nie można dotrzeć za pomocą kilku kliknięć ze strony głównej (co może być kolejnym problemem do rozwiązania).
Wskazówka!
Jim Westergren rozwinął się Statystyki domeny , niesamowita usługa w ramach SEO, w której możesz zobaczyć linki przychodzące i nie tylko.
Narzędzia do generowania mapy witryny XML
Powinieneś dynamicznie generować mapę witryny XML, aby była zawsze aktualna (pamięć podręczna jest oczywiście OK). Jeśli korzystasz z CMS i istnieją wtyczki, moduły lub coś innego, aby dynamicznie generować mapę witryny XML dla tego, to oczywiście używaj jej. Dlatego adresy URL muszą być pobierane dynamicznie z bazy danych co najmniej raz dziennie.
Nie używaj XML-Sitemaps.com i podobnych usług
Prawdopodobnie robią więcej szkody niż pożytku!
Mapa witryny XML pomaga Google i innym wyszukiwarkom indeksować i indeksować. Robot, którego używa Google, jest najbardziej zaawansowany i wyrafinowany na świecie. Jeśli korzystasz z usługi online, która indeksuje Twoją witrynę i daje Ci statyczny plik do pobrania, otrzymasz 3 problemy:
- Twój plik XML nie zostanie zaktualizowany. Na przykład nowe adresy URL nie zostaną uwzględnione.
- Użyty robot nie jest tak dobry jak Google i prawdopodobnie brakuje wielu adresów URL.
- Przeszukiwacz online nie może ustawić poprawnych wartości dla lastmod, changefreq i priorytetu.
Przykład tego, jak wygląda mapa witryny XML
Przykład dla 2 adresów URL ze wszystkimi opcjonalnymi elementami
<? xml version = "1.0" encoding = "UTF-8"?> <urlset xmlns = "https://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc> https: // www .example.com / page1.php </loc> <lastmod> 23-11-2008 </lastmod> <changefreq> codziennie </changefreq> <priority> 0.8 </priority> </url> <url> <loc> https://www.example.com/sidan2.php </loc> <lastmod> 2008-11-15 </lastmod> <changefreq> tygodniowy </changefreq> <priority> 0.4 </priority> </url> < / urlset>Przykład dla 2 adresów URL bez elementów opcjonalnych
<? xml version = "1.0" encoding = "UTF-8"?> <urlset xmlns = "https://www.sitemaps.org/schemas/sitemap/0.9"> <url> <loc> https: // www .example.com / page1.php </loc> </url> <url> <loc> https://www.example.com/page2.php </loc> </url> </urlset>Wyjaśnienie priorytetu elementu
Zacznę od tego, że od razu nie uszeregowałeś się wyżej w Google, jeśli umieścisz wszystkie swoje adresy URL jako najwyższy priorytet.
Po pierwsze, priorytetem jest indeksowanie, a nie ranga. Po drugie, jest to względna wartość od 0,0 do 1,0 określająca, jak ważny jest adres URL w porównaniu z innymi adresami URL w tej samej witrynie .
Ponieważ wartość jest względna między sobą, oznacza to, że jeśli wszyscy są ustawieni jako 1.0, to samo jest to, że każdy ma wartość 0.0 - wszystkie adresy URL są równie ważne. Jeśli 1 adres URL ma wartość 1.0, a reszta 0.0 oznacza, że 1.0 był znacznie ważniejszy niż wszystkie inne.
Wszystkie nazwy domen mają określony budżet indeksowania Google. Na przykład dziennik może nadawać wysoki priorytet nowym artykułom, a niski priorytet - starym artykułom, które nie są już aktualizowane.
Wyjaśnienie innych elementów
- <lastmod> to czas ostatniej modyfikacji adresu URL. Czas jest zaprojektowany zgodnie z W3C Datetime , na przykład, 2009-11-25. Upewnij się, że jest to poprawne. Jeśli na przykład tekst produktu w sklepie internetowym został zaktualizowany, musi to być odpowiedni czas na ten adres URL. Nie umieszczaj dzisiejszej daty na wszystkich adresach URL, a nie na tej samej dacie.
- <changefreq> określa, jak często strona może się zmienić. Wartości do wyboru to: zawsze , co godzinę , codziennie , co tydzień , co miesiąc , co rok i nigdy . Pamiętaj, że masz określony budżet indeksowania i nie będzie on użyteczny, jeśli wprowadzisz wszystko.
Jak przesłać do wyszukiwarek
Istnieją różne sposoby, aby wyszukiwarki wiedziały, gdzie jest Twoja mapa witryny.
- Zarejestruj swoją mapę witryny XML tutaj w konsoli wyszukiwania Google.
- Wprowadź ten wiersz w pliku robots.txt, podając poprawny adres URL: Mapa witryny: https: //www.din-domain.com/sitemap.xml.
- Przez to pinguj wyszukiwarki , Pingowanie można również wykonywać regularnie, na przykład, gdy nastąpiły poważne zmiany.
Przykład jak wygenerować za pomocą PHP
<? php header ('Content-type: application / xml; charset =' utf-8 '', true); echo "<? xml version = & bsol;" 1.0 & bsol; "encoding = & bsol;" UTF-8 & bsol; "?> & bsol; n"; echo "<urlset xmlns = & bsol;" https://www.sitemaps.org/schemas/sitemap/0.9\ "> & bsol; n"; // URL type 1: $ result = $ conn-> query ("SELECT ..."); while ($ row = $ result-> fetch_assoc ()) {echo "<url> & bsol; n"; echo "<loc> https://www.example.se/".$row['url"]. "</loc> & bsol; n"; echo "<lastmod>" .date ("Ymd", $ row ['lastmodified']); echo "</lastmod> n"; echo „</url> & bsol; n”; } echo "</urlset>"; // URL type 2: $ result = $ conn-> query ("SELECT ..."); while ($ row = $ result-> fetch_assoc ()) {echo "<url> & bsol; n"; echo "<loc> https://www.example.se/".$row['url"]. "</loc> & bsol; n"; echo "<lastmod>" .date ("Ymd", $ row ['lastmodified']); echo "</lastmod> n"; echo „</url> & bsol; n”; } echo "</urlset>"; ?>Inne wskazówki, jeśli chcesz je wygenerować samodzielnie
Wprowadź prawidłowe adresy URL
To typowy błąd, który często widzę. To oczywiście kanoniczne adresy URL, które powinieneś przynieść.
- Czy powinien być z www czy bez?
- Czy używany jest https lub stary http?
- Nie dołączaj adresów URL, które nie są kanoniczne, takich jak adresy URL z parametrami GET do sortowania i tym podobne.
- Nie dołączaj adresów URL zablokowanych w pliku robots.txt i nie należy ich indeksować.
Jak zweryfikować i kontrolować mapę witryny XML
Jest to szczególnie ważne, jeśli zbudowałeś skrypt generujący mapę witryny XML. Upewnij się, że wszystko jest w porządku Usługa walidacji znaczników W3C a następnie oczywiście wyślij go do Google Search Console tutaj i zobacz, jaki to tam status. Porównaj liczbę między wysłanym a zindeksowanym - sprawdź, czy ktoś nie ma racji, jeśli jest to duża różnica.
Porównaj przede wszystkim z numerem powyżej liczba indeksowanych adresów URL , Czy jest więcej indeksowanych numerów niż podana liczba? Zapomniałeś wpisać adresy URL w swojej mapie witryny XML? Czy są też inne problemy, które powodują indeksowanie nieindeksowanych adresów URL?
Spraw, by Twoja mapa XML była przydatna dla zwykłych ludzi
Dzięki metodzie o nazwie XSLT możesz programować, dodawać HTML i wstawiać CSS do swojej mapy witryny XML, tak aby mogła być używana przez prawdziwych użytkowników.
Ponieważ SEO-guide.se jest zbudowany przez system N.nu to jest już automatycznie naprawione dla tej witryny. Sprawdź to sam www.seo-guide.se/sitemap.xml
Więcej przykładów: tutaj , tutaj i tutaj ,
Wykorzystanie pliku indeksu mapy witryny XML
W tym specjalnym wariancie łączysz kilka różnych plików mapy witryny XML.
- Na przykład, jeśli masz dużą witrynę z forami i blogami w tej samej domenie.
- Jeśli mapa witryny przekracza 10 MB lub 50 tys. Adresów URL.
Przykład pliku indeksu mapy witryny XML
<? xml version = "1.0" encoding = "UTF-8"?> <sitemapindex xmlns = "https://www.sitemaps.org/schemas/sitemap/0.9"> <sitemap> <loc> https: // www .example.com / sitemap.xml </loc> </sitemap> <sitemap> <loc> https://www.example.com/blogg/sitemap.xml </loc> </sitemap> <sitemap> <loc > https://www.example.com/forum/sitemap.xml </loc> </sitemap> </sitemapindex>Korzystanie z wielojęzycznej mapy witryny XML
Jeśli Twoja witryna zawiera strony w kilku różnych językach, możesz skorzystać z tych informacji w swojej mapie witryny XML. Zobacz jak ten artykuł Google ,
Wideo i zdjęcia
Istnieje teraz możliwość dodawania informacji dotyczących wideo i obrazów w mapie witryny XML. Nie uważam tego za tak ważne, z wyjątkiem przypadków, gdy strona skupia się na wideo lub obrazach.
Aby uzyskać więcej informacji na ten temat, zobacz ten artykuł do wideo i ten artykuł do zdjęć ,
Doświadczenie jako konsultant SEO
Niestety, jako konsultant SEO rzadko widziałem poprawną mapę witryny XML. We wszystkich raportach akcji, które napisałem, prawdopodobnie tylko klient ma poprawną mapę witryny.
Zwykle jest to bardzo poważny błąd:
- Brakuje dużej liczby ważnych adresów URL.
- Wyświetlane są nieprawidłowe adresy URL.
- Wiele wymienionych adresów URL nie jest już dostępnych w witrynie.
- Wartości priorytetu, trybu ładowania i changefreq w ogóle nie pasują.
- Używany jest plik statyczny, który nie był aktualizowany od lat.
Niestety, gdy coś często jest nie tak, nawet na przykład rel kanoniczny gdzie wielu popełnia błędy - więc Google nie może mu ufać i traktuje te informacje jedynie jako przewodnik. Doprowadziło to do tego, że mapy witryn XML nie pomagają nam w prawidłowym użyciu.
Quot; encoding = "UTF-8"?Quot; encoding = "UTF-8"?
Php header ('Content-type: application / xml; charset =' utf-8 '', true); echo "<?
Amp; bsol; "encoding = & bsol;" UTF-8 & bsol; "?
Date ("Ymd", $ row ['lastmodified']); echo "</lastmod> n"; echo „</url> & bsol; n”; } echo "</urlset>"; ?
Czy powinien być z www czy bez?
Czy używany jest https lub stary http?
Zapomniałeś wpisać adresy URL w swojej mapie witryny XML?
Czy są też inne problemy, które powodują indeksowanie nieindeksowanych adresów URL?
Quot; encoding = "UTF-8"?