Van egy dátum tartalomtípusom. A soron következő hat eseményt kiíratom egy nézettel. Szeretném elkerülni, hogy ha elfogynak az események, kiürüljön a helye. Úgy gondoltam megoldani, hogy ha a nézet nem ad eredményt, akkor helyére lép egy másik, ahol már nincs tartalom szerint szűrés, a legutolsó hat eseményt mutatja, noha azok már elmúltak.
De csak az első hatod tudom kilistázni, az utolsó hatot nem.
Az külön csavar, hogy a hat helyet akkor is kitölteném, ha még van öt, négy, három stb. jövőbeni dátum.
Kattintgatós honlapépítőként meg tudom ezt oldani? Bármi apró kis segítség nagyon jól jönne.
Erről az oldalról van szó (barátom, sporttársam oldala)
http://santimona.hu
Melyik modulhoz, modulokhoz kapcsolódik a téma?:
Drupal verzió:
Fórum:
Egyszerű rendezés?
Hogy ha már az elmúltságtól függetlenül mindenképpen hatot akarsz kilistázni, akkor az nem jó, hogy egyszerűen sorba rendezed őket? A rangsorolás iránya pedig mindegyik rendezésre kijelölt mező beállításinál módosítható.
Esetleg fel lehet tenni a Views PHP modult (bár ez már nagyrészt nem kattingatás) és PHP-val összerakni a nézet kimenetét vagy annak egy részét. Így pl. meg lehet csinálni, hogy a jövőbeli eseményekhez más css-osztályt adsz, mint a múltbeliekhez, így a megjelenítésnél az elmúlt események pl. szürke háttérrel lesznek láttathatók CSS segítségével.
A sorba rendezéssel akadtam
A sorba rendezéssel akadtam el. Amikor még van hat jövőbeli esemény, egyszerű a dolog. Szűrés dátumra, rendezés dátum szerint.
De az elmúlt események megtartása nem megy. Ha sorba rendezem, akkor így megint csak nem gond: dec. 2., november 11., november 2. stb.
De időrendben szeretném megjeleníteni. Erre nem jöttem rá, hogyan oldjam meg.
Tulajdonképpen nem ragaszkodom a 6 hoz, csak a két oszlophoz., s az is csak esztétikai okokból. Ha mondjuk már csak három van, akkor egy vagy duplaszéles, vagy üres hely marad. Esetleg lehet egy „kamu” kitöltő esemény.
„Kattintgatós amatőr”
Szűrés nélkül?
Rossz szokásom, hogy néha elsiklom triviális dolgok felett, így simán lehet, hogy most is ez a helyzet. Szerintem a megoldás annyi lenne, hogy csökkenő sorba rendezed az eseményeket az esemény dátuma szerint és nem szűrsz semmire, végül kiválasztod, hogy az első hatot akarod látni. Rosszul látom?
Így fordított sorrendben
Így fordított sorrendben jelenik meg.
„Kattintgatós amatőr”
beküldés dátuma
Szia,
ne az esemény dátuma szerint rendezd, hanem a beküldés dátuma szerint. a listában meg csak 6ot engedsz megjeleníteni. Ha valamiért egy esemény A legutóbbi előtt kéne megjelenítened, akkor ott a node-nál a beküldés dátumát ahhoz igazítod, hogy beleférj a 6os fogatba
Ez sem ad jó eredményt. A
Ez sem ad jó eredményt. A beküldés dátuma nem jelent semmit. Teljesen össze-vissza kerülnek be a programba, ahogy eszébe jut az egyesület vezetőjének. Én meg szeretném elengedni az oldalt, nem szerkesztgetni.
Köszönöm a segítséget, de szerintem feladom.
„Kattintgatós amatőr”
még egyszer elolvastam a
még egyszer elolvastam a kérésed és szerintem a két nézettel kavarod magad össze. Ez egy sima dátum szerinti listázás. Ez a dátum az események dátuma amit csökkenő sorban kell megjeleníteni. A megjelenítendő elemek számát pedig 6ra korlátozod. Így teljesen mind1, hogy 6db jövőbeni, vagy 6 db múltbéli esemény van, de még a vegyes (múlt/jövő) sem zavarhat be a képbe. Ennek egy "hátránya" lehet, ha egy olyan esemény kerül rögzítésre ami a megjelenő 6 dátum előtti. Ez ugye már a 7dik lenne. De egy másik oldalon ahol szintén e dátum alapján van rendezve - és nincs darabszám korlát - pedig megjelenik ez is.
szerk:
mit értesz időrend alatt? szerintem rossz dátum mezőre szűrsz, ha akad belőle több is az adatbázisban érdemes alaposan lecheckolni. egy jó tipp - itt tanultam én is - hogy a sajátmezők elnevezésénél a field_ után először a tartalomtípust jelöllöm és egységesen, abban a típusban minden saját mezőt így kezdek elnevezni: field_tartalomtipus_majdidejonamezoneve
A szűrt mező field
A szűrt mező field_turaidopont, ezt csak a program tartalomtípusnál használom. A csökkenő sorrend esetén a legtávolabbi dátum lenne a legelső.
Dátumokat itt sorszámmal helyettesítem.
Van 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12.
Ebből szeretném megjeleníteni a 7-12. dátumokat így: 7., 8., 9. stb.
Ez az ami nem megy. A 12., 11., 10. semmi gondot nem jelent, csak nem az acél.
„Kattintgatós amatőr”
Csak megértettem végre...
Nekem is volt egy hasonló felvetésem néhány napja. Tehát arra van szükség, hogy a sorbarendezés (és a megjelenített elemszám) hatására megjelenő elemeket nem a sorbarendezés szerinti sorrendben (nálam véletlenszerűen, nálad megfordított dátummal) kell megmutatni. Erre konkrét modult nem találtam, csak olyat, amivel kézzel lehet átrendezni a sorrendet.
akkor félreértettelek,
akkor félreértettelek, bocsánat!
érdekes feladat, még agyalok rajta
Ezt kattintgatva tuti nem..
Ezt kattintgatva tuti nem..
Ez amolyan kveri kell ahhoz, hogy kveri legyen a kveriben.
A hook_views_query_alter-re kell ráülni, ahol meg kell vizsgálni minden feltételt, amit szeretnél. Le kell kérdezni, hogy hány rekord van az egész eredményhalmazban. Ha ez megvan, akkor a $query range értékét kell átállítani úgy, hogy a $hányrekordvan-ból kivonod az $ennyitakaroklátni értéket. Vagy valami ilyesmi.. Nem gyenge..
----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.
mához képest következő hat meg előző hat?
mához képest meg lehet szerintem csinálni két nézettel. csak kell mindegyikbe egy filter is a dátumra nem csak rendezés. egyikben a dátum filter nagyobb vagy egynlő mint NOW(), másikban meg kisebb. mindegyik hat elemet mutat. egyik dátum szerint növekvőbe rendez, másik csökkenőbe.
vagy nem értem a kérdést, egy hatos lista kell, ami hat következőt mutatja, de ha nincs annyi akkor amennyi hiányzik annyi elmúltat is? tehát ha 4 következő van, becsap a végére 2 elmúltat? vagy hogy működne ez?
-
clear: both;
…egy hatos lista kell, ami
…egy hatos lista kell, ami hat következőt mutatja, de ha nincs annyi akkor amennyi hiányzik annyi elmúltat is? tehát ha 4 következő van, becsap a végére 2 elmúltat?…
Igen, ezt szerettem volna összehozni. Nagyon köszönöm, hogy ennyit foglalkoztatok ezzel. Az a baj, hogy egyfelől van bennem egy igényesség (ha ez az), de a tudás hiányzik mellőle.
„Kattintgatós amatőr”
valami ilyesmire gondoltam
valami ilyesmire gondoltam mint aboros, próbálni nem próbáltam, de ha csinálsz egy today+365 rejtett mezőt (ezt nem csináltam még így nem tudom megoldható-e), akkor ez alapján kell csökkenőbe szűrni és csak 6ot. így nem számít, hogy mind a 6 túl van e a "mai napon". Aztán ezt a nézetet kilistázod egy másikban ahol megfordítod a sorrendet.