Предполагам, че в крайна сметка ще получите списък с публикации, които имат две отделни измерения за класиране, т.е.:
{ age: 86400, distance: 1000 }
{ age: 172800, distance: 5000 }
{ age: 57600, distance: 20000 }
{ age: 288000, distance: 8000 }
Всъщност няма значение какви са мерните единици, да кажем секунди и метри. Ако искате и двете да повлияят на ранга на сортиране, тогава ще получите алгоритъм за класиране, най-просто нещо като това:
rank = (C1 * age) + (C2 * distance)
Където C1 и C2 са константи, които можете да променяте, за да настроите претеглянията. Стойностите ще зависят от това какви единици използвате и колко влияние за класиране присвоявате на всяко измерение.
Друга опция може да бъде подреждане първо по съвкупно време, след това по разстояние, така че всички публикации от днес да бъдат подредени по разстояние; следван от вчерашния, подреден по разстояние и т.н. Или обратното, подреждане по диапазон на разстояние, след това възраст, така че всички в рамките на (0 - 1000 м) подредени по възраст; последвано от всички в рамките (1001 - 2000 м) и т.н.