X-Cart reBOOT Template

X-Cart reBOOT Template




X-Cart reBOOT Template

X-Cart reBOOT is a multi-purpose, fully responsive template based on the most popular HTML, CSS, and JS framework of them all, Bootstrap.

Version: 4.7.9.1 Check for Updates

Released: 14th May 2018

Compatibility: X-Cart v4.7.9 Gold / Gold Plus / Platinum

Terms & Conditions: Click here to read

Support: https://www.xcartmods.co.uk/reboot

© 2018 www.xcartmods.co.uk

Requirements...

  • X-Cart v4.7.9 Gold / Gold Plus / Platinum
  • Basic - Intermediate HTML / CSS / Smarty knowledge
  • Good working knowledge of X-Cart

Recommended...

  • PHP v7.x
  • Apache v2.4 with mod_deflate enabled
  • gd, mbstring and mysqli extensions for PHP

If you are unsure, upload and run reboot_check.php


INSTALLATION


Installation can be performed by us for $100 (FTP and X-Cart admin details are required).

Contact sales@xcartmods.co.uk if you require this service.

If you are upgrading from an earlier reBOOT version, move your existing /skin/reboot folder to /skin_backup

Also, remove any of the previous reBOOT version installation steps before proceeding.


1 Upload all files from the local /upload folder to your store root folder.

Ensure rss_news.xml, rss_products.xml and the /captcha folder are writable (CHMOD 777).


2 In Admin > Tools > Patch/Upgrade

Underneath 'Apply SQL patch', browse to /patches/reboot_patch_install_template.sql and press 'Apply'.

Underneath 'Apply SQL patch', browse to /patches/reboot_patch_install_template_languages.sql and press 'Apply'.


3 In auth.php

BEFORE...

?>

INSERT...

# Reboot Template
if ($active_modules['Reboot'] && $alt_skin_info['alt_schemes_skin_name'] == 'reboot') {
    include './reboot_counters.php';
    if ($active_modules['Manufacturers'] && $config['Reboot']['reboot_home_manufs'] == "Y") {
        include './reboot_get_manufacturers.php';
    }
    if ($config['Reboot']['reboot_home_featured_cats'] != "") {
        include './reboot_get_featured_categories.php';
    }
    if ($config['Reboot']['reboot_blog_addon'] == "Y") {
        include './reboot_blog_latest.php';
    }
    if ($config['Reboot']['reboot_testimonials_addon'] == 'Y') {
        include './reboot_get_testimonials.php';
    }
    $php1 = phpversion();
    $php2 = $php1[0];
    if ($config['Reboot']['reboot_html_minifier'] == 'Y' && $php2 == 7) {
        include './reboot_html_minifier.php';
    }
}
# /Reboot Template

4 In recommends.php

BEFORE...

if (!empty($recommends)) {

INSERT...

# Reboot Template
if ($active_modules['Reboot'] && $alt_skin_info['alt_schemes_skin_name'] == 'reboot' && !empty($recommends))
foreach ($recommends as $rid => $prod) {
    $prod_tmp = func_select_product($prod['productid'], (isset($user_account) && isset($user_account["membershipid"])) ? max(intval($user_account["membershipid"]), 0) : 0);
    $recommends["$rid"]['avail'] = $prod_tmp['avail'];
    $recommends["$rid"]['descr'] = $prod_tmp['descr'];
    $recommends["$rid"]['mark_as_new'] = $prod_tmp['mark_as_new'];
}
# /Reboot Template

5 In include/search.php

REPLACE...

        for ($i = 5; 50 >= $i; $i = $i + 5) {
            $perPageValues[] = $i;
        }

WITH...

        # Reboot Template
        if ($active_modules['Reboot'] && $alt_skin_info['alt_schemes_skin_name'] == 'reboot') {
            for ($i = 3; 30 >= $i; $i = $i + 3) {
                $perPageValues[] = $i;
            }
            if ($config['Reboot']['reboot_search_results_view_all'] == 'Y') {
                $perPageValues[9999] = '9999';
            }
        } else {
            for ($i = 5; 50 >= $i; $i = $i + 5) {
                $perPageValues[] = $i;
            }
        }
        # /Reboot Template

6 In modules/Manufacturers/customer_manufacturers_list.php

BEFORE...

        $smarty->assign('manufacturers', $manufacturers);

INSERT...

        # Reboot Template
        if($manufacturers) {
            foreach($manufacturers as $key=> $manufacturer)
            $manufacturers[$key]["tmbn_url"] = func_query_first_cell("SELECT image_path FROM $sql_tbl[images_M] WHERE id=".$manufacturer["manufacturerid"]);
            foreach($manufacturers as $key=> $manufacturer)
            $manufacturers[$key]["image_x"] = func_query_first_cell("SELECT image_x FROM $sql_tbl[images_M] WHERE id=".$manufacturer["manufacturerid"]);
            foreach($manufacturers as $key=> $manufacturer)
            $manufacturers[$key]["image_y"] = func_query_first_cell("SELECT image_y FROM $sql_tbl[images_M] WHERE id=".$manufacturer["manufacturerid"]);
        }
        # /Reboot Template

7 In modules/Upselling_Products/related_products.php

BEFORE...

if (!empty($product_links))

INSERT...

# Reboot Template
if ($active_modules['Reboot'] && $alt_skin_info['alt_schemes_skin_name'] == 'reboot' && !empty($product_links))
foreach ($product_links as $pid => $prod) {
    $prod_tmp = func_select_product($prod['productid'], (isset($user_account) && isset($user_account["membershipid"])) ? max(intval($user_account["membershipid"]), 0) : 0);
    $product_links["$pid"]['avail'] = $prod_tmp['avail'];
    $product_links["$pid"]['descr'] = $prod_tmp['descr'];
    $product_links["$pid"]['mark_as_new'] = $prod_tmp['mark_as_new'];
}
# /Reboot Template

8 In skin/common_files/common_templates.tpl

BEFORE...

{else}

  {if $usertype eq 'C'}

INSERT...

{* Reboot Template *}

{elseif $main eq 'reboot_glossary'}
{include file='admin/reboot_glossary.tpl'}

{elseif $main eq 'reboot_blog'}
{include file='custom/reboot_blog.tpl'}

{elseif $main eq 'reboot_manager'}
{include file='admin/reboot_manager.tpl'}

{elseif $main eq 'reboot_testimonials_admin'}
{include file='admin/reboot_testimonials.tpl'}

{elseif $main eq 'reboot_testimonials'}
{include file='modules/Testimonials/testimonials.tpl'}

{elseif $main eq 'reboot_testimonial_add'}
{include file='modules/Testimonials/testimonial_add.tpl'}

{* /Reboot Template *}

9 If using X-Cart GOLD or GOLD PLUS...

In skin/common_files/single/home.tpl

OR

If using X-Cart PLATINUM...

In skin/common_files/single/home.tpl AND skin/common_files/admin/home.tpl

AFTER...

{include file="rectangle_bottom.tpl"}

INSERT...

{* Reboot Template *}
{if $active_modules.Reboot && $alt_skin_info.alt_schemes_skin_name eq 'reboot' && $main eq 'configuration' && $option eq 'Reboot'}
{include file='admin/reboot_settings.tpl'}
{/if}
{* /Reboot Template *}

10 If using X-Cart GOLD or GOLD PLUS...

In skin/common_files/single/menu_box.tpl

OR

If using X-Cart PLATINUM...

In skin/common_files/single/menu_box.tpl AND skin/common_files/admin/menu_box.tpl

BEFORE...

</ul>

INSERT...

{* Reboot Template *}
{if $active_modules.Reboot && $alt_skin_info.alt_schemes_skin_name eq 'reboot' && $main ne 'patch'}
{include file='admin/reboot_menu_box.tpl'}
{/if}
{* /Reboot Template *}

11 IMPORTANT - In Admin > Tools > Maintenence

Click the 'Force cache generation' button underneath 'Force cache generation'

Click the 'Rebuild category indexes' button underneath 'Rebuild category indexes'

Click the 'Clear' button underneath 'Clear X-Cart cache'

Click the 'Regenerate' button underneath 'Re-generate the image cache'


12 In Settings > General Settings > Appearance

Under 'Select skin to use', select 'reBOOT v4 (Responsive)' and apply.


INSTALLATION COMPLETE

You should now see the reBOOT skin on your store front end.

A new 'reBOOT' tab should appear in the X-Cart admin header menu.

Click the 'Template Settings' link to start tweaking...



RECOMMENDED ADDITIONAL STEPS


1 In admin/db_backup.php around line 236...

REPLACE...

            if (!in_array($_table, $sql_tbl))
                continue;

WITH...

//            if (!in_array($_table, $sql_tbl))
//                continue;

(This ensures all tables, including non-standard X-Cart tables, will be exported when performing a database backup from admin)


2 Add the code from /misc/htaccess.txt to the end of your store root .htaccess file.

(This will enable GZIP compression (if your server supports it) and other performance related aspects)


3 Upload /misc/robots.txt to your store root. Uncomment the sitemap line and change the sitemap URL path.

(As recommended by X-Cart. Click here for more information)


4 Change the default passwords in testimonials_admin.php and uploads/manager.php (line 8)

(Passwords must be at least 8 characters and must contain at least 1 letter, 1 digit and 1 special character)


5 To display the general FAQs, in your FAQ static page, add the following code...

{include file="custom/faqs/general_faq.tpl"}

(By default you can add to skin/common_files/pages/en/faq.html)


6 To display the image gallery, create a gallery static page and add the following code...

{include file="custom/widgets/widget_image_gallery.tpl"}

(Upload your images and/or folders of images to uploads/Gallery)


7 If you haven't done so already, protect your /admin folder from unauthorised access.

You can usually do so via your hosting control panel, or via .htaccess, example tool.

Or, if you have a fixed IP address, in /admin/.htaccess add...

order deny,allow
deny from all
allow from 11.22.33.44
allow from 22.33.44.55



ADDONS

The following optional addons / features are available, which require separate installation.

Check your local /addons folder for installation instructions for each addon.


Allows you to use mega menus and dropdown / flyout menus at the same time in your header menu. Menus can also be tweaked further.

Allows you to specify featured categories, which can be displayed in various styles, on the homepage, or anywhere else.

Enables you to update title tags and meta descriptions in bulk in admin.

Available on products, categories, manufacturers and static pages listings.

You can set limits on the title and meta description character lengths if you wish.

For use with the Clean URLs module only.

Allows your customers to post testimonials and displays them on a dedicated page with pagination and per page selector.

It also includes an easy to use administration section.

Allows you to add upselling products in bulk, from a category or a manufacturer.

You can choose how many upselling products to display and they can be random or not.

The standard upselling products module will still function alongside this addon.

Informs you which kind of device your customers ordered with - Mobile, Tablet or Desktop.

You can also display specific content in the store according to which device type your visitors are using.

Generate custom forms with ease, with automated email sending. No PHP skills required.

Splits manufacturers listing pages into A-Z. Handy if you have hundreds of manufacturers.

Simple password protection for static pages of your choice.

This displays extra product data on the product pages.

  1. Product Banners - up to 3 rotating banners to alert customers of promotions or important information.
  2. Product FAQs - up to 10 questions and answers
  3. Product Downloads - up to 5 files with optional descriptions
  4. Product Videos - up to 5 videos, either YouTube, Vimeo or local video files (MP4 & WEBM formats)
  5. Product Audio - up to 20 tracks (MP3 format). Can be displayed individually or in a playlist

The data can be made common for multiple products if you wish.

Advanced HTML editors with image and file uploaders, CDN support and more.

Adds unobtrusive text of your choice to the footer of the homepage, category and manufacturer pages.

Optional scrollable content box.

Seamlessly integrates Wordpress into the store.



FAQ


You can download the latest version here.

You can post a ticket here. Please include your order ID. Or, you can post a message on the discussion forums here or here.

Live chat support is often available here.

This is usually due to the SQL patches having not being applied correctly or fully (step 2).

Try re-applying the SQL patches, then clear the X-Cart cache.

It could also mean that files are missing, so ensure that you have uploaded all the necessary files.

In the first instance, check the latest PHP logs in /var/log which should help you track down the issue.

You can also audit your Smarty templates by running Tools > Maintenance > "Check the syntax of all templates"

See here for more info about Smarty v3.

This may happen after changing settings in Wordpress. Ensure /blog/.htaccess is blank, or set the permissions on that file to not writable (CHMOD 444).

Check the notes in the blog addon install.txt



RESOURCES






X-Cart and the X-Cart logo are registered trademarks of Qualiteam Software.

© 2018 www.xcartmods.co.uk