Egy társkereső oldalra kezdtem el a felhasználók kilistázását összerakni, de elakadtam, meg egy kicsit bele is bonyolódtam. A sok lehetséges megoldás közül nem nagyon találom az ide valót.
Az adatokat először a profil modulon keresztül lehetett megadni. Ebben azonban nem volt többszörösen választható lista, ezért inkább áttértem a cck használatára, létrehoztam egy "Profil" nevű tartalomtípust és hozzá vagy 30 cck mezőt.
Ahhoz, hogy a views-sal meg tudjam jeleníteni a felhasználó azonosítóját és avatárját, telepítettem a usernode-ot. Ez még abban is segített, hogy így a node_image modult is tudom használni képek feltöltésére.
Valamint a bio modult is telepítettem, hogy a felhasználók profil oldalán és a regisztrációkor is megjelenjenek a "Profil" cck mezői. Nem vagyok biztos abban, hogy szükség van ehhez a bio modulra, talán meg lehet oldani a smink kódolásával is?
A legfőbb problémám azonban az, hogy a views-sal szerettem volna egy szűrőkkel ellátott oldalon kilistázni a felhasználókat néhány fontos adatukkal együtt. (Név-linkkel a teljes profil oldalára, Lakhely, Életkor, Érdeklődés, stb.)
Az itt kilistázott felhasználókról csak 5 adat jelenne meg, majd amikor a nevére kattintunk, akkor a 30 adatot megjelenítő profil oldalra érkezünk.
A views-ban ezt nem tudtam elérni.
Elgondolásom szerint ezt a "List View"-ban lehetne megvalósítani, de azzal semmit sem ír ki a felhasználókról. Ha meg "Teaser List"-re vagy "Full nodes"-ra állítom, akkor kiírja az összes (30) adatot.
Kérlek segítsetek! Biztos egyszerű a megoldás, de mégsem találom!
$view = new stdClass(); $view->name = 'bios'; $view->description = ''; $view->access = array ( ); $view->view_args_php = ''; $view->page = TRUE; $view->page_title = ''; $view->page_header = ''; $view->page_header_format = '1'; $view->page_footer = ''; $view->page_footer_format = '1'; $view->page_empty = ''; $view->page_empty_format = '1'; $view->page_type = 'list'; $view->url = 'bios'; $view->use_pager = TRUE; $view->nodes_per_page = '15'; $view->sort = array ( ); $view->argument = array ( ); $view->field = array ( array ( 'tablename' => 'bio_usernode_users', 'field' => 'name', 'label' => '', 'handler' => 'usernode_views_handler_field_username_link', ), array ( 'tablename' => 'bio_usernode_users', 'field' => 'picture', 'label' => '', ), array ( 'tablename' => 'bio_node_data_field_nem', 'field' => 'field_nem_value', 'label' => 'Nem', 'handler' => 'content_views_field_handler_ungroup', 'options' => 'default', ), array ( 'tablename' => 'bio_node_data_field_lakohely', 'field' => 'field_lakohely_value', 'label' => 'Lakóhely', 'handler' => 'content_views_field_handler_ungroup', 'options' => 'default', ), ); $view->filter = array ( array ( 'tablename' => 'node', 'field' => 'type', 'operator' => 'OR', 'options' => '', 'value' => array ( 0 => 'profil', ), ), ); $view->exposed_filter = array ( ); $view->requires = array(bio_usernode_users, bio_node_data_field_nem, bio_node_data_field_lakohely, node); $views[$view->name] = $view;
views nem tud user-t csak node-ot
Keress rá itt a fórumon, többen csináltak már társkeresőt Drupal-lal....
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
User adatok és cck megjelenítése views-ban
Köszönöm István, a usernode-ot pont ezért telepítettem. Inkább a user azonosítóját és avatárját nem tudtam egyszerre megjeleníteni a "Profil" tartalom típus adataival.
A társkereső szóra valóban nem kerestem rá, csak a "node, profil, cck, views" -t nézegettem - pedig evidens lett volna! : )
Most viszont hogy végignéztem azt a 6 linket amit kidobott, sajnos nem volt bennük semmi érdemleges.
Közben szerencsére itt megtaláltam a megoldást! Ha valaki hasonló gonddal járna erre, így jött össze:
- A userek adatait egy külön erre létrehozott tartalom típushoz (Profil) hozzáadott cck mezőknél lehet bevinni.
- a Bio modul beállításaiban ezt a Profil tartalom típust választottam ki a Bio "hordozójának". A többi beállítás a cikkben leírtak szerint.
- Létrehoztam két nézetet: az egyikben a usernode adatokat (azonosító, avatár kép) listáztam ki, a másikban pedig a "Profil" tartalom típusom cck tartalmait. Így mindkettőt meg tudtam jeleníteni List View-ban.
- A Profil-t listázó nézetbe tettem a szűrőket, amelyek viszont nem a cck értékekre keresnek, hanem a Bio modul által ezekből generált értékekre!
- Felfedtem azon szűrőket, amelyiket láttatni akartam.
- Node family-vel a usernode alá rendeltem a Profil tartalom típust (parent - child).
- a Views fusion-ben pedig a usernode-os nézethez hozzárendeltem a cck-kat megjelenítő Profil nézetet (parent - child).
Ha érthetően írtam le, akkor a Profil-t listázó nézetre kattintva egyben jelenik meg amit összeraktunk. : )
Ezen modulokat használtam: Cck, Views, Bio, Node family, Usernode, Views fusion.
én rájuk gondoltam
thamas leírása(nem társkereső, de hasonló probléma):
http://drupal.hu/tippek/felhasznaloiinformaciok
Adrienn itt kattintgatott össze egy komplett társkeresőt:
http://drupal.hu/user/3059/track
Ha van ídőd picit kiegészíteni a leírásod, esetleg képekkel akkor betehetnénk a kézikönyvbe ;)
pp
Palócz István
https://palocz.hu | https://tanarurkerem.hu
Megjelenítés
Köszönöm István, szívesen összeállítom!
Lenne még egy gondom:
Miután elkészült a felhasználókat kilistázó oldal:
http://gyongytars.hu/tarskereso
találtam egy olyat, ahol így jelenik meg a lista:
http://spirituality.meetup.com/51/members/
Ez utóbbi elrendezés nekem jobban tetszene, hogyan lehetne ezt megvalósítani?
Gondolom a legegyszerűbb sminkkeléssel lenne, de én próbálgattam views-sal is, de az nem jött össze.
Arra gondoltam, hogy ha a Profil nézetét meghagyom List view-ba, a usernode nézetet meg átállítom Table viewba, akkor a fusionnel összekapcsolt nézetek megjelenéskor végülis table-ben jelennek meg és annak sorain belül a Profil adatai meg List view-ban.
De nem így történt. A table view sorain belül a Profil adatai is külön oszlopokban jelentek meg, így elvesztették a korábbi egymás alá rendezettségüket.
Vajon megoldható ez egyáltalán viewssal, vagy egyszerűbb a sminkeléssel beigazítani?
lasabban..:)
Szia
Ugyanez a problémám, ami neked volt. Eljutottam odáig hogy létrehoztam a mezőket amiket regisztrációkor pluszba kitöltenek a látogatók.
Ezekre tettem szűrőt (a kezdőlapon) ami tök jó, de amikor listáz akkor azt a rengeteg mezőt listázza. Elég lenne 3-4 fontosabb amit szűrés után listáz, de sajnos nem értettem meg azt amit leírtál. Még nem vagyok nagy drupal zseni, így amikor kulcsszavakban beszélgettek akkor nem tudom felvenni a lépést:)
Segítene nekem valaki 5-ös drupal alá megoldani ezt a kérdést?
Köszi szépen!
Zoli
a tartalom típusnál
Az adott tartalom típusnál ha rámész arra, hogy "Display fields" (gondolom magyarul "Mezők megjelenítése", vagy ilyesmi), akkor tudod állítgatni, hogy Előnézet és Full nézet esetén melyik mezők látsszanak, és hogy a mező felirata hol helyezkedjen el.
Vagy hát ugyebár a views modulban lista és táblázatos nézetnél megadhatod, hogy milyen mezők szerepeljenek.
--
Csonka Gergely
http://cheppers.com
re:a tartalom típusnál
Szia
Köszönöm szépen, ezt én is észrevettem volna:)))
Sajnos nem működik 100%-osan nem tudom talán a group-ok zavarják be, de valami anomália van benne, mert firefoxban is más meg explorerben is...
De sokkal közelebb kerültem a megoldáshoz, úgyhogy nagyon szépen köszönöm!!
Zoli
Esetleg a Views 2 tud
Esetleg a Views 2 tud felhasználókat és kommenteket is listázni - de csak D6ra van és az is beta 3 állapot.
Lippai Ádám
young element
Én egy ilyet csináltam egy
Én egy ilyet csináltam egy modul-ban, bár ez eléggé specifikus, mert csak egy bizonyos csoport tagjait (rid) listázza ki, ráadásul az sql sem a legszebb.
Ha kellenek további mezők akkor a user táblával lehet kibővíteni a lekérdezést.
Egy kicsit utána nézve ezt
Egy kicsit utána nézve ezt találtam:
http://drupal.org/node/129957
Talán segít... Nekem is :)