Autor | Zpráva | ||
---|---|---|---|
lopik Profil |
#1 · Zasláno: 7. 2. 2024, 22:50:04
Dobrý deň, som v XML úplný amatér a v php samouk a potreboval by som poradiť s úpravou XML sitemapy pre google.
Potreboval by som prostredníctvom php skriptu vymazať všetky záznamy, ktoré obsahujú v <loc> "/blog/". Sitemap: <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url><loc>https://www.domena.eu/</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/blog/16-ako-vybrat</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/blog/17-a</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/cookie</loc><changefreq>daily</changefreq><priority>1.0</priority></url> . . . <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url><loc>https://www.domena.eu/</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/cookie</loc><changefreq>daily</changefreq><priority>1.0</priority></url> . . . |
||
Časová prodleva: 3 dny
|
|||
RastyAmateur Profil |
#2 · Zasláno: 10. 2. 2024, 13:24:52
lopik:
Tak jedna možnost (ta správná a ideální) by byla se naučit s nějakou knihovnou na práci s XML, a pak udělat něco jednoduchého typu: - Načíst staré XML - Vytvořit nové, prázdné XML - Udělat for cyklus skrz záznamy ve starém XML - Pokud daný záznam neobsahuje "/blog/", přidat ho i do nového XML - Uložit nové XML Pak mě napadá i druhá možnost, která je sice jednodušší, ale zato není tak pěkná. Pokud ten XML soubor opravdu vypadá tak, jaks poslal, tedy na každém řádku je jeden záznam, tak si to XML můžeš načíst jako normální textový soubor a pak velice jednoduše odstranit všechny řádky, které obsahují substring "/blog/". To je něco, co se dá opravdu udělat na pár řádků kódu a nemusíš se kvůli tomu učit pracovat s XML nebo s nějakými knihovnami. Dokonce pokud jde o to to udělat jednorázově pro nějaký statický soubor, tak to lze udělat i jedním příkazem v příkazové řádce (ale to už asi přeháním... :-) ): $ cat test.xml <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url><loc>https://www.domena.eu/</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/blog/16-ako-vybrat</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/blog/17-a</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/cookie</loc><changefreq>daily</changefreq><priority>1.0</priority></url> $ cat test.xml | grep -v "/blog/" <urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <url><loc>https://www.domena.eu/</loc><changefreq>daily</changefreq><priority>1.0</priority></url> <url><loc>https://www.domena.eu/cookie</loc><changefreq>daily</changefreq><priority>1.0</priority></url> |
||
Časová prodleva: 3 měsíce
|
0