Plone kontentini cheklangan so'zlar to'plamidan belgilash va qidirish

Men muharrirlarim tarkibni bir nechta tikancha so'zlar tagiga kiritishni va keyinchalik foydalanuvchilarning ushbu so'zlarga asoslangan kontentni izlashga imkon beradigan yaxshi qidiruv interfeysiga ega bo'lishiga ruxsat berishni xohlayman. Eritmaning ko'p qismlari mavjud bo'lib tuyuladi

  • ATVocabularyManager - tahrirlovchilar turli so'zlarni yaratishga imkon beradi.
  • eea.facetednavigation - tahrirlovchilar ATVocabularyManger vocabslarini qidirish paneliga ulashga imkon beradi.

Muayyan kontent turlarini katagorisation tabiga yangi maydonlarni qo'shish usulini yo'qotib qo'ydi va ularni so'zlar bilan cheklash kerak. va bu qiymatlarni saqlab qo'yish va indekslash mumkin, ular izlash mumkin.

Buni kodda qilishim mumkinligini bilaman, lekin men TTWga umid qilaman, shuning uchun muharrirlar xohlashlarini tasniflashning qo'shimcha usullarini qo'shishlari mumkin. Men bu masalani hal qilish uchun u yerda plagin bo'lishi kerakligiga ishonchim komil, lekin hozircha buni topa olmadi. Qobiliyatli sxema muharriri bu muammoni hal qiladiganiga aminman, lekin buning uchun mavjud Plone kontentlari uchun kerak.

Juda qiziq

4

2 javoblar

Siz nima qila olaman deb o'ylayman, faqat sizning tarkib muharrirlari tarkibni muntazam etiketlash mexanizmi bilan yoritib, o'zlari xohlagan narsalar bilan belgilashlari mumkin. Keyin, eea.facetednavigation bilan siz tomoningizdagi navigatsiyani amalga oshirishni istagan turli xil teglar guruhlarini belgilaysiz.

Agar kontent tahrirlovchisiga teglarni qo'shish uchun qo'shimcha tuzilish kerak bo'lsa, ehtimol ularni tanlash uchun teglar to'plamini tuzadigan maxsus vidjetni taklif qilaman.

Ushbu muammoni hal qilish uchun sizga kerakli paketlarni kiritish mumkin:

ATVocabularyManager mavjud kontent turlari bo'yicha yangi maydonlarga so'z birikmalarini dinamik ravishda qo'shish uchun emas, maxsus kontent turlarini va ehtimol skriptlar maydonlarini so'zlash menejeri uchun.

4
qo'shib qo'ydi
Shuningdek, eea.facetednavigation saytiga o'zingizning vidjetlarini kiritish osonroq ekanligiga ishonaman. Ehtimol siz o'zingiz o'ylayotgan narsalarni bajarishga imkon beradigan vidjetni qaytarishingiz mumkin. Bilaman, bunday mahsulotni qo'shimcha katalog orqali amalga oshirgan, ammo uning nomini unutgan mahsulot bor edi.
qo'shib qo'ydi muallif vangheem, manba
Darhaqiqat, bugungi kundalik tegizgichni mexanizmdan foydalanib, konventsiyadan foydalanish mumkin. Misol uchun, hayvonlar kabi teglar: Mamal: Badger rangi: Qizil va hk. Ammo keyinchalik eea.facetednavigation ilovasida foydalanuvchilarga ikkita alohida tomon/panel sifatida Hayvonlarni ko'rsatish uchun *: * va Rang: *. Men hali buni topmadim. Boshqa havolalar uchun tashakkur. Men hali ham ularni ko'rib chiqyapman, ammo hozirgi kunga qadar bu muammolarni yaxshi hal qila olmayman.
qo'shib qo'ydi muallif djay, manba
Menimcha kollektiv.gtags kabi bir narsa bo'lsa, standart kalit so'z vidjetini o'rniga qo'yish kerak deb o'ylayman - bu har bir kategoriya uchun plone so'zlarni yaratdi, ular facetednavigation ichida ishlatilishi mumkin edi. O'shanda, bu deyarli mukammal bir yechim
qo'shib qo'ydi muallif djay, manba
So'zga chiqqandan keyin FacetedNavigation dan foydalanish oson. Men eng oson narsa, masalan, rang-qizil, hayvon-baliq va hokazo. Taglar kabi so'zlar bilan so'zlashuvni so'zga chiqara oladigan narsalarni olishning eng oson yo'li. Buning uchun ikkita Vokabul rangi va hayvonga aylantiriladi.
qo'shib qo'ydi muallif djay, manba

Bu muammoni hal qilish uchun men qurmoqchiman, chunki taklif qilingan echimlarning hech biri hozircha butun muammolarni hal qiladi.

Buni kollektiv deb ataylik.tagvocabularies (?)

Maqsad, Mavjud bo'lgan Plitalar tarkibiga mavjud bo'lgan Plone kontentiga bir nechta turli xil kalit so'zlarni kiritish imkonini beradi va kontentni bir nechta turli jihatlarga ajratish kabi tarkibni namoyish qilish uchun FacetedNavigation kabi plaginlarni ishlatishi mumkin. Bu, Plone-da Kalit so'zlar indeksining noyob qiymatlari asosida dinamik tarzda ko'plab turli xil so'zli so'zlar bilan ta'minlaydi.

Bu oddiy ifoda kiritishingiz mumkin bo'lgan boshqaruv panelini taqdim etadi. Bu qayta ishlatiladigan barcha kalit so'zlardan foydalaniladi. Misol uchun, agar barcha teglar Hayvon-baliq shaklida bo'lsa, Rang-Moviy sizga qaytadi

(?P[^\S]*)-(?P[^\S]*)

"Rang" va "Hayvon" so'z birikmalariga o'rnatilgandan so'ng eea.facetednavigation, jumladan, har qanday joyda foydalanish mumkin. Kontentga qo'shilgan har qanday yangi teg avtomatik tarzda so'zlashuvlar uchun mavjud bo'ladi (keshlash kerak bo'lishi mumkin).

2
qo'shib qo'ydi