Komputer Świat Ekspert - Forum: [PHP] Przypinanie newsów w CMS - Komputer Świat Ekspert - Forum

Skocz do zawartości

Strona 1 z 1

[PHP] Przypinanie newsów w CMS sposób implementacji i przydatność

#1 Użytkownik nie jest zalogowany   Ferrari 

  • Tajny agent USB
  • Grupa: Moderatorzy
  • Postów 3531
  • Rejestracja: 21-marzec 04

Napisano 13 sierpień 2011, 15:47

Dużo serwisów wyświetla wybraną nowość na pierwszym miejscu, aby była cały czas widoczna i nie uciekła na inną stronę. Zazwyczaj są one wyróżnione. Czy taka funkcja w CMS-ach jest szczególnie przydatna?

Sposób 1. Opcja "Przypnij"
Dodajemy dodatkowe pole `pin` do tabeli `news`. Redaktor zaznacza opcję Przypnij newsa i już jest na samej górze. Wada tego rozwiązania: większa złożoność obliczeniowa mimo niekorzystania z tej funkcji:

SELECT * FROM news ORDER BY pin DESC, ID DESC

Indeks jest tylko na polu ID. Jak widać, trzeba dodatkowo sortować po polu `pin` bez indeksu. To musi trwać dłużej. Pole `pin` przyjmuje wartości 0 lub 1, chyba że dopuścimy większe.

Sposób 2. Data modyfikacji, data zdjęcia
Dodatkowe pole `expiry_time` pozwala wyświetlać news na szczycie do pewnego momentu. Podobnie jak wyżej, rozszerzamy komendę ORDER BY. Wady podobne, a zaleta - news zdejmie się automatycznie.

Sposób 3. Inny sposób?
Jak to zrobić, aby jak najmniej obciążać bazę danych i nie spowalniać generowania strony? Dodatkowo trzeba te newsy wyróżnić - prawdopodobnie po stronie PHP, a w szablonach może być tak:

<!-- START wyroznione -->
Tu wyróżnione newsy
<!-- STOP -->

<!-- START newsy -->
Tu zwykłe newsy
<!-- STOP -->

To można zastosować też do artykułów, plików i wszystkich typów zawartości.
Przygoda w Biurowej Dzielnicy - TODA :: Przyszłość sieci Webb i informatyzacja Polski
There is a road to freedom. Its milestones are Obedience, Endeavor, Honesty, Order, Cleanliness, Sobriety, Truthfulness, Sacrifice, and love of the Fatherland.
0

#2 Użytkownik nie jest zalogowany   Riklaunim 

  • Zaawansowany Uczestnik
  • PipPipPipPip
  • Grupa: Ekspert
  • Postów 2085
  • Rejestracja: 16-wrzesień 04

Napisano 14 sierpień 2011, 00:23

Spowalniać generowanie strony? och lol ;)

Jak masz listę sortowaną po dacie dodania to promowany element może mieć tą datę ustawioną na przyszłą wartość (przy okazji możesz regulować przez jaki czas ma być "promowana"). W bardziej specyficznych przypadkach elementy takie są tworzone ręcznie (odpowiednia zawartość, długość, grafika) - tak robię u siebie.

Użytkownik Riklaunim edytował ten post 14 sierpień 2011, 00:26

0

#3 Użytkownik nie jest zalogowany   Ferrari 

  • Tajny agent USB
  • Grupa: Moderatorzy
  • Postów 3531
  • Rejestracja: 21-marzec 04

Napisano 17 październik 2011, 00:06

Chcę wprowadzić jednolity sposób wyróżniania newsów, artykułów, plików, grafiki, linków i innych obiektów. Obecnie wszystkie obiekty oprócz newsów mają 3 priorytety (niski, normalny, ważny). Jakie rozwiązanie jest najlepsze?

1. Opcja "Przypnij"
Pole typu checkbox. Jeżeli jest zaznaczone, obiekt będzie wyświetlany przed innymi.

Zalety: bardzo proste dla użytkownika, bo wystarczy zaznaczyć 1 opcję
Wady: trzeba ręcznie odpinać newsy

2. Data odpięcia obiektu
Pole typu datetime. Ustawiasz czas, do kiedy obiekt będzie wyświetlany przed innymi.

Zalety: obiekt sam się odepnie po ustalonym czasie
Wady: trudniejsze dla nieobeznanych w skrypcie

3. Priorytety
Także dla newsów. Jak wcześniej: niski, średni, ważny.

Zalety: przypinanie ważnych obiektów na szczyt i spychanie mało ważnych na koniec
Wady: nie wszyscy wiedzą, o co chodzi i po co to

4. Ręczne sortowanie
Sam ustalasz kolejność obiektów. Sortujemy po polu "kolejność"

Zalety: można dowolnie przesuwać obiekty w kategorii
Wady: niewygodne dla dużej ilości obiektów

5. Tylko po stronie PHP
Nie sortujemy w bazie danych po polu "przypnij", lecz w PHP wkładamy przypięte obiekty do innej tablicy.

Zalety: szybsze wyszukiwanie w bazie, osobna tablica dla wyróżnionych
Wady: gdy obiekt przejdzie na następną stronę, zniknie z pierwszej strony

Napiszcie, który sposób najlepszy i dlaczego. Skupiam się głównie na interfejsie redaktora.
Przygoda w Biurowej Dzielnicy - TODA :: Przyszłość sieci Webb i informatyzacja Polski
There is a road to freedom. Its milestones are Obedience, Endeavor, Honesty, Order, Cleanliness, Sobriety, Truthfulness, Sacrifice, and love of the Fatherland.
0

Strona 1 z 1


Szybka odpowiedź

  

Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych


Zmień widoczność shoutboxa Shoutbox

emikyou  : (16 kwiecień 2012 - 13:26) @Ferrari: Na PŁ korzystają z "OpenGL SuperBible: Comprehensive Tutorial and Reference" i "OpenGL Programming Guide: The Official Guide to Learning OpenGL, Versions 3.0 and 3.1"
wtomczak  : (10 kwiecień 2012 - 09:27) masz problem z komputerem napisz na facebooku na stronie WT654, na pewno pomoże
Maciej :)  : (08 kwiecień 2012 - 09:36) A co do reklam, to mi na operze adBlock coś nie służy, szczególnie z postami bota redakcji :( od kiedy go dali, to zaczęło się walić..
Maciej :)  : (08 kwiecień 2012 - 09:35) Hej witam :) no, jak przestałem kupować Eksperta to wzięli i wstrzymali ;| także nie mam tylko numeru pierwszego i ostatniego :p trochę szkoda, parę lat się było...
neo5628  : (05 kwiecień 2012 - 21:57) Help http://forum.ks-ekspert.pl/topic/140746-problem-z-dzwiekiem/ Proszę
PiKey  : (21 marzec 2012 - 18:24) ludzie, pomóżcie :) http://forum.ks-ekspert.pl/topic/140418-jak-dziala-sprawdzanie-wykonania-zadania-na-stronach-typu-doladujse/
PiKey  : (21 marzec 2012 - 18:24) ds
A:-)Brunuś  : (17 marzec 2012 - 19:17) jest tu ktoś? http://forum.ks-ekspert.pl/topic/140400-firewire-obudowa-do-dysku-25-—-200-zlo/
Ferrari  : (16 marzec 2012 - 11:12) Polećcie dobrą książkę do OpenGL albo kurs w sieci :)
lisz55  : (15 marzec 2012 - 21:44) przez ktore reklamy? nie widze zeby jakies nowe byly
Pretender  : (15 marzec 2012 - 18:22) :/
Pretender  : (15 marzec 2012 - 18:22) az sie nie chce czytac tego forum przez te parszywe reklamy...ale dzidostwo zrobili...
yojo2  : (12 marzec 2012 - 13:26) wchodz na forum przez lynxa :P
Ferrari  : (10 marzec 2012 - 21:21) Jak tu nie korzystać z AdBlocka, kiedy Forum Eksperta wywala reklamę na całą stronę?
lisz55  : (09 marzec 2012 - 21:41) siedze i czytam calkiem niezle ale mogl by ktos wytlumaczyc o co chodzi z dark knightem nie widzialem tego filmu
lisz55  : (09 marzec 2012 - 21:40) to moze rozruszam troche czat http://moviesascode.net/
Pretender  : (06 marzec 2012 - 16:43) rozmowy tak jak Enty prowadziły w powieści Tolkiena :P
dawido90  : (05 marzec 2012 - 15:03) to już poprostu przyzwyczajenie
yojo2  : (04 marzec 2012 - 22:25) mailem przestac tu wchodzic, ale stwierdzilem ze skoro i tak zwykle tu tylko wchodze i wychodze, to wszystko jedno :P
Ferrari  : (04 marzec 2012 - 21:16) Już myślałem, że ruch na forum spada zera, a jednak pochodna zmieniła znak :)
Rozszerz pole shoutboxa