Monday, March 10, 2014

Redirect non-www to www using generic code .htaccess www to non www

Redirect non-www to www using generic code .htaccess

Loads of people wants to redirect their sites from non-www domain to www but can’t find the way. So here is the solution to do that using .htaccess file(only apache users)
And the good thing is this is generic code, so you have only copy and paste it to your .htaccess file and all done. Do not need to add your domain name.
Non-www to www redirect
RewriteCond %{HTTP_HOST} ^www.%{HTTP_HOST}/
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L]
www to non-www redirect
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Thursday, February 27, 2014

Adding the Google Analytics code to OpenCart


  1. Once you have your Google Analytics code log into your OpenCart Dashboard
  2. Go to System > Settings
  3. Choose your store and click “edit
  4. Go to the server tab and scroll to the bottom
  5. Find the Category for Google Analytics Code and paste your code in the text box If you are not familiar how to get your Google Analytics code please see our article on Installing Google Analytics 
  1. opencart_google_analytics

  2. Click “Save

Wednesday, February 26, 2014

change opencart order email content as our wish

You can modify the content by editing the following template file:
/catalog/view/theme/default/template/mail/order.tpl
(assuming that you are using the default template)
But if you want to modify the subject and other stuff, you'll need to edit the order Model file:
/catalog/model/checkout/order.php
then find
$mail->setSubject($subject);
and set the $subject to whatever you want :)

sends the same email to the admin as the customer 1.5.x work more like 1.4.x

Do the following....

(1.5.x ONLY!)
1. EDIT: catalog/model/checkout/order.php

2. FIND (~LINES 475 - 488) (Be sure its under the "// Admin Alert Mail" line)
CODE: SELECT ALL
$mail = new Mail(); 
$mail->protocol = $this->config->get('config_mail_protocol');
$mail->parameter = $this->config->get('config_mail_parameter');
$mail->hostname = $this->config->get('config_smtp_host');
$mail->username = $this->config->get('config_smtp_username');
$mail->password = $this->config->get('config_smtp_password');
$mail->port = $this->config->get('config_smtp_port');
$mail->timeout = $this->config->get('config_smtp_timeout');
$mail->setTo($this->config->get('config_email'));
$mail->setFrom($this->config->get('config_email'));
$mail->setSender($order_info['store_name']);
$mail->setSubject($subject);
$mail->setText($text);
$mail->send();


3. REPLACE WITH:
CODE: SELECT ALL
// HTML
$template->data['text_greeting'] = $language->get('text_new_received') . "\n\n";
$template->data['invoice_no'] = '';
$template->data['text_invoice_no'] = '';
if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/mail/order.tpl')) {
   $html = $template->fetch($this->config->get('config_template') . '/template/mail/order.tpl');
} else {
   $html = $template->fetch('default/template/mail/order.tpl');
}
$subject = sprintf($language->get('text_new_subject'), html_entity_decode($this->config->get('config_name'), ENT_QUOTES, 'UTF-8'), $order_id . ' (' . $order_total . ')');
$mail->setSubject($subject);
$mail->setTo($this->config->get('config_email'));
$mail->setHtml($html);
$mail->send();

opencart 1.5.6 Additional Product Images Not Working - Solution


It is an issue of opencart new feature openbay.


Edit admin\view\template\extension\openbay_links.tpl


Replace

id="images"


with


id="openbay_images"


ie openbay_links.tpl file Should be in given format


<div id="tab-openbay" style="display:none;">
    <table class="list" id="openbay_images">
        <thead>
        <tr>
            <td class="left"><?php echo $lang_marketplace; ?></td>
            <td class="center"><?php echo $lang_status; ?></td>
            <td class="right"><?php echo $lang_option; ?></td>
        </tr>
        </thead>
        <tfoot>
            <?php foreach ($markets as $market) { ?>
            <tr>
                <td class="left"><?php echo $market['name']; ?></td>
                <td class="center"><img style="display:inline; position:relative; top:3px;" src="view/image/<?php if($market['status'] == 1){echo'success';}else{echo'delete';} ?>.png" /></td>
                <td class="right">
                    <?php if($market['href'] != ''){ ?>
                        <a href="<?php echo $market['href']; ?>"<?php if($market['target'] != ''){ echo' target="'.$market['target'].'"'; } ?>><?php echo $market['text']; ?></a>
                    <?php }else{ ?>
                        <?php echo $market['text']; ?>
                    <?php } ?>
                </td>
            <?php } ?>
        </tfoot>
    </table>
</div>

Remove help link from admin


you can remove the below code from FTP

/admin/view/template/common/header.tplYou can remove




<li id="help"><a class="top"><?php echo $text_help; ?></a>

        <ul>

          <li><a href="http://www.opencart.com" target="_blank"><?php echo $text_opencart; ?></a></li>

          <li><a href="http://www.opencart.com/index.php?route=documentation/introduction" target="_blank"><?php echo $text_documentation; ?></a></li>

          <li><a href="http://forum.opencart.com" target="_blank"><?php echo $text_support; ?></a></li>

        </ul>

      </li>

change order_id for Invoice number opencart

save the code to magic.php

<?php
include ("config.php");


$link = mysql_connect(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD);
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
else { 
mysql_select_db(DB_DATABASE);
}

$magic_table = DB_PREFIX . "order";

$magic = $_POST['magic'];

if ($magic!==""){
$query="ALTER TABLE `$magic_table` AUTO_INCREMENT = $magic";
mysql_query($query);
}


$query = "SELECT Auto_increment  FROM information_schema.tables  WHERE table_name='$magic_table' AND table_schema = DATABASE()";
$result = mysql_query($query);
$row = mysql_fetch_row($result);
$magic = $row[0];

?>
<html><head><title>HelderIM : OpenCart : (Re)set ordernumber</title></head><body>
<h1>(Re)set Ordernumber (by HelderIM)</h1>
<p>
This tool reads the next ordernumber that will be generated. You can change the ordernumber by entering a new number and press "SET". It does not change ordernumbers already generated.
</p>
<p>
This tool is tested on OpenCart 1.5.2.1 using MySQL.<br>
Delete this tool from your website after usage. It has no protection whatsoever!!!!
</p>

<?php
echo '<form name="EQ" action="magic.php" method="post">';
echo "<input name='magic' type='text' value='". $magic . "'/><br>";
echo "<input type='submit' value='SET'/></form>";
echo "</body></html>";

?>


upload it to your store ftp

then goto

yourstore.com/magic

There you can enter your starting number

Removing "Powered By Open Cart" from emails footer



just change to your side easy , no need delete any text .


 

GO to : catalog/language/english/mail/ 



find " open cart , than change to your site name , then done .



OR

find 

$_['text_powered'] 

in

catalog/language/english/common/footer.php

find 

$_['text_new_powered']

in

catalog/language/english/mail/order.php

and change it.

to change the size and font go to

catalog/view/theme/yourtemplate/stylesheet/stylesheet.css

find #powered


change the opencart logo and footer in the admin panel ?





easiest way to do this would be just to replace the main logo for admin site:
CODE: SELECT ALL
/public_html/admin/view/image/logo.png


for footer, edit the file:
CODE: SELECT ALL
/public_html/admin/language/english/common/footer.php

Remove Add to Cart button for Out of Stock items

There are several ways of dealing with Out of Stock products. Some of us don't want customers to be able to buy products that are out of stock.

OpenCart has an option AP > System > Settings > {Edit store} > Option > Stock, mark Stock Checkout as No) that disallows customers to check out if they have an out of stock item in their shopping cart. This is a start, but for many of us it's just not consequential!

Hence this mod. This extension removes the Add to Cart button and replaces it with an "Out of stock" message for out-of-stock products. This way, customers can't even place an out-of-stock product into their shopping carts.

Because this is a vQmod, no core files are touched, and the changes should carry over to the next version.

Requirements

  1. This is a vQmod for Opencart. Hence you need OpenCart and vQmod preinstalled.
  2. This vQmod is made for the default theme. Hence you should have the default theme as the active theme for this to work. While you can very easily modify this for other themes, the out-of-the-box support is only for default theme. If you don't know how, and need me to do paid customization, please PM me.
  3. Please note that this mod applies to all pages and modules shipped in Opencart core. But if you have an additional module or page containing an Add to Cart button, then unfortunately this mod will not affect it. You can modify the mod to affect that module/page, but the out-of-the-box support is only for OC default package. If you don't know how to make changes, and need me to do paid customization, please PM me.

Installation
Upload the contents of the uploads folder to your shop's root folder.

How do I change the color/size/font of the out of stock message?
Use CSS to style the class outofstock
(e.g. by using http://www.opencart.com/index.php?route ... on_id=6241 )
Sample css

CODE: SELECT ALL
.outofstock {
color: red;
font-size: 12px;
}


How do I change the text of the out of stock message?
AP > System > Localisation > Stock Statuses > {Edit Out of Stock}

Advertising
This free mod adds my link to your English site's footer (next to the Opencart link). It would be nice if you don't remove it. 

Extension page: http://www.opencart.com/index.php?route ... on_id=7095

SEO friendly URLs in OpenCart without modifying .htaccess or extension

The URLs play a very important role in SEO. I don’t know about old versions of OC, but in 1.5.X onward, OC too has SEO friendly URLs facility.
I read on many blogs about OpenCart’s SEO URLs. I found some coding for modification of .htaccess file or usage of extensions. But I want all the OpenCart users to know that SEO URLs are possible without performing any of these actions. Also you don’t need to perform any mod or coding.
Just perform these steps..
Enable .htaccess file
By default, OpenCart comes with “.htaccess.txt” file. Simply rename it to “.htaccess” . DON’T modify anything inside that file.
By default, the .htacess file should contain :
# 1.To use URL Alias you need to be running apache with mod_rewrite enabled.

# 2. In your opencart directory rename htaccess.txt to .htaccess.

# For any support issues please visit: http://www.opencart.com

Options +FollowSymlinks

# Prevent Directoy listing
Options -Indexes

# Prevent Direct Access to files
<FilesMatch "\.(tpl|ini|log)">
Order deny,allow
Deny from all
</FilesMatch>

# SEO URL Settings
RewriteEngine On
# If your opencart installation does not run on the main web folder make sure you folder it does run in ie. / becomes /shop/

RewriteBase /
RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L]
RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L]
RewriteRule ^download/(.*) /index.php?route=error/not_found [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !.*\.(ico|gif|jpg|jpeg|png|js|css)
RewriteRule ^([^?]*) index.php?_route_=$1 [L,QSA]

### Additional Settings that may need to be enabled for some servers
### Uncomment the commands by removing the # sign in front of it.
### If you get an "Internal Server Error 500" after enabling any of the following settings, restore the # as this means your host doesn't allow that.

# 1. If your cart only allows you to add one item at a time, it is possible register_globals is on. This may work to disable it:
# php_flag register_globals off

# 2. If your cart has magic quotes enabled, This may work to disable it:
# php_flag magic_quotes_gpc Off

# 3. Set max upload file size. Most hosts will limit this and not allow it to be overridden but you can try
# php_value upload_max_filesize 999M

# 4. set max post size. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value post_max_size 999M

# 5. set max time script can take. uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_execution_time 200

# 6. set max time for input to be recieved. Uncomment this line if you have a lot of product options or are getting errors where forms are not saving all fields
# php_value max_input_time 200

# 7. disable open_basedir limitations
# php_admin_value open_basedir none
In case you have installed OpenCart in a directory, you have to make one modification in .htaccess . Find this line in it – RewriteBase /. Make it – RewriteBase /your-directory-name.
So, if I run Opencart on www.mywebsite.com, I will simply rename the .htaccess.txt file to .htaccess.
And, if I run OpenCart on www.mywebsite.com/store, I will rename the file as well as change the line to RewriteBase /store.
Enabling SEO URLs in OpenCart
SEO URLs are turned off by default. We have to enable them first.
1. Go to Admin Panel -> System -> Settings.
2. Click on “Edit” link on the right side of the store name.
Store Settings
3. Click on “Server” tab. You will find an option – “Use SEO URL’s”. Click on “Yes” in front of it. Save the options.
Enabling SEO URLs in OpenCart admin
Adding SEO slug for products
Now we have to add SEO keyword (or slug) for each product.
1. Go to Catalog -> Products. Click on “Edit” on the right side of the product which you SEO URL for.
2. Click on the “Data” tab.
Adding SEO URL for a product in OpenCart
3. You will find one field named “SEO Keyword:”. Enter the desired link keyword there. The URL of your product will be storelink/keyword.
Do not include spaces and capital letters in it. It will make your URLs difficult to be handled. Also, while browsing, you will see the URLs like storelink/category1/category2/keyword. But the default canonical link will always be storelink/keyword. This will help search engines to include the proper product URLs instead of /index.php?route=product/product&product_id=51.

how to make Zip code postal field required











Go to System/Localisation/Countries find country, "Edit" and 



Postcode Required: yes or no