Searchanise for Magento

Searchanise extension for Magento provides fast search and smart instant autocomplete for the search field. It is absolutely free.

There are 2 ways to install Searchanise to a Magento store — via Magento Connect or manually. Both methods are explained below.

Important

It is assumed that you already have Magento installed and you are familiar with the basics of working with it. If not, take a visit to the Magento support page.

Requirements

  • The supported Magento versions are 1.5.x, 1.6.x, and 1.7.x
  • The store must be accessible from the Internet for the add-on to be able to establish connection with a Searchanise server
  • Cron service must be activated in your store for the automatic data submission service to work

Installation

Magento Connect

Important

You should be registered at Magento Connect to be able to install extension directly from the marketplace.

In order to register, go to Magento Connect, click on LOG IN in the top upper corner, then Register, and follow the instructions.

  1. Log in to your Magento admin panel

  2. Go to System → Tools → Compilation and make sure that the Magento compilation is disabled.

    Warning

    It is very important to disable the Magento compilation before installing the Searchanise extension; the store may become unavailable if Searchanise is installed with compilation enabled.

    After the Searchanise extension is successfully installed, you can enable the Magento compilation back.

    If you have installed Searchanise with compilation enabled, and the store became unavailable, just uninstall Searchanise via Magento Connect Manager in your store admin panel.

  3. Go to System → Magento Connect → Magento Connect Manager

  4. If you are not already logged in, enter your Magento Connect credentials and log in

  5. Get the extension key on the Searchanise Connector Add-on page and paste it to the second field in the Install New Extensions section

  6. Click Install, then Proceed

The Searchanise Admin Panel will now appear under Catalog → Searchanise.

Note

You may also have to clear the cache storage (System → Cache Management → Flush Cache Storage), and re-log in to the Magento admin panel.

Manual Installation

  1. Download the Searchanise extension package to you local machine: searchanise_v3.0.2_for_magento_1.5.x-1.8.x_community_enterprise.zip

  2. Extract the content of the archive (the folder app with all subfolders and files)

  3. Connect to the server where your Magento store is installed via SSH or FTP. Switch to the store installation root directory (the path might look something similar to /var/http/magento/ on a UNIX-based server or C:\magento on Windows)

  4. Copy the entire unpacked app folder into your store installation root folder. No existing files are replaced during this operation

    Important

    You will need to have the sufficient permissions to add new files to the store installation root directory. If you are not sure how to deal with file permissions, consult with your system administrator.

  5. Log in to your store admin panel. By default the admin panel is accessible on the URL http://your_store_domain/index.php/admin.

  6. Go to System → Cache Management:

    Magento admin panel, System → Cache Management
  7. Click on Flush Cache Storage:

    magento admin panel, Flush Cache Storage

Right after you have performed all the listed actions the Searchanise extension is installed. You can immediately access the Searchanise admin panel under Catalog → Searchanise.

Your store will be automatically registered in the Searchanise database and a request for the initial synchronization will be added to the scheduled task queue. The initial indexation of you catalog may take some time depending on your store size.

Configuration

Searchanise settings are available in the Magento admin panel under:

  1. System → Configuration
  2. In the left pane, SEARCHANISE → Settings

Sync Init Method

You can specify the method to be used to initialize the database synchronization process.

2 options are available:

  • AJAX (default)—Select this option if you want the database synchronization to be initialized everytime a page is visited in the customer area
  • cron (recommended)—If cron service is set up and running, it is recommended to use this option. Database synchronization will be initialized according to the cron schedule.

Note

If you scheduled sync is configured, it is highly recommended to use the cron method. It makes for less server load and cleaner sync.

Search Field ID

Note

Searchanise should work with no additional configuring, right after you have connected your store and the initial synchronization in finished.

If the Search Widget is works fine in your storefront, you can safely skip to the next section.

You can specify the id pointing to the search field in the storefront. This is necessary if the value used in your storefront differs from the default one, which is search.

First, you should know the id used in your storefront:

  1. Go the storefront of your Magento store

  2. Click on the search field with the right mouse button, then click on ‘Inspect Element‘ in the context menu.

    You should see a developer console with a highlighted line, which should look similar to:

    <input id="mysearch" type="text" name="q" value="" class="input-text"/>

    The value stated in the ‘id’ attribute the one you need (‘mysearch’ in this example).

Now, give this value to Searchanise:

  1. Go to your Magento store admin panel
  2. Go to System → Configuration
  3. In the left pane, find SEARCHANISE → Settings and click on it
  4. Enter the obtained id value in the field Search field ID
  5. Click on Save Config

Scheduled Sync

Magento uses cron to perform scheduled tasks. Searchanise extension adds sync requests to the scheduled tasks queue, which is handled by cron with a specified timeout.

It is recommended to set the timeout to 1 minute to guarantee that Searchanise keeps your store database index fresh and actual.

In order to set the timeout:

  1. In the admin area, go to System → Configuration:

    Magento admin panel, System → Configuration
  2. Scroll down to the Advanced section in Configuration pane on the left and click on System:

    Magento admin panel, Configuration → Advanced → System
  3. Open the Cron (Scheduled Tasks) pane and set the Generate Schedules Every param to 1:

    Magento admin panel, cron settings, Generate Schedules Every = 1

    Save your modification by clicking on Save config.

Troubleshooting

Incompatible extensions

Some Magento extensions have proven to be incompatible with Searchanise:

If you think you know an incompatible extension that is not on the list, please submit it to us for further investigation.

There is a workaround to make an incompatible extension work, published on our forum.

Store products are not submitted to Searchanise for a long period of time, the search engine shows the status ‘No data imported’

Check the cron settings of your store. You either do not have cron periodic jobs running at all, or cron schedule is too sparse. Follow the steps in the Scheduled Sync section above to configure cron, or get help in the Magento Wiki.

There is something wrong with timestamps: the Last sync timestamp shown in the admin panel widget does not correspond to a real sync time

Make sure you have the correct timezone set in Magento. Otherwise, Searchanise falls back to the default timezone — UTC. See the Magento Wiki for more information.

I cannot install the add-on via Magento Connect Manager. Output about ‘file already exists’ is shown in the console

Make sure you do not have Searchanise already installed. Otherwise, you should manually clean up the previous installation by removing the files mentioned in the console output.

Instant search widget or search service do not work with some custom templates (e.g. Shopper by themeforest)

Note

Fixed in version 1.0.4. Upgrade via Magento Connect Manager in the Magento admin panel.

The problem is that the init.js script from our server fails to load. This happens due to a JavaScript exception DOMException: HIERARCHY_REQUEST_ERR.

The solution is:

  1. Open the file app/code/community/Simtech/Searchanise/Block/Jsinit.php

  2. Find the following line:

    document.documentElement.firstChild.appendChild(__se);
    

    and replace it with:

    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(__se, s);
    

How do I show Special Price in the instant search widget?

Note

Fixed in version 1.0.5. Upgrade via Magento Connect Manager in the Magento admin panel.

  1. Update to the latest Searchanise Connection Add-on version (via Magento Connect manager in the Magento admin panel)

  2. In your Magento installation directory, find the file /code/community/Simtech/Searchanise/Helper/ApiXML.php and uncomment the following lines:

    // $specialPrice = $product->getData('special_price');
    // if ($specialPrice != '') {
    // $price = $specialPrice;
    // }
    

How to disable the default autocomplete in the Shopper skin?

In order to disable the default autocomplete widget in the Shopper skin, replace the file app/design/frontend/default/shopper/template/catalogsearch/form.mini.phtml with this modified one: form.mini.phtml.

Contents

Page Contents