Search Form with Craft Commerce I am using the following form in Craft

&lt;div class="parts-search"&gt;

    &lt;form class="parts-search-block" action="{{ url('parts/results') }}" method="get"&gt;

        {#-- CATEGORY SEARCH --#}
        &lt;div class="col col-33"&gt;
            &lt;label class="form-top"&gt;Search by Category:&lt;/label&gt;&lt;br /&gt;
            &lt;select name="q"&gt;
                &lt;option value=""&gt;--Select A Category--&lt;/option&gt;
                &lt;option value="Compressors"&gt;Compressors&lt;/option&gt;
                &lt;option value="Coolers"&gt;Coolers&lt;/option&gt;
                &lt;option value="Doors"&gt;Doors&lt;/option&gt;
                &lt;option value="Electrical"&gt;Electrical&lt;/option&gt;
                &lt;option value="Freezers"&gt;Freezers&lt;/option&gt;
                &lt;option value="Gaskets"&gt;Gaskets&lt;/option&gt;
                &lt;option value="GFV"&gt;GFV&lt;/option&gt;
                &lt;option value="Glass"&gt;Glass&lt;/option&gt;
                &lt;option value="Graphics"&gt;Graphics&lt;/option&gt;
                &lt;option value="Grills"&gt;Grills&lt;/option&gt;
                &lt;option value="Harnesses"&gt;Harnesses&lt;/option&gt;
                &lt;option value="Lighting"&gt;Lighting&lt;/option&gt;
                &lt;option value="Misc"&gt;Misc&lt;/option&gt;
                &lt;option value="Motors"&gt;Motors&lt;/option&gt;
                &lt;option value="Plastic"&gt;Plastic&lt;/option&gt;
                &lt;option value="Refrigeration"&gt;Refrigeration&lt;/option&gt;
                &lt;option value="Repair Panels"&gt;Repair Panels&lt;/option&gt;
                &lt;option value="Shelves"&gt;Shelves&lt;/option&gt;
                &lt;option value="Skins"&gt;Skins&lt;/option&gt;
                &lt;option value="Vendor"&gt;Vendor&lt;/option&gt;
            &lt;/select&gt;
        &lt;/div&gt;
        {#-- CATEGORY SEARCH --#}

        &lt;div class="col col-34"&gt;
            &lt;button type="submit" class="cat-search"&gt;
                Begin Search
            &lt;/button&gt;
        &lt;/div&gt;

        &lt;div class="clear-fix"&gt;&lt;/div&gt;
    &lt;/form&gt;


And calling it on the results page with...

    {% set query = craft.request.getParam('q') %}
    {% set entries = craft.entries.section('parts').search(query).order('score') %}

    {% for entry in entries %}


I am now using Craft Commerce and need to use the form to search my Commerce Products.  Is this possible?  Any suggestions?
The Simplest Answer

{% set products = craft.commerce.products.search(query).order('score') %}

However, I am not sure a search is guaranteed to return ALL the products in quite the same way as using relatedTo, which is how you'd typically get entries/products related to a category - so see below.

A Slightly Fuller Answer

(Using your form)

So in this case I think you're just wanting to get all products related to a category?  As in, you're not actually searching within those right?  

If so you can leave out the search parameter below, as all you're doing is finding the products related to the category.  

(If you want to search within those products for something else, then you need the search: "some value" part).

Anyway, q has your category (title?) in it (would be better to use the slug in your form values really), so you can just:

{% set categoryTitle= craft.request.getParam('q') %}
{% set category = craft.categories.title(categoryTitle) %}  {# (or better change form values and this to .slug) #}
{% set products = craft.commerce.products({
                relatedTo: category,
                search: "whatever",  
                order: "title asc",
            }) %}
{% for product in products %}
    etc...


(Obviously a more typical way of doing this is to do it off a url segment or whatever for an index page, rather than by a search)



A Considerably Fuller Answer

Absolutely you can search products in the same way.  Even better, since about Craft 2.5 when they added the serachScore to the results, you can simultaneously search multiple element types and combine the results.

Here's some sample code that will get you started:

    {% if query|length %}

    {% set product_results = craft.commerce.products.search(query).order('score').limit(limit_for_each_section).with('variants') %}  
    {% set article_results = craft.entries.search(query).order('score').limit(limit_for_each_section) %}
    {% set category_results = craft.categories.search(query).order('score').limit(limit_for_each_section) %}

    {% set all_results = [] %}

    {% if product_results|length %}
        {% set all_results = all_results|merge(product_results) %}
    {% endif %}
    {% if article_results|length %}
        {% set all_results = all_results|merge(article_results) %}
    {% endif %}
    {% if category_results|length %}
        {% set all_results = all_results|merge(category_results) %}
    {% endif %}

    {% if all_results|length %}

        &lt;br&gt;&lt;br&gt;

        {% set all_results = all_results|sortByField('searchScore', 'desc') %}

        {% set items = [] %}

            {% for result in all_results %}

            {% if result.url|length %}

                {% if result.elementType == 'Commerce_Product' %}

                     ... etc