logo

Լրացուցիչ Բլոկների Տեսակներ (EBT) - Դասավորության Կառուցողի նոր փորձառություն❗

Լրացուցիչ Բլոկների Տեսակներ (EBT) - ձևավորված, կարգավորելի բլոկների տեսակներ՝ սլայդշոուներ, ներդիրներ, քարտեր, բացվող ցանկեր և շատ ուրիշներ։ Ներառված կարգավորումներ՝ ֆոնի, DOM տուփի, JavaScript փլագինների համար։ Փորձեք դասավորությունների կառուցման ապագան արդեն այսօր։

EBT մոդուլների ցուցադրական տարբերակներ Ներբեռնել EBT մոդուլները

❗Լրացուցիչ Պարբերությունների Տեսակներ (EPT) - Պարբերությունների նոր փորձառություն

Լրացուցիչ պարբերության տեսակներ (EPT) - անալոգիական պարբերության վրա հիմնված մոդուլների հավաքակազմ։

EPT մոդուլների ցուցադրական տարբերակներ Ներբեռնել EPT մոդուլները

Scroll

D7 կատալոգը, որտեղ տաքսոնոմիայի տերմինի սինոնիմը որպես արգումենտ է

22/02/2025, by Անանուն (չի ստուգվել)

Ես ունեմ այսպիսի հարց. 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-ի նախադիտման մեջ: