Separate indexing settings from search pages

Created on 13 August 2024, 10 months ago

Problem/Motivation

The admin page for the search module has a lot of settings on them while connected can cause confusion if they all live on the same page. Separating them would make the UX for sites that use search pages defined by contrib modules.

Steps to reproduce

  1. Assume the site being built is going to rely on a contrib search page like google_cse →
  2. The first three fieldsets and maybe even the fourth have zero bearing for your site and might confuse novice admins who may think it is a problem that the site is 0% indexed even though that index has nothing to do with google_cse search results

Proposed resolution

The lowest effort solution I can think of is have a second admin form for all of the index items and maybe apply a permission to that page so that it can be hidden from those who don't need it.

A solution that would require slightly more effort is the management of search pages be a separate module from the drupal core index.

Remaining tasks

Decide on a course of action.

Code the solution.

User interface changes

/admin/config/search/pages would have form elements moved from it to another page.

Introduced terminology

None

API changes

Might modify some module dependencies

Data model changes

None

Release notes snippet

Pending discussion

✨ Feature request
Status

Active

Version

11.0 🔥

Component
Search  →

Last updated about 1 month ago

  • Maintained by
  • 🇺🇸United States @pwolanin
Created by

🇨🇦Canada geekygnr Waterloo

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

  • Issue created by @geekygnr
  • 🇳🇿New Zealand quietone

    Changes are made to the 11.x, the main development branch, and then backported according to our policies.

  • Pipeline finished with Failed
    9 months ago
    Total: 247s
    #285774
  • Pipeline finished with Failed
    8 months ago
    Total: 509s
    #301279
  • Pipeline finished with Failed
    8 months ago
    #303080
  • Pipeline finished with Success
    8 months ago
    Total: 7471s
    #306561
  • 🇨🇦Canada geekygnr Waterloo

    Sending this up for review since I got all the tests to pass.

  • The Needs Review Queue Bot → tested this issue. It fails the Drupal core commit checks. Therefore, this issue status is now "Needs work".

    This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.

    Consult the Drupal Contributor Guide → to find step-by-step guides for working with issues.

  • 🇨🇦Canada geekygnr Waterloo
  • Pipeline finished with Success
    8 months ago
    Total: 591s
    #311953
  • 🇺🇸United States smustgrave
  • 🇺🇸United States smustgrave

    Will also need usability review but the summary should be complete to help that team, UI changes require before/after screenshots for example

  • 🇨🇦Canada geekygnr Waterloo

    I will work on a CR

  • 🇨🇦Canada geekygnr Waterloo
  • 🇨🇦Canada geekygnr Waterloo

    Merged 11.x back into the MR and added some fixes.

    Thanks for the feedback.

  • Pipeline finished with Failed
    7 months ago
    Total: 151s
    #327164
  • The Needs Review Queue Bot → tested this issue. It fails the Drupal core commit checks. Therefore, this issue status is now "Needs work".

    This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.

    Consult the Drupal Contributor Guide → to find step-by-step guides for working with issues.

  • First commit to issue fork.
  • Pipeline finished with Failed
    7 months ago
    Total: 219s
    #338269
  • Pipeline finished with Failed
    7 months ago
    Total: 185s
    #338279
  • 🇮🇳India shalini_jha

    Fixed issue reported by bot but seems some phpstan failure.

  • Pipeline finished with Failed
    6 months ago
    Total: 1221s
    #357334
  • Pipeline finished with Success
    6 months ago
    Total: 938s
    #357448
  • Status changed to Needs review 6 months ago
  • 🇮🇳India shalini_jha

    I have reviewed the recent changes and found that the removal of the messenger service is incorrect because it is used in addStatus(). This caused the test to fail. Additionally, after updating the type hint, the pipeline failed. To resolve this, I first fixed the PHPStan issues, regenerated the baseline, and addressed the test coverage issues related to addStatus(). The pipeline is now fixed. As mentioned in #12, I am moving the project back to "Needs Review."

  • 🇮🇳India sagarmohite0031

    Hello,
    Tested and verified ob drupal 11.
    MR applied successfully.
    Attaching before and after screenshots.

  • The Needs Review Queue Bot → tested this issue. It no longer applies to Drupal core. Therefore, this issue status is now "Needs work".

    This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.

    Consult the Drupal Contributor Guide → to find step-by-step guides for working with issues.

  • 🇨🇦Canada geekygnr Waterloo

    Fixed the merge conflict

  • Pipeline finished with Failed
    5 months ago
    Total: 214s
    #401122
  • Status changed to Needs work 3 months ago
  • The Needs Review Queue Bot → tested this issue. It no longer applies to Drupal core. Therefore, this issue status is now "Needs work".

    This does not mean that the patch necessarily needs to be re-rolled or the MR rebased. Read the Issue Summary, the issue tags and the latest discussion here to determine what needs to be done.

    Consult the Drupal Contributor Guide → to find step-by-step guides for working with issues.

  • Pipeline finished with Failed
    about 2 months ago
    Total: 183s
    #480918
  • Pipeline finished with Success
    about 2 months ago
    Total: 414s
    #480981
  • 🇮🇳India shalini_jha

    Rebased and fixed conflicts also regenerated the based line for fixing the pipeline failure. Moving this back to NR.Kindly review

  • 🇺🇸United States benjifisher Boston area

    Usability review

    We discussed this issue at 📌 Drupal Usability Meeting 2025-04-25 Active . That issue will have a link to a recording of the meeting.

    For the record, the attendees at the usability meeting were @benjifisher, @rkoller, @shaal, and @worldlinemine.

    We like the idea of breaking up the search page, as this issue does. But instead of making two separate pages (with two entries in the Administration menu) we would like to have two tabs (with one entry in the Administration menu). This is similar to the approach used for Languages (/admin/config/regional/language), where the first tab has a list of available languages and the second tab (Detection and selection) has settings.

    Once the list of search pages is on a separate page (or tab) we also think it would be helpful to add some help text to that page. Again, the Languages page (List tab) is a good model: it explains where the ordering and default are used.

    We also spent some time discussing the "Indexing progress" section, and whether it belongs on the main tab (list of search pages) or the settings tab. In the end, we agreed with the decision made here, to keep it with the settings.

    We also think that a useful addition would be to have a button that immediately runs cron, just for the Search module. That button should go on the main tab, where the indexing progress of each page is listed. But it should not really be "immediate": it should open a confirmation form, just like the "Re-index site" button. The confirmation form should check whether cron is currently running; if so, then offer options to check again or to cancel. Otherwise, give some information (something like "314 of 1000 items are indexed; continue to add 100 items to the index"), a link to the settings page, and a confirmation button.

    But that is out of scope for this issue.

    In summary:

    1. Recommendation: use two tabs instead of two separate pages.
    2. Suggestion: add some help text to the main tab (list of search pages).
    3. Follow-up issue: add an "Index now" button to the main tab.

    If you want more feedback from the usability team, a good way to reach out is in the #ux channel in Slack.

Production build 0.71.5 2024