Reworking SearchWP’s Advanced Settings Screen – Part 2

Posted: January 17, 2019 Comments

This series of posts is an experiment revolving around product development in the open. There’s a good chance the content of this post is very inaccurate by now!

  1. Reworking SearchWP’s Advanced Settings Screen – Part 1
  2. Reworking SearchWP’s Advanced Settings Screen – Part 2
  3. Reworking SearchWP’s Advanced Settings Screen – Part 3
  4. Reworking SearchWP’s Advanced Settings Screen – Part 4
  5. Reworking SearchWP’s Advanced Settings Screen – Part 5

After getting the ball rolling insofar as a feature/update list for the Advanced settings screen in SearchWP 3.0 (yet to be released at the time of this writing) and one of the things to do being integrate the Manage Ignored extension into SearchWP core, I wanted to explain a bit about my approach to Extension development in SearchWP.

Building Extensions for SearchWP

One of my favorite aspects of WordPress (specifically as a developer) is the many ways it can be extended. I wanted to parlay that system into SearchWP as much as I could, and it’s served the project really well over time. I also like WordPress’ approach of Features as Plugins quite a bit.  The idea is elegant:

Build features as self-contained, standalone plugins. Once matured merge into core when appropriate.

There are a number of benefits to this approach, but in the context of SearchWP my favorites are:

  • Being able to release updates without having to update the core plugin every time
  • Dog food the developer experience when building on top of SearchWP
  • Allow developers to pick/choose what code they need to use on the site

When it comes to determining whether a new feature should be added directly to the core plugin, or instead developed as an Extension I simply ask myself whether the feature can work as an Extension. If a feature can work as an Extension the next question to answer is whether it should work as an Extension or it makes more sense to bundle directly into core because 80% of the customer base will make use of it. Because SearchWP has been around for some time, it’s very rare that a new feature will go directly into the core plugin.

To date there have been no Extensions merged into SearchWP core, but in evaluating what to do with Manage Ignored it made sense to take a look at the other Extensions for any other candidates.

Merging more Extensions

SearchWP has many Extensions that customers really enjoy working with. The page lists them out in order of popularity (based on download count) to help customers quickly find what’s most used overall.

Based on the metric of download count and my interaction with customers over time, I thought the following Extensions were in a good place to be merge candidates:

All of the other Extensions are either very niche solutions, or integration Extensions that will not apply to the large majority of SearchWP customers.

Because SearchWP is aiming to be the best WordPress search solution available, to me it makes sense to include these features that are very common among other search solutions due to their usefulness. On top of that there is definitely customer confusion between Fuzzy Matches and LIKE Terms that could be alleviated by directly integrating them into SearchWP itself.

The drawback to merging these Extensions will be that more code is shipped with the plugin which by default means there are more places for bugs to hide out, but I plan on integrating them in much the same way they sit now. Instead of installing a plugin you’ll be able to tick a checkbox. If left un-ticked nothing will change for you.

Revised task list

The decision to integrate not one but five Extensions into the 3.0 release definitely added a number of tasks, but it also opened a number of doors to explore when it came to working out how to update the Advanced settings screen.

▶︎ To be continued…

This series of posts is an experiment revolving around product development in the open. There’s a good chance the content of this post is very inaccurate by now!

  1. Reworking SearchWP’s Advanced Settings Screen – Part 1
  2. Reworking SearchWP’s Advanced Settings Screen – Part 2
  3. Reworking SearchWP’s Advanced Settings Screen – Part 3
  4. Reworking SearchWP’s Advanced Settings Screen – Part 4
  5. Reworking SearchWP’s Advanced Settings Screen – Part 5

Get my newsletter

Receive periodic updates right in the mail!
  • This field is for validation purposes and should be left unchanged.

Leave a Reply

Your email address will not be published. Required fields are marked *