Hello!
Ismét a segítségeteket szeretném kérni. Egy letöltő oldalt kellene csinálnom Drupalban.
Nem kell bonyolult dologra gondolni, annyi lenne a lényeg, hogy:
- Egy node-ra fel tudjak pakolni 8-10 file-t (dokumentumok, videók), amit le lehet tölteni
- Tudjak mind mellé írni egy rövid szöveget, hogy mi is az az adott file
- Lehessen hozzá tenni egy ikont
Illetve az alábbi adatokat jelezze ki minden file-hoz:
- File név
- Típus
- Méret
- Feltöltés dátuma
Sajnos a sima upload eléggé szűkszavú. Mivel egy meglévő natív PHP oldalt dolgozok át Drupalra, szeretném ahhoz hasonlóan megcsinálni a file letöltést is, de a sima csatolt fájlok nem emelkednek ki, ezért kellenének a fenti elemek.
Mit javasoltok hozzá?
Előre is köszi,
Moha
Fórum:
filefield
Filefield? Alapból az is "szűkszavú", de tartozik hozzá leírás, és sminkből előhozhatod a föltöltés dátumát is, ikont is stb.
Esetleg tudsz ehhez linkelni
Esetleg tudsz ehhez linkelni egy tutorialt vagy hasonlót? Mármint: feltettem a Filefield modult, működik is, de ez is csak bepakolja egymás alá a fájlokat. Gondolom, sminkből lehetne rendezgetni, de nem tudom, hogyan.
nagy vonalakban
Leszeded a devel modult, bekapcsolod. Ekkor node megtekintésekor látni fogod a Devel fült, azon belül Dev render az érdekes. Ott látod majd az összes változót amit el tudsz érni, amit használni tudsz a template file-ban.
Csinálsz egy node-TIPUS.tpl.php-t a sminkedbe (sima node.tpl.php is legyen ott), és bele tudod irkálni a filefield tartalmát tetszés szerint, pl:
print $field_feltoltott[0]['timestamp']
- beküldési idő - stb., így eléred az összes metaadatot amire szükséged van.elegánsan
azért van a csodálatos sminkréteg és benne a sok csodálatos sminkfüggvény, hogy használjuk azokat. addig sztár, hogy hozzáadsz a tartalom típusodhoz egy filefield típusú mezőt. korlátlan értékűre állítod, engeded, hogy meg lehessen adni 'description' -t is az egyes elemekhez.
aztán fogod a sminked template.php -ját (ha nincs benne ilyen létrehozod) és szépen beleraksz valami ilyesmit. (sminkedneve_preprocess_node néven kell megvalósítanod. az én sminkemet playground -nak hívják, a példában a filefield mező neve myfield (tehát field_myfield))
és akkor így:
a meződet a tartalom típusod szerkesztésénél a display fields fülön állítsad 'exclude' -ra, hogy ne kettőződjön a megjelenítés.
ha valami nem világos miért pont úgy, kérdezz bátran. az elv ez, innen a fantáziádra bízom, hogy finomhangoljad, lehet variálni a végtelenségig.
-
clear: both;