Điểm:0

Display Fulltext search query string on Search Results page

lá cờ nr

This is probably much simpler than I'm imagining.

Client wants to display the user-entered search query string, with a label (like Search Query or You Searched For), at the top of the search results page.

Currently, the search query is displayed in the form input field (a Views exposed form, in a block) but it has <input size="25">, so many queries are too wide to display.

I've been looking at the fields available in Views. Some contain the query data or are based upon it, such as "Search: Solr score debugging (indexed field)" and "Search: Excerpt" (with "Use highlighted field data" checked). But I have not been able to find the straight query string, unaltered. Nor does it appear that this is a field I can add to the Default Solr Index.

This question is a bit old (Drupal 7) but it does make it seem like this is going to be way more trouble than it should be, especially considering that this string is already being rendered on the Search Results page (just not where the client wants to see it).

This question is an apparent duplicate, but it is unanswered. And this question from 2011 concerns Drupal 6 and is old enough that it's likely irrelevant.

I don't think these software versions will make much of a difference, but just in case:

Solr 8.8.2
Drupal 9.3.3
Search API Solr 4.2.6

Update (January 25, 2022)

I edited the View for "Search (Index Default Solr content index)" and added a Header of type Global: Text area.

In the configuration for this Header, I made sure to check the box for "Use replacement tokens from the first row".

In order to access the user-entered value for the Fulltext search input, I set the Header Content to the following Basic HTML:

<p>
  <strong>You searched for:</strong>
  {{ raw_arguments.search_api_fulltext }}
</p>

Here's a screenshot of the Views config: Token replacement for Fulltext search input

This is literally all the client asked for, just about as simple as can be.

Unfortunately, it only works in the Views preview with contextual filters. I can't get the string to render on the actual Search Results page.

Here's a screenshot of a query string in the Preview with contextual filters:

Preview of Search result for "coding standard"

And here's a detail showing the way this is actually rendered:

You searched for: Nothing, apparently.

Note that the user-entered string is still visible in the Fulltext search input field, but not in the Header.

I do note that the actual search results page is at the path:

/search?search_api_fulltext="coding+standard"

In the Views preview, however, the path is shown as:

/search/%22coding%20standard%22

If I manually enter that path instead of the one obtained by submitting the Fulltext search, the header shows the expected results, but the form input field is not used at all!

Search string passed as contextual filter instead of query parameter -- this works!

What am I missing here? I feel certain that I am very close.

lá cờ br
https://www.drupal.org/project/drupal/issues/2761273 thì bạn có thể sử dụng nó trong vùng văn bản tùy chỉnh không? Nhưng nó cần phải được kiểm tra xem nó có hoạt động với solr hay không, nhưng tôi nghĩ nó hoạt động như những gì tôi đã tìm thấy ban đầu về chủ đề đó. Nhưng có lẽ một plugin toàn cầu tùy chỉnh có thể tốt hơn nếu bạn không muốn hiển thị mọi thứ luôn.
Điểm:0
lá cờ nr

Search API Fulltext chuyển giá trị dưới dạng tham số truy vấn, với đường dẫn URL:

/search?search_api_fulltext="coding+standard"

Tuy nhiên, bằng cách sử dụng Bộ lọc theo ngữ cảnh, đường dẫn sử dụng các phân đoạn URL thay vì tham số truy vấn:

/search/%22coding%20standard%22

Với tham số đường dẫn, tôi có thể sử dụng Mã thông báo để cung cấp giá trị cho "Bạn đã tìm kiếm:" nhưng trường nhập văn bản "Tài liệu tìm kiếm ..." không thể truy cập giá trị.

Với chuỗi truy vấn, trường nhập văn bản "Tìm kiếm tài liệu ..." có thể truy cập giá trị, nhưng Mã thông báo thì không.

Giải pháp, rõ ràng trong nhận thức muộn màng, là định cấu hình Chế độ xem để khi giá trị bộ lọc không có trong URL, bộ lọc theo ngữ cảnh sẽ dựa vào giá trị mặc định do tham số truy vấn cung cấp search_api_fulltext:

Khi giá trị bộ lọc KHÔNG có trong URL, hãy sử dụng giá trị mặc định được cung cấp bởi tham số truy vấn search_api_fulltext

Với dự phòng này, giá trị Mã thông báo hiện có sẵn trong tiêu đề và trường nhập văn bản "Tài liệu tìm kiếm..." vẫn chứa chuỗi tìm kiếm trước đó làm giá trị mặc định.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.