WPSolr logo
Search
Close this search box.

Table of contents :

WooCommerce Product Display with Apache Solr

wpsolr-header-solr-elasticsearch-5

Table of contents :

Introduction

WooCommerce is a popular plugin for WordPress that enables users to create their own online stores. One essential aspect of any online store is the product display, as it directly affects the user experience and ultimately influences sales conversion. In this post, we will explore how Apache Solr can enhance the product display in WooCommerce and examine how WPSOLR, a powerful WordPress plugin, can facilitate the integration.

 

Apache Solr for WooCommerce Product Display

Apache Solr is an open-source search platform that provides advanced search and indexing capabilities. By leveraging Solr’s robust features, we can significantly improve the product display in WooCommerce.

To begin, we need to set up an Apache Solr server and index our WooCommerce products with appropriate fields such as product title, description, and attributes. We can achieve this by writing a custom script using a PHP Solr client library. Let’s take a look at an example:

Indexing WooCommerce Products with Apache Solr

 


// Require the Solr PHP client library
require_once 'path/to/solr-php-client/Apache/Solr/Service.php';

// Create a new Solr service instance
$solr = new Apache_Solr_Service('localhost', 8983, '/solr');

// Get WooCommerce products
$args = array(
    'post_type' => 'product',
    'posts_per_page' => -1,
);
$products_query = new WP_Query($args);

// Loop through products and index them in Solr
if ($products_query->have_posts()) {
    while ($products_query->have_posts()) {
        $products_query->the_post();
        $product_id = get_the_ID();
        $product = wc_get_product($product_id);

        // Prepare Solr document with required fields
        $document = new Apache_Solr_Document();
        $document->addField('id', $product_id);
        $document->addField('title', $product->get_title());
        $document->addField('description', $product->get_description());

        // Add more fields like attributes, categories, etc., as required

        // Add the document to Solr index
        $solr->addDocument($document);
    }
}

// Commit changes to the Solr index
$solr->commit();

The above code fetches all WooCommerce products and indexes them in Apache Solr. You can modify it to include additional fields as per your requirements. Once the products are indexed, we can utilize Solr’s search capabilities for enhanced product display.

Chapter 2: Integrating Apache Solr with WooCommerce Product Display
Now that we have indexed our products in Solr, we can leverage its powerful search features to enhance the product display in WooCommerce.

We can utilize Solr’s fast and precise full-text search capabilities to provide instant and accurate search results to users. Furthermore, Solr’s faceting and filtering capabilities enable us to create advanced product filters based on attributes, categories, or any desired field.

To fetch search results from Solr, we can again use a PHP Solr client library and integrate it into our WooCommerce store. Here’s an example of querying Solr and displaying the search results:

Querying Apache Solr for WooCommerce Search

 


// Require the Solr PHP client library
require_once 'path/to/solr-php-client/Apache/Solr/Service.php';

// Create a new Solr service instance
$solr = new Apache_Solr_Service('localhost', 8983, '/solr');

// Get the search query entered by the user
$search_query = $_GET['search_query'];

// Make a Solr query with the search query
$response = $solr->search($search_query, 0, 10); // Limiting to 10 results for demonstration

// Display search results
if ($response->getHttpStatus() == 200) {
    $products = $response->response->docs;

    foreach ($products as $product) {
        echo '

‘ . $product->title . ‘

‘; echo $product->description; // Display more product details as required } }

The above code demonstrates how to query Solr with user-entered search queries and display the search results on your WooCommerce store. You can customize the display as per your requirements and integrate additional features such as pagination and sorting.

 

WPSOLR – A Powerful WordPress Plugin for Solr Integration

While integrating Apache Solr with WooCommerce manually can be an intricate process, using a dedicated plugin like WPSOLR can greatly simplify the integration. WPSOLR provides a user-friendly interface to set up, configure, and manage the Apache Solr server for your WooCommerce store.

With WPSOLR, you can effortlessly index your WooCommerce products in Solr and enhance the product display with advanced search, filters, and facets. The plugin offers intuitive options to customize the search functionality, including relevance tuning, autocomplete, and dynamic filters.

WPSOLR also provides seamless integration with popular page builders and theme frameworks, ensuring maximum compatibility and ease of use. Additionally, the plugin offers easy control over Solr server administration and indexing updates, allowing you to manage your eCommerce store efficiently.

 

Conclusion

By leveraging Apache Solr’s powerful search capabilities and integrating it with WooCommerce, you can elevate your product display and provide a superior shopping experience to your customers. With the help of WPSOLR, the entire process becomes streamlined, enabling you to focus on enhancing your online store’s performance and conversion rates.

Related posts ... not powered by WPSOLR 😊