โดยเฉพาะฉันหมายถึงความสามารถในการแสดงผลการค้นหา 5 อันดับแรกเป็นตัวเลือกในเมนูแบบเลื่อนลงในขณะที่ผู้ใช้พิมพ์ข้อความค้นหาคล้ายกับการทำงานของการเติมข้อความอัตโนมัติที่อ้างอิงถึงโหนด มันจะเป็นการดีถ้ามีฟังก์ชันการทำงานเช่นนี้กับ Apachesolr
โดยเฉพาะฉันหมายถึงความสามารถในการแสดงผลการค้นหา 5 อันดับแรกเป็นตัวเลือกในเมนูแบบเลื่อนลงในขณะที่ผู้ใช้พิมพ์ข้อความค้นหาคล้ายกับการทำงานของการเติมข้อความอัตโนมัติที่อ้างอิงถึงโหนด มันจะเป็นการดีถ้ามีฟังก์ชันการทำงานเช่นนี้กับ Apachesolr
คำตอบ:
ขึ้นอยู่กับความต้องการของคุณ สิ่งที่ใกล้เคียงที่สุดกับฟีเจอร์ Live Search ของ Apple คือโมดูลFinder อย่างไรก็ตามไม่ได้รวมกับ Apache Solr ในขณะนี้
ฉันจะจับตาดูโมดูลInline Ajax Searchเนื่องจากการรวม Solr อยู่ในแผนงาน มันอาจต้องมีส่วนร่วมในการผลักดันการรวมผ่าน
วิธีที่สามที่ควรลองคือโมดูลApache Solr AJAX อาจไม่เหมาะกับสิ่งที่คุณพยายามทำ แต่จะช่วยให้สามารถรีเฟรชหน้าอินไลน์ได้เมื่อป้อนคำสืบค้นและเปิดใช้งานตัวกรอง
Acquia นำเสนอโซลูชันที่สร้างขึ้นบน Solr http://network.acquia.com/services/acquia-search
ฉันขอแนะนำให้ติดตั้งโมดูลhttp://drupal.org/project/apachesolr_autocompleteโมดูลนี้จะช่วยให้คุณเห็นคำแนะนำคำหลักของ Solr
ปัญหาต่อไปคือการแสดงโหนดในผลการค้นหาและไม่ใช่คำที่ค้นหามีตะขอที่เรียกว่าapachesolr_modify_query($query,'apachesolr_autocomplete');
ซึ่งจะช่วยให้คุณสามารถเขียนโมดูลที่กำหนดเองเพื่อสกัดกั้นแบบสอบถามในขณะที่มันไปที่ Solr และบอกให้ค้นหาโหนดและไม่แนะนำการค้นหา
ปัญหาที่เหลืออยู่ที่คุณมีอยู่นั้นลดลงไปจนถึงการค้นหาผลลัพธ์เพื่อให้ดูเหมือนกับการค้นหาปกติ
มีฟังก์ชั่นการใช้งานสองชุดอยู่แล้ว:
หวังว่านี่จะช่วยได้
ในตอนท้ายของวันที่คุณสามารถเขียนโมดูลทั้งหมดด้วยตัวเองโดยไม่ต้องเริ่มต้นด้วยโมดูลฐาน apachesolr_autocomplete แต่ฉันรู้สึกว่ามันใช้เวลามากในการยกของหนักออกจากคุณและจะพิจารณาเป็นพิเศษ