Score:1

Is there a way to default sort by date when no search keywords have been used, but default sort by relevance for all searches?

ธง pe

At present, my project has default search pages for sections of the site. They are per-content type. When the user goes the "search page" for the content type, they see a views-generated search result page unfiltered by any keywords. In other words, it displays all the items for that content type. The view:

has expose form in a block enabled settings on the exposed form has 'input required' disabled

What I want to happen...

I'd like users to

  • see the unfiltered search result page sorted by newest first. At present, this page, if set to relevance, shows old content first.
  • automatically switch to relevance sorting when they enter keywords and execute a search. At present, I've set the first sort to date, to solve the 'old content first' problem, so users have to manually change the sort to relevance when doing a search.

Some options... I could separate the list pages from the search result pages. My question is, is there a way to make an unfiltered "search result" views page show the newest content first, while having the default sort actually set to relevance, so nobody has to manually change it? How does that sort really work when there aren't any keywords to supply "relevance"?

My config basics...

  • Drupal 9.3.7
  • search_api
  • facets
  • search_api_solr
Score:0
ธง pe

ฉันคิดว่าฉันมีทางออกเดียว ฉันยังคงสนใจที่จะรู้ว่ามีวิธีที่ดีกว่านี้หรือไม่ นี่คือสิ่งที่ดูเหมือนว่าจะใช้งานได้:

ในส่วนการจัดเรียงของมุมมอง ฉันมีช่องเหล่านี้ตามลำดับนี้:

  • ความเกี่ยวข้อง (มากไปน้อย): เปิดเผย
  • ฟิลด์วันที่ (จากมากไปน้อย): เปิดเผย
  • ช่องวันที่ (ช่องเดียวกัน, จากมากไปน้อย): ไม่เปิดเผย

หลังจากล้างแคช (สำคัญ) ผลลัพธ์ดูเหมือนว่าการนำทางไปยังหน้าผลการค้นหาโดยไม่ทำการค้นหา แสดงรายการเนื้อหาทั้งหมด (ตามที่กรองแล้ว) ตาม 'ฟิลด์วันที่' จากมากไปน้อย แต่แบบฟอร์มการค้นหาและการเรียงลำดับที่เปิดเผยจะระบุความเกี่ยวข้อง เมื่อฉันป้อนคำและเปิดการค้นหา มันจะกลับมาเรียงลำดับความเกี่ยวข้อง

ฉันไม่แน่ใจว่าทำไมสิ่งนี้ถึงใช้งานได้ ในหน้าการกำหนดค่ามุมมองข้อความค้นหาที่ไม่มีคำหลักจะมีลักษณะดังนี้:

ดัชนี: main_index
คีย์: NULL
เงื่อนไข:
  [
    สถานะ = 1
  และ
    พิมพ์ IN อาร์เรย์ (
          'ทรัพยากร' => 'ทรัพยากร',
        )
  ]
การเรียงลำดับ: search_api_relevance DESC, field_display_date DESC
ตัวเลือก: อาร์เรย์ (
    'search_api_view' => 'วัตถุ (Drupal\views\ViewExecutable)',
    'search_api_base_path' => 'ค้นหา/ทรัพยากร',
  )

ฉันอาจเรียนรู้เพิ่มเติมจากบันทึกการสืบค้น mysql แต่ฉันยอมรับว่า: ฉันไม่เคยแน่ใจว่าฉันเข้าใจสิ่งที่ฉันเห็นที่นั่น

pe flag
ฉันมีเนื้อหาประเภทหนึ่งที่การกำหนดค่าด้านบนไม่มีผลลัพธ์เหมือนกัน ยังไม่มีความคิดว่าทำไม

โพสต์คำตอบ

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