The real problem here is not duplicate content. The problem is that your search result get indexed which is wrong for SEO reasons. Search engines like Google explicitly ask to avoid search result pages to get indexed.
To avoid your Wordpress search result pages to get indexed in search engines, you have different options :
Block access to robots by adding the following instruction in your /robots.txt files :
This will prevent from bots to access any resources with
?s= in their URL.
<meta name="robots" content="noindex, follow" /> in the
<head> tag of your search result pages.
This will let bots access your search pages but will prevent from indexing.
With Wordpress SEO by Yoast plugin
Wordpress SEO by Yoast is a well known plugin for optimizing Wordpress for SEO and considered as the best SEO plugin for now by many SEO professionals (as I am).
This plugin add automatically the right
<meta> on search result pages.
Without using a plugin
With header included
If you use the same header for different templates with
get_header() function for instance, you will need to test if the current page is a search result page before adding the
Here is the code to add in your header template (default:
<?php if ( is_search() ) : ?>
<meta name="robots" content="noindex, follow" />
<?php endif; ?>
Without header included
If you use a simple template with his own header, you can simply edit you search template
search.php to add the
<meta>tag in the