Ghid rapid la formarea de feed-uri RSS
După ce am descoperit pe Internet, că toată omenirea progresivă a fost mult timp bucurat de format RSS (R S eally aplicare S yndication) program de știri, iar aceste lucruri am stricat gânduri indisciplinați copil la site-ul. Apoi, un altul. Și mai mult. În procesul de insurubare a acestuia copilul de diferite site-uri, am fost confruntat cu unele probleme pe care le-am avut de a decide ce, și mă grăbesc să împărtășesc. Deci, în ordine.
Pentru a începe ab ovo. Care este formatul RSS în formă minimă, văzut din exemplul de mai jos:
Firește, în această formă, nici un cadou nu este necesar, dar nu se grăbesc, e doar o vorbă, întreaga poveste să vină. Deci, ceea ce avem cu gasca? Prima linie ne spune că acesta este un limbaj de marcare XML și codificare text în Windows-1251. Desigur, cel mai potrivit ar fi utilizarea UTF-8, așa cum se recomandă în documentația XML, dar din moment ce a permis orice standard de codare. Nu vom filozofa șiret și codificarea vozmem utilizate pentru documente pe site-ul nostru. De asemenea, este posibil de codificare KOI8-R sau orice altă alegere.
A doua linie este tag-ul de deschidere
Numele canalului. Este pentru acest titlu și va face legătura la resursa. Dacă o faci pentru site-ul dvs. - pur și simplu introduceți numele site-ului.
Scurtă descriere a canalului.
Acum, pe un element opțional.
Ei bine, acum vom colecta toate împreună. Introduceti este indicat cu caractere aldine.
Dacă vom face RSS manual, dar acum am doar adauga la Fail, ștergerea vechi după cum este necesar, la următoarea apariție știri. În principiu, nu contează în cazul în care pentru a adăuga următorul bloc, dar frumos atunci când merge în ordine cronologică inversă. De exemplu:
Trebuie amintit că, dacă doriți să utilizați un format XML, de exemplu, în elementul
Schimbarea atributul href, și vei fi fericit.
Acum, că toate programarea în PHP dinamic. Cred că o persoană familiară cu elementele de bază ale PHP pentru a încheia fișierul în formatul de mai sus nu este dificil, sarcina este banal, dar există un „dar“. Faptul că este necesar să se formeze în mod corespunzător antetele. Deoarece agregatorii pot accesa resursa destul de des, nu-i rău că ei primesc Acesta nu a reușit, în cazul în care nu există modificări la site-ul nr. În acest scop, HTTP-antet prescrise următoarele lucruri:
header ( "Content-type: text / xml");
header ( "Last-Modified $ MypubDate.");
header ( "ETAG." $ MyETAG "");
Vă las dumneavoastră formarea element de discreție ETag. Eu, personal, utilizați un marcaj de timp cele mai recente știri, plus unele deasupra capului. Dar poate că, înainte de a emite cele de mai sus nu se poate ajunge, pentru că primul apel ar trebui să fie pentru a verifica titlurile și dacă nu se schimba codul pentru a returna o eroare HTTP 304 Nu a fost modificată. Fragment cod de verificare performante prezentate mai jos.
Notă: toate datele din antetul HTTP ar trebui să fie făcută numai în conformitate cu RFC standardul 1123. Formatul corect dată este una care respectă acest standard poate fi obținut, de exemplu, după cum urmează: $ MyGMTtime = gmdate ( „D, d MYH: i: s“, $ MyTime) "GMT" .;
Eu pot adăuga, de asemenea, curios:
- Că, în plus față de formatul RSS există încă dezvoltat activ format Atom. în prezent, versiunea 0.3 și în cele din urmă aprobat. Unele site-uri de știri emite deja în acest format, dar eu sunt în nici o grabă.
- Există încă un format de canal activ CDF sau Microsoft. Acest format, de asemenea, să învețe și de a folosi. Deci, pe pagina principală a acestui site este instalat în partea din stânga jos a butonului corespunzător, care poate fi văzut dacă aveți un IE 4.0 și de mai sus. Dar, după cum arată experiența, interesul nu este. Este suficient mecanism stîngace și incomod de utilizat.