<img height="1" width="1" style="display:none" src="https://q.quora.com/_/ad/ad9bc6b5b2de42fb9d7cd993ebb80066/pixel?tag=ViewContent&amp;noscript=1">

Magento 1 integration manual (beta)

We are currently working on a Magento 1 integration - it’s not perfect yet, but we would love you to try it and tell us what you think! 

Join our beta trial

Compatibility

The module is compatible with the following versions of Magento and php:

  • Magento Community 1.9.x
  • Magento Enterprise 1.14.x
  • Php 5.6 and php 7

Module description

The basic idea with this module is to send search requests from Magento to Loop54 and then use the response collection from Loop54 to build the search result page natively in Magento.

Magento will create a product feed including all searchable attributes and some base attributes specified in the table below. 

The module handles multiple Loop54 engines for different websites and store views.

Installation

First of all the module needs to be installed. The module can be installed without being enabled.
The next step is to export data from Magento to exposed to, and get indexed by, Loop54. This requires some configuration and support from Loop54.

When Loop54 has processed the information you will get a link to the search engine so Magento knows where to post search queries. This link needs to be added in the Magento configuration interface.

Lastly, enable Loop54 in the module settings to direct search traffic to Loop54 instead of Magento.

The process for setting up Loop54 on your Magento store is as follows:

  1. Receive the source code from Loop54 and move it to your Magento root directory
  2. Log in to your Magento admin
  3. Navigate to System->Configuration->Loop54
  4. Under "Scheduled feeds", set “Enabled” to "Yes".  
    Magento_schedule
  5. Configure your attributes that you want to be searchable (See "Searchable attributes")
  6. Run the shell command "php shell/loop54.php --all" or schedule the cron job and wait for the file to generate
  7. Send your file to Loop54 so they can set up a new engine
  8. Add your Loop54 url, that Loop54 will give you, in "Loop54 engine" text boxMagento_url
  9. Schedule cron jobs for the delta and daily (if you scheduled it to run in step 6)

Magento schedule feed

  1. Clear all cache
  2. You are good to go! 
    • If you "Enabled " to "Yes" under General Settings, the module will start to call Loop54 instead of Magento. However, you can install the module and do the export without enabling the module.

Configuring the module

Settings for the module is found under System -> Configuration -> Loop54

Note: Remember to put the export file in a folder so that the file can be fetched by Loop54 via http.

Setting

Description

Enabled

Tells Magento if Loop54 should be used or not

Loop54 Engine

The Loop54 engine endpoint. Will be given by Loop54.

Enable debugging mode

For testing and developing purposes.

Number of items inside autocomplete results

The number of search results that should be displayed in autocomplete box.  We advise to not show more than 10 rows of suggestions on desktop, and no more than 4-8 on mobile 

Delay search suggestions (seconds)

The autocomplete suggestions should be requested for every key press after two letters have been typed, with a keypress delay of about 50-150ms to avoid flickering when the user is typing longer queries. If you want the search suggestions to be slightly more delayed you can tune this setting.

Number of related items

Related items will be displayed under direct results by default. Show (at least) 12-24 related results depending on the design of the search results page and image sizes. The collection will not be paged.

Number of direct result items

Depending on the size of your catalog this number might need to be raised. 5000 will work for most stores.

Enabled

Enable the scheduled full product sync

Frequency

Should be set to daily

Start time

Generate the file off peak hours, like in the middle of the night/early morning

File path

Must be accessible by Loop54 via an URL so place the file in an accessible folder.

File name

Name of the file, use a descriptive name ending with .json

Number of products to use in batch exporting

When creating the export file, a lot of memory and cpu might be used. A higher number here uses more resources but completes the file faster, if you have memory problems lower this number.

Number of products to send in delta sync

How many products to send at a time to Loop54. This setting can be adjusted in cooperation with Loop54

 

Usage

All products that have “Search” in its visibility and that are also sellable will be synced to Loop54.

All attributes that are “Searchable” will be searchable along with a few, by Loop54, defined base attributes.

Searchable attributes

All searchable attributes are found under Catalog -> Attributes -> Manage attributes.

Magento 1 Admin panel

Here you can see all searchable attributes. To set an attribute to “Searchable”, just click on the attribute and change the setting.

Searchable attributes_magento_1

One of the search-settings needs to be set to “Yes”. No new export will be made after changing a searchable setting, the new settings will be used in the next scheduled export.

Magento Admin Search frontend properties

Also make sure that you have important attributes set to "Filterable" in search to give the customers a good search experience.

Base attributes

These attributes are always exported to Loop54

Attribute

Description

external_id

This field holds the product_id from Magento and will be used as key.

image_link

Link to the products main image.

Mainly for Loop54 administrative purpose.

category_ids

All category ids that the product is associated with.

Loop54 engine will use this id for building context.

categories

All categories that the product is associated with.

category_meta_keywords

Meta keywords for all categories the product is associated with excluded level 0 categories.

new

Set to yes if the product is new based on “Set Product as New from Date”

sale

Set to yes if the products actual price is lower than the original price

 

Full export

Full export is triggered by cron. You can set the time for the cron in the settings. When the file is created Magento will tell Loop54 to fetch the new file. Make sure the file is stored in a place that Loop54 can access via an url.

Delta export

Product changes that occur by one of the following will be exported to the Loop54 API

  1. Product is saved from “edit product” page in admin
  2. Product is changed via Magento native import function
  3. Product changes status via bulk edit in admin

All changed products will be added to a queue and export will be triggered by cron. How often the cron will run is configurable in settings.

You can also configure how many products that will be sent at one time. This might have to be adjusted in collaboration with Loop54.

Updates that come from ERP, WMS or PIM or similar systems will probably not cause an update of the product, and that is by design. Loop54 doesn’t want changes in stock levels or prices, only in indexable data.

Manual export

If you want to export all products or run the delta export manually you can do that with a shell script.  

Full export: run “php shell/loop54.php -all” from your Magento webroot

Delta export: run “php shell/loop54.php -delta” from your Magento webroot

Logging

Exceptions are logged to the file “loop54.log” in your default logging folder. Loop54 response times are logged in file “Loop54_Request_Response.log” if debug mode is enabled.

Event tracking

Event tracking is triggered when a user clicks on a product, adds it to cart or makes a purchase.

Clicks are triggered with javascript to ensure correct tracking even when using full page cache. Add to cart and purchase tracking is triggered by php.

Important things to consider

After installing this module, Magento synonyms that have been created earlier will not be used for search and the possibility to add new synonyms will be disabled. This is because there is little need for synonyms in the Loop54 engine and usage of synonyms can lead to unexpected search results. 

Large catalogs use a lot of memory. Adjusting how many products to use in one collection helps lower memory allocation. However, large catalogs create large export files and that will consume a lot of memory.

The module is configured to fit Magento base templates. If you don’t have a 2-column search page you might want to change position of the “Related queries” block in design/frontend/<used template>/default/layout/loop54.xml to fit your template.  

Although most checkout modules use the standard Magento events, some do not. If your checkout module does not use standard Magento events, it may cause an issue with our purchase tracking. Please let our team know at the start of implementation. 

FAQ

Can install the module and do the export without enabling the module?

Yes. If you "Enabled " to "Yes" under General Settings, the module will start to call Loop54 instead of Magento. However, you can install the module and do the export without enabling the module.

I have an ERP system updating products, will it be a problem?

Generally, no. If you never touch a product in Magento admin then the products will be updated every 24h by the scheduled feed generation. You can always save a product to trigger a sync for that product.

I have another search module today, will it be a problem?

Generally, no. As long as your theme has a decent standard search result page the module will work fine. If you have an extension that doesn't use the standard search result page, that template may have to be updated.

If my stock and price updates from ERP doesn't sync to Loop54 won't we show out of stock items then?

No, Loop54 is responsible for result set and sort order, Magento is in charge of which products that shows and will filter products from the Loop54 result that shouldn't show.

Will Loop54 work with my custom search page layout template?

The module is configured to fit Magento 2-column base templates. If you are not using a default Magento template, the layout will need to be changed to display Loop54 direct results, related results and related queries.