Start chat

Hamintec

Custom modules and extensions

Attention Some modules may not be included into your template package. This section describes configuration of all modules that are used in our templates. Each template pack is provided with a set of modules which is included into the design of this specific template.

JX Header Account 2.0.0

This module displays login and registration forms on the website. It can take the following positions: website header, left and right column. The module allows to log in and register using such social networks as Facebook, Google+ and VK, which is convenient for website users. Registration or logging in proceeds without reloading the page.

JX Header Account Main Panel

The main panel. Here you can set up the module.

Settings

There are the following settings in the module:

  • Display type - this setting allows to select the way to display the registration form. It can take the following values:

    • Drop down - the form will display as a drop-down below the button opening it.
    • Popup - the form will appear in a pop-up.
    • Left side - the form will appear from the left as a sidebar.
    • Right side - the form will appear from the right as a sidebar.
  • Display style after login - this setting allows to change the form view after login/registration. You can use the following values:

    • Two columns - the list is divided into two columns.
    • One Column - the list of links is displayed as one column.
  • Default avatar - this field appears only if the 'Display avatar' option is enabled. Here you can select the default user avatar.
  • Display avatar - this setting allows enabling or disable user avatar. If the user logs in to the account on the website with the help of one of the social networks, the avatar will be taken from the account in this social network, otherwise, the avatar, loaded by the website admin, will be displayed.
  • Use redirect - if this setting is enabled, user registration and password recovery will take place on the default PrestaShop registration/password recovery page.
  • Use Facebook Login - this setting allows enabling user registration and login with the help of the Facebook social network. When you enable this option, you will see the following settings:

    • App ID - your account App ID from the Facebook developer account.
    • App Secret - your app secret from the Facebook developer account.
  • Use Google Login - this setting allows enabling user login and registration with the help of the Google+ social network. If you enable this option, you will see the following settings:

    • App ID - your App id from the Google developer account.
    • App Secret - your App secret from the Google developer account.
    • Redirect URLs - your online-store url + index.php?fc=module&module=jxheaderaccount&controller=googlelogin
  • Use VK Login - this setting allows enabling user registration and login with the help of VK social network. If you enable this option, you will see the following settings:

    • App ID - your App id from your VK developer account.
    • App Secret - App secret from your VK developer account.
    • Redirect URLs - your online-store url + index.php?fc=module&module=jxheaderaccount&controller=vk
Registering apps in social networks:

JX HTML Content

This module allows displaying any content (image, HTML, links, etc.) in the following positions: displayNav, home, top, topColumn, left and right (displayLeftColumn/displayRightColumn), footer. It is used to expand design opportunities and add advertisement/information blocks to your store. It is a multilanguage module and can also work on the multi-store website.

Installation and Deleting

The module can be installed and deleted like any other PrestaShop module.

Module configuration

After the module has been successfully installed, open the configuration page.

To add the content, you should follow the steps below:
  • Click 'Add new' button.
  • The list of available languages. You can view the available elements for all languages by switching the language tabs.
  • The list of elements added for specific position and language.
Adding the element. Click Add item button and fill in the required settings (none of the fields are mandatory).

All elements of one language added to the same position will be displayed as a list at the backend and frontend.

  • Language
    select the required language from the drop-down list.
  • Title
    title of the element.
  • Use title in front
    display the title of the element at the frontend (the title will show up in front of the element).
  • Hook
    position where the element is added.
  • Specific class
    custom class defines item styling (CSS class).
  • Image
    upload the image from your computer.
  • Image width
    image width shown at the frontend.
  • Image height
    image height shown at the frontend.
  • URL
    add the link (the whole block will be wrapped in the link).
  • Target blank
    open link in new tab.
  • HTML
    HTML code (except the link if you have added it in the URL field) or text.
  • Save
    click to save the element.
Editing and removing the element

When you add the element, it shows up in the corresponding list.

  • The language where the elements were added.
  • Position where the elements were added.
  • Edit button with the drop-down list.
  • Delete button.
Editing
Click Edit button to modify the element.

In the appeared screen change all the required fields.

  • Enable
    display the element at the frontend.
  • Image title
    title of the element.
  • Use title in front
    show up title at the frontend.
  • Hook to which the image should be attached
    position of the element.
  • Specific class
    custom CSS class.
  • Load your image
    image of the element.
  • Image width
    image width at the frontend.
  • Image height
    image height at the frontend.
  • Target link
    assign link to the element.
  • Open link in a new tab/page
    Open link in new tab.
  • Optional HTML code
    edit HTML code.
  • Save
    save changes.
Changing order of elements in the list
To change the order of elements, you should just drag the element to the position you need.

JX Manufacturers Block

This module shows up manufacturers available in your store. The list of manufacturers may consist of image and title. The list can also show up as a carousel.

Installing and Deleting

The module is installed and deleted like any other PrestaShop module.

Module configuration

After installation you can change its settings on the module configuration page.

  • Order by
    type of sorting items of the block.
  • Display name
    show the manufacturer's name.
  • Display image
    show the image of the manufacturer.
  • Number of elements to display
    type the number of elements displayed in the module.
  • Image Type
    select the image type (you can select the image from the images related to the manufacturer).
  • Use carousel
    show up the list as a carousel.
  • * Visible items
    number of visible manufacturers.
  • * Items scroll
    number of manufacturers shown in one carousel scroll.
  • * Slide Width
    the width of the element in the carousel.
  • * Slide Margin
    the margin of the element in the carousel.
  • * Auto scroll
    automatic scrolling.
  • * Carousel speed
    speed of the carousel.
  • * Pause
    pause between scrolls (if "Auto scroll" is enabled).
  • * Carousel loop
    carousel returns to the beginning when all elements have been scrolled.
  • * Hide control on end
    hide next/previous buttons.
  • * Pager
    show pagination.
  • * Control
    show next/previous buttons.

* - settings are available only if carousel is enabled.

After all options have been set, press 'Save' button (1).

The module supports multi-stores.

JX Media Parallax 2.0.0

This module is designed to let you add a parallax effect to the DOM items of the page. It allows you to create multi-layered parallax. It also provides a possibility to add a custom background video (you can upload it from your computer to server) or add a YouTube video.

JX Media Parallax Main Panel

Main module panel that allows you to add, edit or remove parallax items.

Creating a new parallax item

In order to create a new parallax item, press 'plus' (1) icon, in the top right corner of the main panel.

Then you will see the following form.

Form options for adding parallax items

  • Selector - CSS selector of the item with parallax effect applied. For example, '#header .nav'
  • Item status - item status (parallax will not be displayed if it's disabled)
  • Speed - digit value from 0 to 2, which defines main parallax block speed
  • Offset - main layer indent on the Y axis
  • Inverse - parallax direction
  • Fade - this option allows to configure main block fade-out on page scroll
  • Forced full width - forced full width of the parallax block

Press 'Save' after filling in all the required fields.

Parallax layers list

In order to see the list of parallax layers, you should press 'View' (1) near the main parallax item.

Then you'll see a table, in which the layers are displayed after they are added.

Adding new layer

In order to create a new parallax layer, press 'plus' (1) icon in the top right corner of the layers panel.

Then you will see the following form.

Press 'Save' after filling in all the required fields.

Parallax layers types and their fields

  • Image-background - image used as a parallax background

    • Item status - item status (parallax will not be displayed if it's disabled)
    • Layout speed - digit value from 0 to 2, which defines main parallax block speed
    • Offset - main layer indent on the Y axis
    • Inverse - parallax direction
    • Fade - this option allows configuring main block fade-out on page scroll
    • Image - link to an image, to which parallax effect will be applied
    • Sort order - layout position, relative to the rest of items
  • Video-background - video used as a parallax background

    • Item status - item status (parallax will not be displayed if it's disabled)
    • Layout speed - digit value from 0 to 2, which defines main parallax block speed
    • Offset - main layer indent on the Y axis
    • Inverse - parallax direction
    • Fade - this option allows configuring main block fade-out on page scroll
    • Image - link to an additional image
    • Video parallax mp4 - video in mp4 format
    • Video parallax webm - video in webm format
    • Sort order - layout position, relative to the rest of items
  • Text - text layer which position can be defined with CSS

    • Item status - item status (parallax will not be displayed if it's disabled)
    • Layout speed - digit value from 0 to 2, which defines main parallax block speed
    • Offset - main layer indent on the Y axis
    • Inverse - parallax direction
    • Fade - this option allows configuring main block fade-out on page scroll
    • Content - layer content
    • Specific class - custom CSS class for this layer
    • Sort order - layout position, relative to the rest of items
  • Youtube-background - YouTube video used as a parallax background

    • Item status - item status (parallax will not be displayed if it's disabled)
    • Layout speed - digit value from 0 to 2, which defines main parallax block speed
    • Offset - main layer indent on the Y axis
    • Inverse - parallax direction
    • Fade - this option allows configuring main block fade-out on page scroll
    • Video id - YouTube video ID
    • Sort order - layout position, relative to the rest of items
  • Image - image layer which position can be defined with CSS

    • Item status - item status (parallax will not be displayed if it's disabled)
    • Layout speed - digit value from 0 to 2, which defines main parallax block speed
    • Offset - main layer indent on the Y axis
    • Inverse - parallax direction
    • Fade - this option allows configuring main block fade-out on page scroll
    • Image - link to an image, to which parallax effect will be applied
    • Specific class - custom CSS class for this layer
    • Sort order - layout position, relative to the rest of items

Uploading video and images to server

In order to upload video or an image to server via File Manager, first you need to press 'file' (1) icon next to the needed field.

In the following window, in the 'actions' line, choose 'upload' (2).

Then you'll see one more pop-up window, to upload image or video file here.

Warnings and recommendations

  • Mobile devices (smartphones, tablets) have a parallax effect disabled by default, the uppermost block image layer is used as a background instead
  • The forced full width of the parallax block affects page loading speed more critically than a regular full width block loading
  • The smaller the size of the uploaded video, the better.

JX Mega Layout 1.4.0

The module allows building multiple homepage layouts (presets) for hooks. This module advantage is allowing you to create different hook markups and modify them up to your needs.

Module requirements

  • PrestaShop 1.7+

  • PHP 5.4+

Hooks

The module has 5 hooks available by default:

  • 'Header' is a hook that combines such standard hooks: displayTop, displayNav, displayNav1, displayNav2. This hook corresponds to the website header.
  • 'Top Column' corresponds to the displayTopColumn and displayNavFullWidth hooks. This hook comes right after the Header hook.
  • 'Home' corresponds to such hooks: displayHome, displayWrapperTop, displayWrapperBottom, displayContentWrapperTop, displayLeftColumn, displayRightColumn. This hook is present only on the main page.
  • 'Footer' corresponds to the displayFooterBefore, displayFooter and displayFooterAfter hooks.
  • 'Product Footer' corresponds to the original displayFooterProduct hook, which is displayed in product page footer.

Integrating module to the theme

Integrating module to the THIRD-PARTY theme your presets won't be displayed at the frontend without this step.

NOTE: for third-party sources only if JX Mega Layout module is not included by default. The codes below have already been integrated into ZEMEZ template.

  • Header. In order to add custom preset to the Header hook, you need to perform the following steps:

    • Open the /templates/_partials/header.tpl file for editing.
    • Locate the following code:
         {block name='header_banner'}
          <div class="header-banner">
                  {hook h='displayBanner'}
                </div>
        {/block}
      
        {block name='header_nav'}
          <nav class="header-nav">
            <div class="container">
              <div class="row">
                <div class="hidden-sm-down">
                <div class="col-md-5 col-xs-12">
                  {hook h='displayNav1'}
                </div>
                <div class="col-md-7 right-nav">
                  {hook h='displayNav2'}
                </div>
              </div>
              <div class="hidden-md-up text-sm-center mobile">
              <div class="float-xs-left" id="menu-icon">
              <i class="material-icons d-inline"></i>
                          </div>
              <div class="float-xs-right" id="_mobile_cart"></div>
                          <div class="float-xs-right" id="_mobile_user_info"></div>
                          <div class="top-logo" id="_mobile_logo"></div>
                          <div class="clearfix"></div>
                          </div>
              </div>
            </div>
          </nav>
        {/block}
      
      {block name='header_top'}
          <div class="header-top">
            <div class="container">
              <div class="row">
                <div class="col-md-2 hidden-sm-down" id="_desktop_logo">
                  <a href="{$urls.base_url}">
                    <img class="logo img-responsive" src="{$shop.logo}" alt="{$shop.name}">
                  </a>
                </div>
                <div class="col-md-10 col-sm-12 position-static">
                  {hook h='displayTop'}
                  <div class="clearfix"> </div>
                          </div>
              </div>
              <div id="mobile_top_menu_wrapper" class="row hidden-md-up" style="display:none;">
              <div class="js-top-menu mobile" id="_mobile_top_menu"> </div>
                         <div class="js-top-menu-bottom">
                          <div id="_mobile_currency_selector"></div>
                          <div id="_mobile_language_selector"></div>
                          <div id="_mobile_contact_link"></div>
             </div>
           </div>
           </div>
          </div>
          {hook h='displayNavFullWidth'}
        {/block}
      
    • And replace it with:
       {assign var='displayMegaHeader' value={hook h='jxMegaLayoutHeader'}}
       {if $displayMegaHeader}
        {$displayMegaHeader nofilter}
        {else}
        {block name='header_banner'}
           <div class="header-banner">
            {hook h='displayBanner'}
          </div>
        {/block}
      
        {block name='header_nav'}
           <nav class="header-nav">
             <div class="container">
               <div class="row">
                 <div class="hidden-sm-down">
                  <div class="col-md-5 col-xs-12">
                 {hook h='displayNav1'}
                 </div>
                 <div class="col-md-7 right-nav">
                  {hook h='displayNav2'}
                   </div>
             </div>
                          <div class="hidden-md-up text-sm-center mobile">
               <div class="float-xs-left" id="menu-icon">
               <i class="material-icons d-inline"> </i>
               </div>
               <div class="float-xs-right" id="_mobile_cart"></div>
                          <div class="float-xs-right" id="_mobile_user_info"></div>
                          <div class="top-logo" id="_mobile_logo"></div>
                          <div class="clearfix"></div>
              </div>
             </div>
           </div>
           </nav>
        {/block}
      
        {block name='header_top'}
          <div class="header-top">
            <div class="container">
              <div class="row">
                <div class="col-md-2 hidden-sm-down" id="_desktop_logo">
                  <a href="{$urls.base_url}">
                    <img class="logo img-responsive" src="{$shop.logo}" alt="{$shop.name}">
                  </a>
               </div>
                          <div class="col-md-10 col-sm-12 position-static">
                  {hook h='displayTop'}
                  <div class="clearfix"></div>
                </div>
              </div>
                <div id="mobile_top_menu_wrapper" class="row hidden-md-up" style="display:none;">
              <div class="js-top-menu mobile" id="_mobile_top_menu"></div>
               <div class="js-top-menu-bottom">
               <div id="_mobile_currency_selector"></div>
               <div id="_mobile_language_selector"></div>
                <div id="_mobile_contact_link"></div>
            </div>
          </div>
          </div>
          </div>
          {hook h='displayNavFullWidth'}
        {/block}
        {/if}
  • Top column. In order to add custom preset to the topColumn hook, you need to perform the following steps:

    • Open the /templates/_partials/header.tpl file for editing.
    • Locate the following code
      {hook h="displayNavFullWidth"}
    • And replace it with:
          {assign var='displayMegaTopColumn' value={hook h='jxMegaLayoutTopColumn'}}
              {if $displayMegaTopColumn}
                  {$displayMegaTopColumn nofilter}
                   {/if}
                      
  • Home. In order to add custom preset to the Home hook, you need to perform the following steps:

    • Open the /templates/layouts/layout-both-columns.tpl file for editing.
    • Locate the following code:
      <section id="wrapper">
         {hook h="displayWrapperTop"}
               <div class="container">
          {block name="breadcrumb"}
          {include file='_partials/breadcrumb.tpl'}
          {/block}
      
          {block name="left_column"}
            <div id="left-column" class="col-xs-12 col-sm-4 col-md-3">
            {if $page.page_name == 'product'}
            {hook h='displayLeftColumnProduct'}
        {else}
           {hook h="displayLeftColumn"}
           {/if}
            </div>
          {/block}
      
           {block name="content_wrapper"}
             <div id="content-wrapper" class="left-column right-column col-sm-4 col-md-6">
             {hook h="displayContentWrapperTop"}
            {block name="content"}
              <p> Hello world! This is HTML5 Boilerplate.</p>
            {/block}
         {hook h="displayContentWrapperBottom"}
           </div>
         {/block}
      
          {block name="right_column"}
             <div id="right-column" class="col-xs-12 col-sm-4 col-md-3">
             {if $page.page_name == 'product'}
             {hook h='displayRightColumnProduct'}
         {else}
             {hook h="displayRightColumn"}
             {/if}
            </div>
          {/block}
           </div>
         {hook h="display wrapperBottom"}
      </section>
                      
    • And replace it with:
          <section id="wrapper">
            {assign var='displayMegaHome' value={hook h='jxMegaLayoutHome'}}
             {if $page.page_name == 'index' && $displayMegaHome}
             {$displayMegaHome nofilter}
            {else}
      
             {hook h="displayWrapperTop"}
             <div class="container">
             {block name="breadcrumb"}
              {include file='_partials/breadcrumb.tpl'}
             {/block}
      
             {block name="left_column"}
              <div id="left-column" class="col-xs-12 col-sm-4 col-md-3">
              {if $page.page_name == 'product'}
               {hook h='displayLeftColumnProduct'}
             {else}
               {hook h="displayLeftColumn"}
             {/if}
             </div>
             {/block}
      
             {block name="content_wrapper"}
               <div id="content-wrapper" class="left-column right-column col-sm-4 col-md-6">
               {hook h="displayContentWrapperTop"}
               {block name="content"}
                 <p>Hello world! This is HTML5 Boilerplate.</p>
             {/block}
               {hook h="displayContentWrapperBottom"}
              </div>
             {/block}
      
             {block name="right_column"}
               <div id="right-column" class="col-xs-12 col-sm-4 col-md-3">
               {if $page.page_name == 'product'}
                 {hook h='displayRightColumnProduct'}
               {else}
                 {hook h="displayRightColumn"}
               {/if}
              </div>
              {/block}
            </div>
              {hook h="displayWrapperBottom"}
            {/if}
        </section>
      
  • Footer. In order to add custom preset to the Footer hook, you need to perform the following steps:

    • Open the /templates/layouts/layout-both-columns.tpl file for editing.
    • Locate the following code:
         {block name="footer"}
      {include file="_partials/footer.tpl"}
      {/block}
      
    • And replace it with:
        {assign var='displayMegaFooter' value={hook h='jxMegaLayoutFooter'}}
      {if $displayMegaFooter}
      {$displayMegaFooter nofilter}
      {else}
      <div class="container">
      {block name="footer"}
      {include file="_partials/footer.tpl"}
      {/block}
      </div>
      {/if}
      
  • Product footer. In order to add custom preset to the Product footer hook, you need to perform the following steps:

    • Open the /templates/catalog/product.tpl file for editing.
    • Locate the following code:
      {block name='product_footer'}
            {hook h='displayFooterProduct' product=$product category=$category}
          {/block}                                 
    • And replace it with:
       {block name='product_footer'}
         {assign var='displayMegaProductFooter' value={hook h='jxMegaLayoutProductFooter' product=$product category=$category}}
         {if $displayMegaProductFooter}
          {$displayMegaProductFooter nofilter}
        {else}
          {hook h='displayFooterProduct' product=$product category=$category}
         {/if}
        {/block}
          

Module configuration

After JX Mega Layout module installation, you can configure it by clicking the Configure button (2).

JX Mega Layout Main Panel

Main Layouts

The main JX Mega Layout module configuration panel allows you to add a preset to the required hook and configure the preset.

Adding the preset
  • Press '+ Add a Preset' (1) in the needed tab.

  • Next, fill in the 'Enter layout name' field in the popup typing the new preset (2) title there and press 'Save' (3).

  • Preset was successfully created, it's listed among the available presets (4) now. Newly created preset is selected for editing (5).

Preset activation
  • First of all, select the needed preset from the list (1).

  • Press the 'Use as default' (2) switcher.

  • The preset was activated. If you need to display this preset only on some pages, open the drop-down (3) and select the pages you need. To apply changes, click outside the list area. A preset that is displayed on all pages will be marked with a filled star in the presets list, and the one that is displayed only on some pages will be marked with a partially filled star.

Removing the preset

There is no option to restore the preset after removing.

  • In order to remove the preset, choose the required preset among the list (1).

  • Next, press a cart (2) near the preset title.

  • Preset was successfully removed.

Renaming the preset
  • In order to rename the preset, choose the required preset among the list (1).

  • Next, press a pencil icon (2) next to the preset title.

  • Specify the new preset title (3) in a popup and press 'Rename layout' (4).

  • Preset was successfully renamed.

Wrapper

Wrapper has no class by default, it's not a mandatory item.

Adding the wrapper
  • In order to create a wrapper, press '+ Add wrapper' (1).

  • Wrapper was added (2).

Adding the custom CSS class to the wrapper

Adding the custom class will let you create a specific styling for your wrapper by using CSS rules.

  • In order to add wrapper class, press the button (1).

  • You'll see a pop-up window, fill in the 'Enter wrapper classes' (2) field there and press a 'Confirm' (3) button.

  • Custom class was added successfully.

Deleting the wrapper

Deleting the preset item will also cause all of its child items and their styles removing.

  • In order to remove the wrapper, press the cart button (1).

  • Wrapper was removed successfully.

Styling the wrapper
  • In order to add custom styles to the wrapper, press the 'pencil' (1) icon in the wrapper block.

  • In the following pop-up window fill in all the needed fields (you may refer to the documentation 'Styling' section), and press 'Save' (2) button.

  • If all the fields are filled in correctly, styles will be saved.

Row

Row item from the Bootstrap grid. It's a required item.

Adding the row
  • In order to insert a new row, press '+ Add row' (1) into the wrapper block, or '+ Add row' (2) in the main preset block, or '+ Add row' (3) in the column drop-down list.

  • The row was added successfully.

Adding custom CSS class to the row

Custom class adding allows you to create custom row styling using CSS rules.

  • In order to add the class to the row, you should press the 'ellipsis' button (1).

  • Choose the 'Edit row' (2) in a drop-down list.

  • Fill in the 'Enter row classes' (3) field in the pop-up window and press 'Confirm' (4) button.

  • Custom class was added successfully.

Deleting the row

Removal of preset item will also cause removal of its child items and their styles.

  • In order to remove the row, open the menu (the 'ellipsis' icon) in the row block.

  • Choose 'Delete' (2) option in the drop-down.

  • The row was successfully removed.

Adding styles to the row
  • In order to add row styles, open the menu (the 'ellipsis' icon) (1) in a row block.

  • Press 'Stylize' (2) in the drop-down.

  • You will see the pop-up window, fill in all the needed fields there (you may refer to the documentation 'Styling' section) and press 'Save' (3) button.

  • If all the fields are filled in correctly, styles will be saved.

Column

It is an item with configurable block width for different dimensions, based on Bootstrap grid.

Adding the column
  • In order to insert a column into a needed 'row', open the menu (the 'ellipsis' icon) (1)

  • Choose the '+ Add Col' (2) among the list.

  • Fill in the fields (col*, col-sm*, col-md*, col-lg*, col-xl*, col-xxl* - in accordance with bootstrap 4 requirements) in the pop-up window and press 'Confirm' (3) button.

  • The column was added successfully.

Removing the column

Preset item removing will also cause its child items and their styles deleting.

  • In order to remove the column, open the menu (the 'ellipsis' icon) in a column block (1)

  • Press 'Delete' (2) in the list.

  • The column and all of its child items were removed.

Editing the column
  • In order to edit the column, open the menu (the 'ellipsis' icon) (1) in the column block.

  • Press 'Edit column' (2) in the list.

  • Fill in the fields (col*, col-sm*, col-md*, col-lg*, col-xl*, col-xxl* - in accordance with bootstrap 4 requirements) in the pop-up window and press 'Confirm'.

  • The column was successfully edited.

Adding styles to the column
  • In order to add column styles, open the menu (the 'ellipsis' icon) (1) in a column block.

  • Press 'Stylize' (2) in the list of options.

  • You will see the pop-up window, fill in all the needed fields there (you may refer to the documentation 'Styling' section) and press 'Save' (3) button.

  • If all the fields are filled in correctly, styles will be saved.

Module

Module assigned to this hook.

Adding the module

Be careful when adding modules to the preset, some modules are desirable to use if they do not change the visible layout, e.g., 'Data mining for statistics' module.

  • In order to add the module to the preset in a column block, open the menu (the 'ellipsis' icon) (1).

  • Press the '+ Add Module' (2) in the list of options available.

  • If needed, you can enter the custom class (3) in the pop-up window and select the module (4), next press 'Confirm' (5).

  • The module was successfully added.

  • In this version of JX Mega Layout you can add 'Homepage tabs' module in Home hook.

    It can also be customized like all other modules in Mega Layout.

Deleting the module

Removal of preset item will also cause removal of its child items and their styles.

  • In order to remove the module, open the menu (the 'ellipsis' icon) (1) in the module block.

  • Press 'Delete' (2) in the list of options available.

  • The module is removed.

Adding custom class to the module

Custom class adding allows to create module styling using CSS rules.

  • In order to specify custom class for the module, open the menu in the module block (the 'ellipsis' icon) (1).

  • Press 'Edit Settings' (2) then.

  • Specify custom class (3) in the pop-up window and press 'Confirm' (4) button.

  • Custom class was added.

Extra content

Additional custom content in any position.

Adding extra content
  • In order to add extra content in a column block, open the menu (the 'ellipsis'icon) (1).

  • Press 'Add Extra content' (2).

  • The pop-up window will appear. Specify the custom class (3), if needed. You need to select the content type (product or post) (4) and identify product ID number (5). Press 'Confirm' (6) button.

  • Extra content was successfully added.

Deleting extra content
  • To remove the extra content, open the menu (the 'ellipsis' icon) (1) in the corresponding block.

  • Press 'Delete' (2) button.

Adding custom class to the extra content
  • In order to add the custom class for the extra content, open the menu in the corresponding block (the 'ellipsis' icon) (1).

  • Press 'Edit settings' (2) button.

  • Specify the custom class in the appeared pop-up window. Press 'Confirm' button.

  • Custom CSS class was added.
Logo, Copyright

Logo and Copyright blocks are edited the same way as modules, except for the fact that Logo can be placed only in Header or Footer position, and the Copyright block can be placed only in Footer position.

Presets export

Export tool allows you to export presets for the further import into different shops.

  • Navigate to the 'Tools' (1) tab in the main configurations panel.

  • Choose 'Export' (2) in the form.

  • You'll see the list of the existing presets in site hooks.

  • In order to preview the preset, press 'Layout preview' (3) button next to the preset you need, in order to export, please press 'Export layout' (4) button.

  • Then you'll be able to download this preset as a zip archive.

Preset import

Import tool accepts only the presets *.zip files that were previously generated with the same module Export tool.

  • In order to import your preset, you should open the Tools (1) tab and choose 'Import' (2).

  • Next, press the Add file (3) button and select the zip file of your exported preset. In case this archive is the exported preset, you will see this preset preview.

  • If this preset meets your needs, press 'Import' (4). The preset will be imported and added to the list of available presets.

Reset

'Reset' reverts all the presets to initial state (to the way they came with the template), and discards all the created presets.

Attention! After reverting presets to default state, all the custom presets will be discarded!

  • To reset presets, navigate to the 'Tools' (1) tab. In the appeared block open the 'Options' (2) tab.

  • Press the 'Reset' button.

  • That's it! All presets are reset to initial state.

Styles and Scripts Optimization

Styles and scripts optimization adds exclusions for modules in Header section, based on their use in presets. This allows speeding up the page loading speed. Optimization works in test mode.

Enabling optimization:

  • To enable optimization, open the 'Tools' (1) tab and select the 'Options' (2) tab.

  • In the appeared window, you can enable optimization (3).

If optimization is enabled when editing and enabling presets, optimization gets discarded, but you'll see a window offering to run optimization. There is no need to optimize scripts and styles every time you change presets. It's better to optimize them when you're done editing.

Styling
  • Background styles. Fields description:

    • background-image (background image) - the image URL or 'none' value. The image is picked from the ~/images/cms/ folder.
    • background-color (background color) - the value can be set in any color format (rgb, hex, etc.). You can choose the color using the Color Picker tool.
    • background-repeat (background repeat) - all the available options are listed in the radio buttons.
    • background-position (background position) - all the available options are listed in the drop-down.
    • background-size (background size) - all the available options are listed in the drop-down.
    • background-origin (background image positioning region) - all the available options are listed in the drop-down.
  • Border styles.

    • border-top-style, border-right-style, border-left-style, border-bottom-style (border styles) - all the available options are listed in the drop-down.
    • border-top-width, border-right-width, border-left-width, border-bottom-width (borders width) - should be set in pixels.
    • border-top-сolor, border-right-color, border-left-color, border-bottom-color (borders color) - the value can be set in any color format (rgb, hex, etc.). You can choose the color using the Color Picker Tool.
    • border-top-right-radius, border-top-left-radius, border-bottom-right-radius, border-bottom-left-radius (border radius) - should be set in pixels.
  • Other styles.

    • box-shadow (box shadow) - example:0px 0px 0px 0px rgba(0,0,0,0.75).
Items styles removing
  • In order to remove items styles, open the items styling section and press 'Clear styles' (1)

Extra content

On the module base there is the ability to create one of the available content types (HTML block, Banner block, YouTube block or Slider block) blocks and, also, output the products or posts as slides. You can also Export all the extra content you have created in one click only or import it from your computer.

  • In order to add extra content, you should open the Tools (1) tab and choose 'Extra content' (2.)

  • Press 'Add content' button.

  • There are 4 available types of content that you can create: HTML block, Banner block, Video block, Slider block.

Extra HTML content
  • To create extra HTML content, press 'Create HTML block' tab.

  • In the form that appears, fill in the required fields.

    • Enter HTML item name
      HTML block name, is mandatory to be filled in for the default language.
    • HTML content
      HTML content.
    • Enter Specific Class
      block CSS class.
  • To delete HTML block, press 'Remove' (1) button. In order to edit block, press 'Edit'(2) button.

Extra Banner content
  • To create extra Banner content, press 'Create Banner block' (1) tab.

  • In the form that appears, fill in the required fields.

    • Enter Banner item name
      banner title, is mandatory to be filled in for the default language.
    • Enter Banner item link
      a link that is assigned to this banner.
    • Add banner image
      upload an image for the banner.
    • Banner content
      set the content of the banner.
    • Enter Specific class
      block CSS class.
  • To delete Banner block, press 'Remove' (1) button. In order to edit block, press 'Edit'(2) button.

Extra Video content
  • In order to create extra Video content, press 'Create Video block' (1) tab.

  • In the form that appears, fill in the required fields.

    • Enter Video item name
      the title of the video (mandatory).
    • Preview
      the video will be displayed before it will be published.
    • Enter Video item URL
      add video link in the YouTube video format.
    • HTML content
      the field where some HTML content can be added.
    • Enter Specific Class
      block CSS class.
  • To delete Video block, press 'Remove' (1) button. In order to edit block, press 'Edit'(2) button.

Extra Slider content
  • In order to create extra Slider content, press 'Create Slider block' (1) tab.

  • In the form that appears, fill in the required fields.

    • Enter Slider item name
      the title of the slider (mandatory).
    • Slider description
      set the description of the slider.
    • Enter Specific class
      block CSS class.
    • Slides
      the content of the slide: html, banner, video, product, post.
    • Visible items
      the number of visible items (mandatory).
    • Items scroll
      the number of items changed with one scroll (mandatory).
    • Slide margin
      the carousel list item margin (mandatory).
    • Slider speed
      speed of changing speed (mandatory).
    • Auto scroll
      turns on/off slider autoplay.
    • Pause
      pause between scrolls (if 'Auto scroll' is enabled).
    • Slider Loop
      allow repeating slides from the beginning after all the slides were shown.
    • Pager
      show/hide slider pagination.
    • Controls
      show/hide slider navigation.
    • Auto height
      slides height.
  • To delete Slider block, press 'Remove' (1) button. In order to edit block, press 'Edit'(2) button.

Export content

You may export all the extra content you've created to your computer as a zip file with one click only.

  • To download extra content, simply press "Export content"(1) tab. The downloading process will start automatically.

Import content

You can also import your own custom content from your computer, but zip files only!

  • To upload extra content, press "Import content" tab.

  • Press "Add file" (1) button and upload from your computer archive that contains extra content only.

Warnings

If the following message appears in the module item block, you should enable the mentioned module.

If the following message appears in the module item block, you should install the mentioned module.

In case you remove or deactivate the 'JX Mega Layout' module, all the active presets will be disabled and you will see the positions (hooks) in their original appearance.

JX Mega Menu

The module is designed to create complex menus. The module provides the ability to display one item (without sub-menu), a menu item with a sub-menu and a menu item with sub-menu by means of a multi-row and multi-column block. The module can be used in different positions, but it will display the same content. Available positions: top (displayTop), left (displayLeftColumn), right (displayRightColumn), footer (displayFooter). You can add categories (with subcategories), CMS categories (with subcategories), manufacturers (one or a list), suppliers (one or a list), stores (if multi-store is used), links to any product, information block about the product, custom links (not limited in quantity), custom HTML blocks (not limited in number) and banners. See below for more details.

The module includes 6 main tabs that allow customizing the menu.

JX Mega Menu Items

JX Mega Menu items are the basic items which appear in the menu.

In order to create a new item, open the JX Mega Menu module and click Add item button from the top menu or click "+" button in the top right of the table.

In the form that appears, fill in the required fields.
  • Enter item name
    the tab title which is mandatory to be filled in for the default language, if the additional languages fields are not filled in, the tab takes its name from the default language.
  • Active
    active/inactive tab.
  • Link
    a link that is assigned to this tab. You can enter a custom link, or choose from existing options (categories, CMS categories). If you leave the field blank, the link of this tab is inactive.
  • Sort order
    the order of tabs to be displayed.
  • Specific Class
    the class which is added to emphasize the item (CSS class).
  • Enter item badge
    is filled in depending on multi-languages.
  • It is Mega Menu
    given tab sub-menu is a Mega Menu. *
  • Use simple menu
    given tab sub-menu is a simple menu. **

* It is Mega Menu. If this option is selected, there will be a form to create a complex menu (Mega Menu).

** Use simple menu. If this option is selected, there will be a form to create a simple menu. This is a menu that displays the selected content in a single column. If the menu has embedded content, the new column is added.

Complex menu consists of rows and columns in rows.

The Row is a part of the Mega Menu structure. It includes the menu columns. The existing row can be removed by clicking the appropriate button. The row will be removed with the content it includes. The rows quantity is not limited.

The Column is a part of the Mega Menu structure, which is placed inside the rows. (The Class) The width of the column cannot be less than 2 and more than 12. In order to make the menu display properly, the total column width cannot exceed 12. The width (class) is a Bootstrap column type, corresponds to the same values.

In order to create the menu, click the 'Add row' button.

In the form appeared, click 'Add column' button.

In the pop up window you need to specify the column class (from 2 to 12). The column itself appears next where you need to set the required settings.

Here you can change the column class, CSS class and the content from the list provided. You can add/remove content by double clicking the item, or by highlighting the items and clicking the corresponding button.

Block can be removed by clicking 'Remove block' button in the footer of the block.

By removing the row, the included columns are also removed.

In order to move the content available in the selected menu, double-click or highlight the desired content and press the corresponding button.

Inactive menu information is saved while switching between menu types and you can always change the type of menu.

JX Mega Menu HTML

In this section we will explain how to create a custom HTML block in the Mega Menu.

The module has a table listing all the available blocks. You can also add a new block by clicking the '+' button in the top right of the table.

In the form that appears, fill in the required fields.
  • Enter HTML item name
    HTML block name, is mandatory to be filled in for the default language.
  • Specific class
    block's CSS class.
  • HTML content
    HTML content.

Added block will appear in the list of blocks, as well as in the list of available content while creating menu blocks.

JX Mega Menu Links

In this section we will show how to create custom links in the Mega Menu.

The module has a table listing all the available links. You can also add a new link by clicking the '+' button in the top right of the table.

In the form that appears, fill in the required fields.
  • Enter Link name
    link name, is mandatory to be filled in for the default language.
  • Enter Link URL
    link URL, is mandatory to be filled in for the default language.
  • Specific class
    block's CSS class.
  • Open in new window
    open link in a new window.

Added link will appear in the list of links, as well as in the list of available content while creating menu blocks.

JX Mega Menu Banners

In this section we will explain how to create banners in the Mega Menu.

The module has a table listing all the available banners. You can also add a new banner by clicking the '+' button in the top right of the table.

In the form that appears, fill in the required fields.
  • Select a file
    select a file, is mandatory to be filled in for the default language.
  • Enter Banner name
    banner title, is mandatory to be filled in for the default language.
  • Enter Banner URL
    link URL, is mandatory to be filled in for the default language.
  • Specific class
    block's CSS class.
  • Public Title
    public banner title.
  • Description
    set the description of the banner.
  • Open in new window
    open link in a new window.

Added banner will appear in the list of banners, as well as in the list of available content while creating menu blocks.

JX Mega Menu Video

In this section we will explain how to add a video in the Mega Menu.

The module has a table listing all the available videos. You can also add a new video by clicking the '+' button in the top right of the table.

In the form that appears, fill in the required fields.
  • Enter Video Name
    video title (the field is required).
  • Enter Video URL - add video link in the formats described below:
    • If this is a YouTube video, click on Embed and copy the code between the quotes for https://www.youtube.com/embed/video_id
    • If this is a Vimeo video, click on Share icon and in the Embed section copy the source code between the quotes for http://player.vimeo.com/video/video_id

Added video will appear in the list of videos, as well as in the list of available content while creating menu blocks.

JX Mega Menu Map

In this section we will explain how to add a map in the Mega Menu.

The module has a table listing all the available maps. You can also add a new map by clicking the '+' button in the top right of the table.

In the form that appears, fill in the required fields.
  • Enter Map item name
    the title of the map.
  • Enter Map latitude
    set a latitude value.
  • Enter Map longitude
    set a longitude value.
  • Marker
    adding a custom marker.
  • Enter Map scale
    the scale of the map (used 8 by default).
  • Map description
    set the description of the map.

Added map will appear in the list of maps, as well as in the list of available content while creating menu blocks.

JX Search 1.1.0

This module is an extended search version that allows you to select a specific category for searching within its content. You can also change the category after defining the query. It also provides a possibility to set the additional product information display (description/price/manufacturer, etc.), and define the search results container layout, e.g., you can divide the results into a few sections with the controls (pagination, next/previous/show all). All the module settings are available in the main admin panel.

Installation and Deleting

The module is installed and deleted like any other PrestaShop module.

Module configuration

After module has been installed you can set it up on the module configuration page.

  • Enable Ajax Search - enables live search in a drop-down.
  • Minimum query length - number of symbols to start the result display.
  • Search in children category - enable/disable searching in children categories.
  • Number of shown results - number of products that shows up in the results section (number of products per page for the "pager" or "navigation" mode).
  • Display "Show All" button - displays the 'Show all' button below the results section, then click on it displays all found results.
  • Display pager - divides results into pages (depends on the 'Number of shown results' field value) and displays links to them.
  • Display navigation - shows the Previous/Next buttons.
  • Position of navigation - hook(s), to show the navigation (top/both/bottom options are available).
  • Highlight query result - highlights the text that matches search query.
  • Display image in Ajax search - shows product images in the results section.
  • Display description in Ajax search - shows product description in the results section.
  • Display prices in Ajax search - shows product price in the results section.
  • Display reference in Ajax search - shows product reference in the results section.
  • Display manufacturer in Ajax search - shows product manufacturer in the results section.
  • Display suppliers in Ajax search - shows product suppliers in the results section.
  • Blog search - enable/disable search by blog posts.

Some parameters might differ depending on the combination used.