PDA

Zobacz pełną wersję : PhocaGallery - Sortowanie po najlepszych zdjęciach?



SimonK
30-12-2009, 13:59
Czy mozna w Phoca Gallery posortowac widok kategorii po najlepszych zdjeciach? Zdjecia byly oceniane i chce zobaczyc widok najlepszych.
Niestety w adminie nie widze mozliwosci sortowania po ocenach.

W panelu admina moge zdjecia posortowac po kolumnie ocen, ale chce to miec w widoku dostepnym do wszystkich na stronie.
Ewentualnie w statystykach, ale tam tez nie widze mozliwosci wyswietlenia najlepszych zdjec...

Ktos sobie z tym poradzil?

Jola
02-01-2010, 01:51
Witam,
chcesz sortować najlepsze zdjęcia w danej kategorii, czy kategorie wg ocen?

SimonK
02-01-2010, 12:55
Mam tylko jedna kategorie, a w niej zdjecia z ocenami.
Chce je tam posortowac wedlug tych wlasnie ocen.

Jola
02-01-2010, 16:19
Plik components/com_phocagallery/models/category.php linia 92 jest

$query = 'SELECT a.*' .
' FROM #__phocagallery AS a' .
' WHERE a.catid = '.(int) $this->_id.
$published .
' ORDER BY a.'.$imageOrdering;zamienić na

$query = 'SELECT a.*, v.average' .
' FROM #__phocagallery AS a' .
' LEFT JOIN #__phocagallery_img_votes_statistics AS v ON a.id=v.imgid' .
' WHERE a.catid = '.(int) $this->_id.
$published .
' ORDER BY v.average DESC';

makol
28-03-2010, 18:28
Witam! Zmieniłem ten fragment kodu, ale coś jest nie tak. Sortowanie rzeczywiście się zmieniło, ale pierwszym jest obraz ocena/głosy 5/3, drugi to samo, a 5/7 jest gdzieś w tyle, bo przed nim jest jeszcze 5/2 i 5/1

Jola
28-03-2010, 19:08
Bo zamawiane były lody z polewą a nie lody z polewą i wafelkiem. :)
O ilości odsłon nikt nie wspominał.

makol
29-03-2010, 18:12
Jolka, a da radę pomyśleć nad wafelkiem :zagubiony:

Jola
29-03-2010, 20:49
Da radę! :)

$query = 'SELECT a.*, v.average, v.count' .
' FROM #__phocagallery AS a' .
' LEFT JOIN #__phocagallery_img_votes_statistics AS v ON a.id=v.imgid' .
' WHERE a.catid = '.(int) $this->_id.
$published .
' ORDER BY v.average DESC, v.count DESC';

makol
29-03-2010, 21:11
Wafelek pyszny! :)
Ty to się znasz na pieczeniu!

A gdyby jeszcze jeden sposób sortowania? Teraz pierwszy jest z najwyższą średnią. A można by sortować po ilości zdobytych punktów? Bo widzę, że kartce, która miała 5/9 ktoś dał 2 gwiazdki i automatycznie spadła, mimo że punktów ma teraz 47

Jola
29-03-2010, 22:26
Jest takie powiedzenie o palcu i ręce...

$query = 'SELECT a.*, v.average, v.count, (select sum(rating) from #__phocagallery_img_votes where imgid = v.imgid) as suma ' .
' FROM #__phocagallery AS a' .
' LEFT JOIN #__phocagallery_img_votes_statistics AS v ON a.id=v.imgid' .
' WHERE a.catid = '.(int) $this->_id.
$published .
' ORDER BY suma DESC, v.average DESC, v.count DESC';

makol
29-03-2010, 22:59
To jest to! Kto dał konkurencji jedną gwiazdkę, obniżył co prawda średnią, ale jak by nie było dołożył punkcik. Zobaczymy jak teraz się sytuacja rozwinie. Jola, wielkie dzięki!