D7 կատալոգը, որտեղ տաքսոնոմիայի տերմինի սինոնիմը որպես արգումենտ է
Ես ունեմ այսպիսի հարց. Drupal Commerce-ով ապրանքների կատալոգ եմ ստեղծում, ինչպես օրինակ այս խանութում http://czech-cristal.ru. Այսինքն՝ ես ստեղծել եմ "Ապրանքների կատեգորիաներ" տաքսոնոմիայի բառարան, որտեղ նշված են անհրաժեշտ ապրանքների անունները, որտեղ "Pattern for all Категории товаров paths" ձևավորվում է որպես catalog/[term:name], և, իհարկե, բառարանի հիման վրա համապատասխան մենյու եմ ստեղծել, որը հղվում է Views-ին (ճանապարհ catalog/%) փոխանցելով արգումենտը.
Մुझे चाहिए कि लिंक именно так выглядят как catalog/[term:name], вот как на http://czech-cristal.ru.
Այժմ, ինչ խնդիրների հետ եմ հանդիպել, ես մտցրել եմ տաքսոնոմիայի տերմինները, մենյուն հայտնվեց catalog/obuv-timberland և catalog/novyy-termin հղումներով: Ստեղծեցի
Views url-ով catalog/%, կոնտեքստային ֆիլտր սահմանեցի "Բովանդակություն: Ունի տաքսոնոմիայի տերմինի նույնականացման համար (խորը)", ստուգման չափանիշում ընտրեցի PHP կոդ, և կոդում գրում եմ հետևյալը:
$url = drupal_lookup_path('source', "catalog/".$argument); if ($url != false) { // եթե ճանապարհը գտնվել է, ստուգում ենք, որ դա տաքսոնոմիայի տերմինի ճանապարհ է // $term_base_path = 'taxonomy/term/'; if (strncmp($term_base_path, $url, strlen($term_base_path)) == 0) { // կտրում ենք 'taxonomy/term/' նախածանցը, մնացած արժեքը փոխարկում ենք թվի // և փոխարինում ենք վյուզի արգումենտը ստացված ID-ով // $handler->argument = intval(str_replace($term_base_path, '', $url)); } } return TRUE;
Այժմ, հենց Views-ում ամեն բան ճիշտ է արտադրվում, ինչպես պետք է: Ցուցադրում է անհրաժեշտ ապրանքները ըստ տերմինի (սկրին 1): Իմ խնդիրը կայանում է նրանում, որ կայքում հասցեներով catalog/obuv-timberland և catalog/novyy-termin ցուցադրվում է ոչ թե այն, ինչ տեսնում եմ Views-ի նախադիտման մեջ, այլ հերթով նյութեր, որոնք կապված են տվյալ տաքսոնոմիայի տերմինների հետ (սկրին 2): Խնդրում եմ, ասեք, թե ինչպես անել, որպեսզի նաև կայքում ցուցադրվեն կատալոգի ապրանքները այնպես, ինչպես դա տեղի է ունենում Views-ի նախադիտման մեջ: