วิธีทำให้ taxonomy มีความหมายเหมือนกันทำงานได้ดีกับ Search API


20

คำพ้องความหมายของแท็กเป็นคุณสมบัติยอดนิยมที่สำคัญในหลาย ๆ ไซต์ (ใช้ที่นี่ใน StackExchange เป็นต้น) และคำพ้องความหมายทางอนุกรมวิธานที่ใช้เป็นส่วนหนึ่งของโมดูล Taxonomy หลักของ Drupal 6 ก่อนที่จะถูกทิ้งไว้ในระบบ โดยใช้สนาม API

เมื่อคำพ้องความหมายทำงานได้อย่างน่าเชื่อถือพวกมันมีประโยชน์อย่างมากในการค้นหา ตัวอย่างเช่นเพื่อให้แน่ใจว่าการค้นหา "อเมริกา" ค้นหาเนื้อหาที่ติดแท็ก "USA" เป็นต้นอย่างไรก็ตามฉันไม่พบโอกาสในการขายใด ๆ เกี่ยวกับวิธีมาตรฐานที่ใช้สำหรับการใช้งานคุณลักษณะนี้เมื่อทำงานกับAPI การค้นหายอดนิยม- Facet APIตระกูลของโมดูลการค้นหาแบบรวมที่เกี่ยวข้องสำหรับการค้นหาโหนด

"การดำเนินการอย่างต่อเนื่อง" เป็นสิ่งสำคัญเมื่อทำงานกับกลุ่มของโมดูลเช่นนี้เพื่อให้แน่ใจว่าระบบที่คุณใช้จะไม่ขัดต่อความคิดของชุมชนและผู้ดูแลโมดูล เมื่อพวกเขาไปกับเมล็ดพืชพวกเขามีความเสี่ยงและถูกทำลายโดยการเปลี่ยนแปลงโมดูลเหล่านี้ในอนาคต

วิธีการที่เชื่อถือได้ / มีประสิทธิภาพ / มาตรฐาน / คาดว่าจะใช้คำพ้องความหมายอนุกรมวิธานใน D7 สำหรับไซต์ที่ใช้ Search API คืออะไร (โดยเฉพาะกับSearch API Solrแต่ฉันหวังว่า Search API จะพยายามสรุปผู้ให้บริการการค้นหาเฉพาะจะทำงานได้ในกรณีนี้)

หากคุณมีระบบสำหรับสิ่งนี้ที่ดูเหมือนว่าจะใช้งานได้ แต่เป็นสิ่งที่คุณคิดออกมาและคุณไม่แน่ใจว่ามันเป็นหรือไม่ขัดต่อธัญพืช (เป็นเรื่องธรรมดาใน Drupal) โปรดแชร์กับข้อมูลจากคุณ การทดสอบการใช้งานและประสบการณ์เกี่ยวกับคุณสมบัติและโมดูลที่ใช้ในตระกูล Search API-Facet API และไม่สามารถทำงานได้ดี

บางตัวเลือกที่เป็นไปได้ แต่เป็นไปได้ที่ฉันพบในการวิจัย:

  • มีโมดูลการค้นหาคำพ้อง D7 แต่ดูเหมือนว่าจะใช้เพียงเล็กน้อยและไม่มีการยืนยันว่าจะใช้งานได้หรือจะทำงานต่อกับโมดูลการค้นหาของบุคคลที่สามเช่น Search API (ซึ่งได้รับการออกแบบโดยคำนึงถึงการค้นหาหลักของ Drupal) แก้ไข: ยังไม่ได้ดูมีความน่าเชื่อถือมากเกินไปใน D7 ทั่วไป
  • มีความเป็นไปได้ในทางทฤษฎีในการเพิ่มเขตข้อมูลอ้างอิงคำที่เรียกว่า "คำพ้องความหมาย" ในคำศัพท์อนุกรมวิธานและจัดทำดัชนีฟิลด์นี้จากคำใน Search API ที่มีน้ำหนักเท่ากันกับคำบนโหนดเอง สิ่งนี้จะใช้งานได้สำหรับการค้นหาข้อความ แต่ให้ความรู้สึกเหมือนวิธีการแก้ปัญหาท่อเทป MacGuyver-y แทนที่จะเป็นสิ่งที่แข็งแกร่งที่เชื่อมต่อกับตระกูล Search API ทั้งหมดได้อย่างราบรื่น ตัวอย่างเช่นหากคำว่า "สหราชอาณาจักร" มีคำพ้องความหมาย "สหราชอาณาจักร" ใครบางคนที่ค้นหาคำว่า 'สหราชอาณาจักร' จะได้รับผลการติดแท็กด้วย United Kindgom แต่มีคนพิมพ์ "สหราชอาณาจักร" ลงในตัวกรองอัตโนมัติของ Taxonomy จะไม่เห็นเนื้อหาใด ๆ ที่ติดแท็กด้วย "สหราชอาณาจักร" *****
  • ความเป็นไปได้ที่คล้ายคลึงกันอีกประการหนึ่งคือการเพิ่มฟิลด์ข้อความธรรมดาหลายค่า "คำพ้อง" ให้กับคำศัพท์ (หรือแม้กระทั่งคั่นด้วยเครื่องหมายจุลภาคฉันเดา) และจัดทำดัชนีด้วยน้ำหนักเดียวกันกับชื่อคำตามข้างต้น แต่สิ่งนี้มีปัญหาที่คล้ายกันหากไม่ได้แย่ไปกว่าในตัวอย่างข้างต้น "สหราชอาณาจักร" จะไม่ถูกระบุว่าเป็นตัวเลือกในตัวกรองแบบเหลี่ยม อาจมีวิธีในการสร้างเขตข้อมูลคอมโพสิตด้วยการรวมชื่อและคำพ้องความหมาย ("สหราชอาณาจักร (สหราชอาณาจักร, สหราชอาณาจักร)") และตั้งค่า facets / ตัวกรองที่เปิดเผย / ฯลฯ เพื่อใช้ ... แต่ฉันไม่สามารถคิดวิธีใด ๆ การทำเช่นนี้ไม่เป็นการแฮ็กที่น่าเป็นห่วงและไม่รู้สึกกังวลกับเมล็ดข้าว แก้ไข: ค้นหา API รวมดูเหมือนว่าจะได้รับการออกแบบมาสำหรับสิ่งนี้ แต่ฉัน '
  • จากนั้นมีตัวเลือกสุดท้ายของการบีบอัดทุกอย่างเป็นชื่อเทอม: มันควรจะชัดเจนว่ามันไม่เป็นที่พึงปรารถนาและในหลาย ๆ กรณีจะทำให้เป็นรายการที่น่าเกลียดมาก (เช่นลองนึกภาพรายการนำทางของประเทศที่เขียนไว้เช่น "นอร์ท" เกาหลี (PRK, DPRK, สาธารณรัฐประชาธิปไตยประชาชนเกาหลี) "... ) หรือมีฟิลด์ "ชื่อที่แสดง" ซึ่งแสดงเวอร์ชั่นย่อและการตั้งค่าทุกอย่างยกเว้นการค้นหา (มุมมองทั้งหมด, Pathauto, โมดูล contrib / core อื่น ๆ ที่ใช้ชื่อคำศัพท์) เพื่อใช้สิ่งนี้แทนชื่อคำ ... อีกครั้ง แฮ็คมากและต่อต้านเมล็ด
  • Apache Solr มีคุณสมบัติคำพ้องความหมายซึ่งมีการอ่านไฟล์ข้อความคำพ้องความหมายและคำเหล่านี้ถือเป็นคำพ้องความหมายในการค้นหาที่ใช้งาน อย่างไรก็ตามในขณะที่เป็นไปได้ในการตั้งค่าการค้นหา API ที่ใช้ Solr, นี้คือการพิจารณาโดยผู้ดูแลโมดูลที่จะได้รับการสนับสนุนความพยายามที่มีความเสี่ยงของตัวเอง 'การกำหนดค่าขั้นสูง นอกจากนี้ยังเหมาะสำหรับคำพ้องความหมายทั่วไปในภาษาของเว็บไซต์มากกว่าความหมายโดยเฉพาะในบริบทของอนุกรมวิธาน ตัวอย่างเช่นไซต์ที่มีอนุกรมวิธานที่ไม่แยกแยะอังกฤษสกอตแลนด์และอื่น ๆ จากสหราชอาณาจักรอาจต้องการพิจารณาความหมายเหมือนกันในบริบทของการติดแท็ก แต่ไม่ได้มีความหมายเหมือนกันในบริบทของการค้นหาข้อความเนื้อหา แก้ไข: ผู้ดูแล Headt API เตือนถึงเส้นทางนี้ เช่นเดียวกับโมดูลการรวม Solr ทำงานร่วมกับคำศัพท์เป็น TID ไม่ใช่ข้อความ

ฉันทราบว่านี่เป็นตัวอย่างที่มีข้อบกพร่องเพราะในกรณีของสหราชอาณาจักร / สหราชอาณาจักรและประเทศโดยทั่วไปผู้คนจะคุ้นเคยกับการใช้รายการที่มีเพียงรายการเดียวหรือหลายรายการ มีกรณีง่าย ๆ น้อย ๆ มากมาย (เช่นหมวดหมู่ผลิตภัณฑ์) ที่ผู้คนไม่คิดว่าจะค้นหาคำพ้องความหมาย

ปรับปรุง:ข้อมูลที่เกี่ยวข้องในหัวข้อใหม่ใน Drupal.org Facet API คิว นอกจากนี้ยังมี (ยังไม่ได้ตอบในปัจจุบัน) ด้ายใน Search คิว

(นักกฎหมายด้านกฎระเบียบใด ๆ ที่สงสัยว่าเป็นเรื่องที่ดีที่ drupal.org ร้องขอการสนับสนุนและ drupal ตอบคำถามในหัวข้อเดียวกัน: ใช่เป็นความจริงแล้วมันได้รับการสนับสนุนให้ลดแรงกดดันจากผู้ดูแลโมดูล )


1
คุณหาทางแก้ปัญหานี้ได้หรือไม่? ฉันมีปัญหาตรงนี้ในขณะนี้
vishal

คำตอบ:


2

ฉันใช้โมดูลคำพ้องความหมายที่ยอดเยี่ยมของ bojanz แล้ว มันเป็นฟังก์ชั่นการเขียนคำพ้องความหมาย D6 ที่สมบูรณ์พร้อมด้วยเสียงระฆังและนกหวีดใหม่ ดูเหมือนว่ามันจะทำสิ่งที่คุณต้องการมากที่สุด

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.