menu
Krylan | Krzysztof Koperkiewicz
Blog

RSS Level up! Rozwijamy generator kanałów

2018-01-28 / Inne / Komentarze (0) / Wyświetleń: 1055

Ostatnio na blogu możecie zauważyć, że po prawej stronie pojawił się nowy pomarańczowy przycisk – "Personalizacja RSS". Postanowiłem więc rozwinąć swoje dotychczasowe rozwiązanie i je ulepszyć, aby każdy mógł dostosować kanał z wpisami do swoich wymagań.

Mój blog, ze względu na tematykę, nieustannie się rozwija. Z racji tego, że kategorii jest coraz więcej i dotyczą one nie tylko web developmentu, postanowiłem, że lepiej będzie stworzyć rozwiązanie, dzięki któremu każdy otrzyma powiadomienia o nowych postach w tematach, które rzeczywiście go interesują. Obecne kanały RSS były generowane na podstawie kategorii i były zapisywane do plików w momencie, gdy edytowałem lub dodawałem wpis. Czytelnicy mogli wybrać odpowiadającą im kategorię i zapisać ją w czytniku RSS, aby otrzymywać kolejne powiadomienia o wpisach. To samo mogli zrobić z głównym kanałem, który zawierał wszystkie wpisy, bez wyjątku. Tylko co zrobić w przypadku, gdy ktoś chce obserwować cały blog poza jedną czy dwiema kategoriami? Dodawanie kanałów wszystkich kategorii byłoby czasochłonne i robiłoby niezły bałagan w czytniku. Dlatego właśnie przedstawiam Wam rozwiązanie, dzięki któremu możemy ten problem naprawić!

A teraz krótkie wprowadzenie dla tych, co nie wiedzą. Ten wpis jest kontynuacją tego, w którym opisywałem jak krok po kroku napisać generator kanałów RSS, który zapisywał dane o wpisach w plikach XML:
RSS – jak samemu napisać generator kanałów?

Moje obecne rozwiązanie jest rozwinięciem poprzedniego. Na osobnej stronie wypisane są wszystkie kategorie istniejące na blogu, a przy każdej z nich umieszczony jest checkbox. Użytkownik zaznacza te kategorie, które chce mieć zawarte w swoim spersonalizowanym kanale, a następnie klika przycisk, który przenosi go do skryptu generującego kanał RSS. Zasada działania tego generatora jest taka sama, z wyjątkiem tego, że przyjmuje w adresie argument "channels", w którym wypisane są po przecinku wszystkie identyfikatory kategorii, które chcemy zawrzeć w kanale. Na ich podstawie skrypt wyciąga dane z bazy, rozmieszcza je w tagach XML, a następnie wyświetla na stronie. 

header('Content-Type: text/xml');


Pamiętajmy o zamieszczeniu tego nagłówka w dokumencie PHP, aby określić rodzaj wyświetlonego dokumentu.

Jeśli coś jest niejasne, bądź macie inne rozwiązania, podzielcie się tym w komentarzu!


Poprzedni post
Podsumowanie roku 2017
Następny post
Zaproszenie na bezpłatny webinar z podstaw NodeJS

Wygląda na to, że nic tu nie ma
Uszczęśliw kotka i napisz komentarz