Making your Shipping Policy more visible
Relevance: Any version of Zen Cart™
Cost: Free, but
donation appreciated
First, the basics. Is your shipping policy written down?
For instance, are the preconditions for free shipping
clearly stated on your site?
If not, let's fix this right now.
If you haven't done so yet,
create your template. I'll assume it's called "custom".
Copy the file
includes/languages/english/html_includes/define_shippinginfo.php
to
includes/languages/english/html_includes/custom/define_shippinginfo.php
Go into your admin page, and select Tools ->Define Pages Editor.
Select define_shippinginfo.php. Now if you've enabled the Information
sidebox, you will see what you've typed in under the link
"Shipping and Returns."
(To enable this sidebox, go into Tools->Layout Boxes Controller and turn sideboxes/information.php on.)
So now that we've captured this information, how can we make it
available in a non-intrusive way on the first checkout page when
a shipping method is being selected?
Copy the file
includes/templates/template_default/templates/tpl_checkout_shipping_default.php
to
includes/templates/custom/templates/tpl_checkout_shipping_default.php
Look for the header TABLE_HEADING_SHIPPING_METHOD. After this tag is
closed, add a link to the shipping page you just created.
Now the trivial way to do this would just be to add a link to
the shipping page as a complete shopping cart page, i.e.
<?php echo '<a href="' . zen_href_link(FILENAME_SHIPPING) . '">' . BOX_INFORMATION_SHIPPING . '</a>'; ?><br /><br />
and there's nothing wrong with this approach, but my preference
would be to open
just the shipping text in a separate,
small popup window. You can do this as follows:
<?php
$shipping_policy_page = zen_get_file_directory(DIR_WS_LANGUAGES . $_SESSION['language'] . '/html_includes/', FILENAME_DEFINE_SHIPPINGINFO, 'false');
$policy = @file($shipping_policy_page);
?>
<script language="javascript">
function showship() {
my_window = window.open ("", "mywindow1","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=350,height=400");
<?php
echo 'my_window.document.write("<html><head><title>'. BOX_INFORMATION_SHIPPING . '</title></head><body>");';
foreach ($policy as $line) {
$line = trim($line);
echo 'my_window.document.write("' . $line . '");' . "\n";
}
echo 'my_window.document.write("</body></html>");';
echo 'my_window.document.close();';
echo 'return;';
?>
}
</script>
<?php
echo '<a href="javascript:showship()">' . BOX_INFORMATION_SHIPPING . '</a>';
?>
<br /><br />
This gives you a great looking little window containing your shipping
policy.
This tip was developed in June 2007, and distributed
in
my newsletter in Issue #1.
|
|
If the information you learned reading this site is helping your store make
more money, please consider making a donation. Thank you!
|
Want more Zen Cart?
Tips and Tricks
Contributions
Extensions
Custom Software
Newsletter