Views - Contextual filters pokročilá úprava

Zdravím,

potřeboval bych poradit. Vytvářím view, ve kterém nastavuji dynamické URL (dříve argumenty). V nastavení filtru ‚Specify validation criteria‘ nastavím ‚Validator‘ na Content – tedy chci view měnit na základě konkrétního typu obsahu. Avšak v nastavení ‚Filter value format‘ je pouze Node ID, tedy že lze zadat do URL ID nodu. Kdežto v případě taxonomy lze zvolit Term name converted to Term ID. Jestliže tedy zapíšu textově term, vezme ho to a view pracuje s ID. Tohoto bych chtěl dosáhnout i u content možnosti, jelikož term pro mě není v tomto případě vhodný.

Děkuji za jakoukoli pomoc Martin

Profile picture for user Jan Polzer

Jestli chápu, potřebujete, aby to reagovalo jak na node/26, tak na textova-url-jako-alias. To by ale neměl být problém, jen tomu dejte jako výchozí poskytnutou hodnotu ID nodu a Views by si to mělo přebrat.

návštěvník

Bohužel nepřebere. Používám modul reference (dříve node_reference) a chci aby URL byla podle článku, který je v tomto poli. Pokud zadám ID, není problém, ale URL to nebere.

Martin

Profile picture for user Jan Polzer

Já mám v contextual filters ID uzlu a funguje opravdu bez problémů. Nebo se bavíme o něčem jiném?

Drupal a kontextové filtry

návštěvník

Nejsem velký znalec views, ale myslím, že tímto toho co chci nedosáhnu.

Potřebuju vytvořit node hru: pc/nazev-hry

Pak mám další typy obsahu jako novinka, recenze atd kde v každém typu obsahu je node_reference na hru, které se to týká.

A chci udělat view ke každé hře, kde se vypíší novinky, recenze atd:  pc/nazev-hry/clanky   pc/nazev-hry/recenze 

Kde ten nazev-hry je ten node_reference. Používal jsem k tomu sekci Specifi validation criteria (viz obr. http://img835.imageshack.us/img835/8571/ukazkal.jpg )

Dělám to špatně? Pokud totiž zadám do url např.   pc/5/clanky  tak to vypíše všechny články ke hře s NID==5 ale pokud zadám do URL alias, pc/nazev-hry/clanky tak si s tím view neporadí :-(

Profile picture for user Jan Polzer

Aha, už rozumím. To, co mám já, je blok na stránce, nikoli nová stránka s proměnnou adresou. To bohužel netuším, jak udělat. Každopádně bych řekl, že když to funguje s číslem uzlu, mělo by to fungovat i s aliasem. Možná to ve Views pro Drupal 7 zatím ladí, ještě to není finální verze.

návštěvník

Děkuji za rady. A mohl bych se zeptat, jak vyřešit problém který popisuji v # 7385 ... tedy alias ve stylu [term:name] / [node:title]

návštěvník

mohu ještě otevřít tuto starou záležitost? potřebuji zobrazit blok s jedním fieldem vždy jen spolu s článkem, ke kterému patří, bohužel se mi přes contextual filter nedaří toto nastavit - napojil jsem jej na title článku, ale ten se samozřejmě v path nakonec neobjeví a proto nefunguje,,
nebo je možné aby contextual filter vypsal blok podle nadpisu článku (nebo jiného pole na stránce) a ne podle co je v path?

Profile picture for user Jan Polzer

Myslím, že byste to měl napojit na NID článku. Bez ohledu na to, jaká je adresa URl článku díky aliasu, tak Drupal pochopí, že třeba článek na adrese /muj-skvely-clanek, je ve skutečnosti na adrese /node/27, pokud je NID článku 27.

návštěvník

teprve dnes jsem se dostal k tomu to vyzkouset a po delsim trapeni to rozchodil - moc diky a nejen za tuto odpoved
(dnes jsem mel asi lepsi den, protoze toto nastaveni uz jsem zkousel i drive bez uspechu - zrejme jsem mel neco nekde spatne zatrzene - tohle mne alespon donutilo to zkusit jeste jednou)

návštěvník

V případě, že na to nepřijdu, mám záložní plán. Místo node_reference použít taxonomy term (jelikož v D7 je to víceméně jedno ohledně fieldů), tím by se problém vyřešil, jelikož tam možnost "NID from URL" je. Avšak mám zase problém s vytvářením URL aliasů pro články ( [term:name] / [node:title] ). V D6 to šlo vpohodě, ale v D7 nejde kombinovat pattern pro content a term. Není alespoň nějaké řešení pro toto?

návštěvník

Díky za tip. To jsem přesně potřeboval.

Ještě 2 menší dotazy:

Bude pro Drupal velká zátěž pokud budu mít tisíce termů? Myslím, že ne, ale chci slyšet i další názor?

Pro redaktory bych chtěl u výběru termů (select list) zobrazovat select podle abecedy, lze to nějak vyřešit?

Děkuji

Profile picture for user Jan Polzer

No, pokud pojede na dobrým železe, nemělo by to vadit. Samozřejmě, že pokud budete mít tisíce termů a teď je budete chtít zobrazit v nějaké rozbalovačce, tak už se to projeví. Musel byste použít autocomplete políčko.

SELECT by měl standardně být podle abecedy, ne? Případně můžete termíny seřadit dle abecedy kliknutím na odkaz ve správě kategorie.

Odpovědět

Obsah tohoto pole je soukromý a nebude veřejně zobrazen.

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru