Support Home > Search > Jetpack Search: Frequently Asked Questions

Jetpack Search: Frequently Asked Questions

Jetpack Search is a powerful replacement for the search capability built into WordPress. For general features and FAQs, please see our information page. If you are looking for information about Jetpack Search plugin, check our support page.

General

What languages does the Jetpack Search plugin support?

We provide support for all languages and advanced language analysis for 38 languages (Arabic, Armenian, Basque, Bengali, Bulgarian, Catalan, Chinese, Czech, Danish, Dutch, English, Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hindi, Hungarian, Indonesian, Irish, Italian, Japanese, Korean, Latvian, Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Spanish, Swedish, Thai, Turkish, and Ukrainian).

Does the Jetpack Search plugin support eCommerce stores and products?

Yes, eCommerce stores and products work seamlessly with the Jetpack Search plugin, and no additional configuration is generally required.

Is this plugin compatible with WooCommerce?

Yes, the Jetpack Search plugin works seamlessly with WooCommerce product search.

Does the Jetpack Search plugin work on mobile?

Yes, the Jetpack Search plugin is optimized for site visitors from mobile devices.

Will this plugin work with my theme?

Usually, Jetpack Search can automatically integrate with the default search that has been included in your theme. If things aren’t working as expected, you can check out some further information here.

Does the Jetpack Search plugin allow visitors to filter the search results?

Yes, visitors can filter search results by tags, categories, dates, custom taxonomies, and post types.

Billing

How can I reduce the number of records on my site?

If you have particular post types on your site that you never want to count as a Jetpack Search record and you don’t need other Jetpack features to work on that post type, then you can completely exclude it from being synced. This code can be added to a functionality plugin – more on how to do this here. Please make sure to replace XXXXX by your post type in the highlighted lines:

add_action( 'plugins_loaded', 'filter_blacklisted_post_types' );
function filter_blacklisted_post_types() {
	if ( class_exists( '\Automattic\Jetpack\Sync\Settings' ) ) {
		// Get current blacklist
		$blacklist = \Automattic\Jetpack\Sync\Settings::get_setting('post_types_blacklist');
		//Check if post type is in blacklist
		if ( ! in_array( 'XXXXX', $blacklist ) ) {
			// Append post_type to blacklist
			$blacklist[] = 'XXXXX';
			$settings = [
				'post_types_blacklist' => $blacklist
			];
			// Update settings
			\Automattic\Jetpack\Sync\Settings::update_settings( $settings );
		}
	}
}

Please be aware that code snippets are provided as a courtesy and our support team is unable to offer assistance customizing them further.

It is not possible to exclude individual content from being indexed by Jetpack Search other than making it publicly inaccessible.

Will Jetpack Search stop working if I exceed my maximum number of records?

If you exceed the maximum number of records for Jetpack Search, a few weeks before your next billing cycle, you will get an email informing you that you are over your limit and telling you what you will be charged when you auto-renew. This gives you time to reduce the number of records or let the auto-renewal take place.

  • If you are on an annual Jetpack Search plan, your price will increase at most once a year.
  • For monthly Jetpack Search plans, we will check your record count every month before your plan is renewed.

How are Jetpack Search plans different from search on the Jetpack Professional Plan?

The main difference between the Jetpack Professional and the newer Jetpack Search plans is that you will not have access to the Instant Jetpack Search overlay feature. The underlying improvements to speed and results relevance will be available to you, though. So you’ll get the improved search engine without the fancy new overlay interface.

If you are using Jetpack Search via the Jetpack Professional plan, we recommend the following:

  1. Enable Jetpack Search from within WP Admin. The setting is under Jetpack → Settings → Performance. You can also enable this from your WordPress.com Dashboard here.
  2. Replace the standard search widget with the Jetpack Search widget. This is optional, but without it, you will not have access to the additional sort options or filtering.
  3. If you don’t see any results on your site, the index may not be ready yet. You can force the index to update by manually synchronizing your site with WordPress.com, which can be done from here.

Important: The above guidance does not apply to you if your website is hosted on WordPress.com. For help with Jetpack Search on your WordPress.com hosting plan, please contact WordPress.com support directly at this link: https://wordpress.com/support.

There were two reasons why we changed our pricing model for Jetpack Search:

  1. Many folks were only looking for Jetpack Search and did not want to also be paying for features they didn’t need.
  2. Allowing an unlimited number of Jetpack Search records felt unfair because it was preventing us from offering lower prices or making improvements. Our costs for a site with one million posts are 1,000 times as much as a site with one thousand posts, but both sites were paying the same amount.

The new pricing makes Jetpack Search more affordable for small sites and still costs big sites less than the competition. It’s also available as a single product, so there’s no need to pay for other features you may not need just to use Jetpack Search.


Some themes do not use the standard get_search_form() function to render their search box. First, verify that Jetpack Search is working correctly on your site by adding a search query to the end of your site URL. For instance, if your site is mysite.com, then navigate to mysite.com?s=searchterm.

If that works, then there are a few options:

How come some of my content is missing from search results?

When Jetpack is first connected it can sometimes take hours or days to fully sync all data depending on how many records you have. If the number of results when you have not done a search is still going up every few minutes, then it is likely that data is still being synchronized. When you first purchase Jetpack Search, we also need to build your search index, which can take a while, though it is much faster than doing a full sync. Jetpack Search limits the number of characters to 30,000 when indexing.

There are some common problems that sites can have with Jetpack Search, though:

  • Custom post types can be publicly available but be set to not be searchable by Jetpack Search. This happens when exclude_from_search it is set to true when registering the post type.
  • Content is directly imported into the database. If you are regularly importing content or products and not triggering the WordPress hooks, then Jetpack will not synchronize the data for Jetpack Search. A good hook to use is publish_post.
  • Using post_status other than publish. We only index and search against posts that have the post_status of either publish or closed (for bbpress). Post with statuses other then publish or closed will not appear in Jetpack Search results.

If you change any of the above to improve your Jetpack Search results, you will need to fully sync your site. To start a full sync of your site with Jetpack follow these steps:

  1. Log in to WordPress.com.
  2. Under “My Sites” navigate to Manage → Settings → General → Site Tools → Manage your connection.
  3. Under “Data synchronization,” click on “initiate a sync manually.”
  4. The sync will then be started and may take a little while to complete.

In addition to the above, Jetpack skips indexing the following post types by default, so these will not appear in Jetpack Search results:

  • revision
  • scheduled-action
  • nbcs_video_lookup
  • reply (as used by bbPress)
  • product_variation (as used by WooCommerce)
  • nav_menu_item (doesn’t make sense to index this)

Why is my custom taxonomy never being displayed?

If you have configured a custom taxonomy in your sidebar widget, but it is never being shown in Jetpack Search results, it is possible that your taxonomy is not yet supported. We have a fixed list of custom taxonomies that we index (a bit more than 1,000).

We can add to the list, but would prefer to do so only for generic words and names. If you would like to suggest a term to add, you can open an issue on our GitHub repository. Alternatively, you can add custom taxonomies via a filter.

Why are searches not matching against content in post meta?

We have a list of post meta keys (custom fields) that we match against for Jetpack Search. Adding meta to the allowlist doesn’t automatically include the data in the underlying search index. To ensure the performance and stability of our system, we limit what custom fields get indexed. The current allowed fields can be seen here.

We understand that this list may not cover all of your needs. If you have specific custom fields that you want included in the Jetpack Search index, feel free to let us know. If they are of a generic nature that other sites could use as well, we can consider upgrading our systems to include the new meta keys. However, if they are unique, the current available option is to map the custom field to one of the allowed meta keys.

Below is a code snippet that can be used to duplicate the custom meta field to a Jetpack Search allowed meta. It would require resaving the meta for existing content to get it synced with our systems as well.

add_action('save_post', array( $this, 'update_custom_meta'), 50 );

private function update_custom_meta( $post_id ) {
    // Simple Mapping
    if( $value = get_post_meta( $post_id, 'custom_field_to_be_indexed') ) {
        update_post_meta( $post_id, 'jetpack-search-meta2', $value );
    } else {
        delete_post_meta( $post_id, 'jetpack-search-meta2' );
    }
}

How come search terms are not showing up In the stats dashboard?

The Jetpack stats dashboard does not record the terms your readers use when using the Jetpack Search form on your site (or any other search forms on your site). They collect stats from search engines instead – more on that here.

How do I search against multilingual content with the WPML or Polylang plugins?

Jetpack Search does not currently support multiple languages on the same site. We hope to add support soon, but in the meantime, you can check this status in this public-facing GitHub Issue.

How do I only show results from certain post types (e.g. products)?

This code filter will filter all Jetpack Search queries so only results from products and pages are shown. This does not impact the number of indexed records (see below).

function jp_filter_query( $options ) {
	$options['adminQueryFilter'] = array(
		'bool' => array(
			'should' => array(
				array( 'term' => array( 'post_type' => product' ) ),
				array( 'term' => array( 'post_type' => page ) ),
			)
		)
	);
	return $options;
}
add_filter( 'jetpack_instant_search_options', 'jp_filter_query' );

How do I remove all posts/pages with a certain category?

This filter will remove all posts/pages with the “removeme” category from Jetpack Search results. See the developer documentation for other fields available.

function jp_filter_query( $options ) {
	$options['adminQueryFilter'] = array(
		'bool' => array(
			'must_not' => array(
				array( 'term' => array( 'category.slug' => 'removeme' ) ),
			)
		)
	);
	return $options;
}
add_filter( 'jetpack_instant_search_options', 'jp_filter_query' );

This code filter will remove particular posts/pages from Jetpack Search results.

Replace 2266 and 1724 from your posts/pages ids.

add_filter( 'jetpack_instant_search_options', function($options) {
    $options['adminQueryFilter'] = array(
        'bool' => array(
            'must_not' => array(
                array( 'term' => array( 'post_id' => 2266) ),
                array( 'term' => array( 'post_id' => 1724) ),
            )
        )
    );
 
    return $options;
} );

Alternatively, you can also apply the below code to also remove particular posts/pages from Jetpack Search results.:

add_filter( 'jetpack_instant_search_options', function($options) {
    $options['adminQueryFilter'] = array(
        'bool' => array(
	        'must_not' => array(
	            array( 'terms' => array( 'post_id' => [2266, 1724]) ),
	        )
	    )
    );

    return $options;
} );

Still need help?

Please contact support. We’re happy to advise.

  • Table Of Contents

  • Contact Us

    Need more help? Feel free to contact us.