If you're using Magento version 1.7.0.2, you're affected by the July 28 changes of the Unites States Postal Service that affect Priority Mail and Express Mail Shipping options.  When you try to connect your Magento store to the USPS production server you get the error: “This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us”, or, depending on what shipping options you have selected in the shipping configuration, you may only see Media Mail and Library Mail.  Usually what this means is that you need to install a Magento patch PATCH_SUPEE-1868_CE_1.7.0.2_v1.sh in order to fix the USPS shipping options.

My provider doesn't allow ssh shell access to my shared server unfortunately so my first attempt at installing the patch was resorting to writing a short perl script to run the patch shell file.  No dice, no matter what I did I couldn't get the thing to do it's magic.  Apparently my provider has the machine so locked down there is no way for me to run the patch and they refused to run it, even though I provided a link to the official patch and explained that it only affects my instance of the software and they can read the script in clear text.  No way to convince them to do it.  It's a security problem they say.  Oooooooooooo-K fair enough.

So I get this bright idea, don't know if it's really going to work, but I decided to install a Ubuntu Linux virtual machine on my local PC and install the exact same Magento version.   Once it's up and running, I applied the patch to my virtual machine's copy of Magento.  The nice things is when the patch is done, the file app/etc/applied.patches.list contains the list of files you need to do the patch by hand.  I copied the files off the virtual machine onto my production store and the USPS shipping options were there.  Here is a list of the files I had to copy:

patching file app/code/core/Mage/Paypal/Model/Express/Checkout.php
patching file app/code/core/Mage/Usa/Helper/Data.php
patching file app/code/core/Mage/Usa/Model/Shipping/Carrier/Usps.php
patching file app/code/core/Mage/Usa/Model/Shipping/Carrier/Usps/Source/Method.php
patching file app/code/core/Mage/Usa/etc/config.xml
patching file app/code/core/Mage/Usa/sql/usa_setup/upgrade-1.6.0.1.1.1-1.6.0.1.1.2.php
patching file app/etc/applied.patches.list

Custom Carpentry Connecticut

If you are looking for someone to do custom carpentry in Connecticut, I would definitely recommend V&B Woodworking, LLC in Plainville.  Vinny from V&B handles all kinds of custom type carpentry jobs from custom cabinetry, custom woodwork, to house additions and decks.  I had him add a garage bay onto my house after I moved in, he handled everything and did an awesome job.  I also had him remodel my main bathroom with tile in the shower, on the floor, and custom made cabinets and wainscoting.  He isn't your typical contractor hack, he takes the time to do it right and make it look good and is licensed and insured.

Give Vinny a call if you have any custom carpentry work you need done and tell him Jay sent you ;)

V&B Woodworking, LLC  -  860-637-7740

After working with Magento for a bit, there are a few things you may want to change right after you install it.

  • Change the logo.  Upload your image file to skin/frontend/default/default/images.   In the admin panel click System->Configuration->Design and click on the Header section.  Change the name of the image file in Logo Image Src to your file name.  Click Save
  • Change the copyright message.  In the same design panel as above you can click on Footer and change your copyright and welcome message as well.
  • While you're in the Footer section, remove the Keep Magento Healthy message by placing the following code in the Miscellaneous HTML:

    <style>p.bugs {display: none;}</style>
  • Change the Meta information.  In the same design panel, click HTML Head and change the default meta information.
  • Get rid of the Poll
  • Change the back to school graphic.
  • Rename errors/local.xml.sample to local.xml if you get errors like:
    Exception printing is disabled by default for security reasons.
    Error log record number: 572048735664
  • Display products on frontend page: In the category manager, create a category specifically for the frontend page, take note of the ID number and go into CMS->Pages, select the home page, click Content and add the following code to the page, don't forget to substitute the ID of your new category for the 999:
    {{block type="catalog/product_list" category_id="999" template="catalog/product/list.phtml"}}
  • UPDATE FOR CE 1.9. if you need to display products on your front end and your using the default rwd package, unless you make some changes to your list.phtml file you won't get the products to display on the frontend properly.  See this thread on adding products to the Magento 1.9 frontend.

 

  • If you get the error: Could not determine temp directory, please specify a cache_dir manually, set the cache_dir variable by modifying the file lib/zend/cache/backend/file.php and set the cache_dir to 'tmp/'. Also make sure to create the tmp directory in the Magento root.


 

References:

Products don't show up on the frontend.

Turning off Magento blocks.

 

 

Background

What a title huh?  After writing JStore for my brother's sports memorabilia site I can appreciate the amount of work that goes into writing good e-commerce software.  When I have time I like to browse around and see what other people are using, especially when it's feature laden and free.  I have other motives but we'll talk about that in another article.  One piece of e-commerce software I came across that seems to be very popular with on-line stores is Magento Community Edition.  My hosting is with Fastwebhost and I have the Softaculous installer that had Magento as an option, so I decided to play with it a bit to see how easy it is to set-up and use.

Problems right from the start.

The install went without any issues using Softaculous but when I tried to load the home page (referred to as the Front-End in Magento) I had some errors pop up.

The PDO extension is required for this adapter but the extension is not loaded
Trace: #0 /home/offerme/public_html/mstore/lib/Zend/Db/Adapter/Abstract.php(247): Zend_Db_Adapter_Pdo_Abstract->setFetchMode(2) #1 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource.php(165): Zend_Db_Adapter_Abstract->__construct(Array) #2 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource.php(110): Mage_Core_Model_Resource->_newConnection('pdo_mysql', Object(Mage_Core_Model_Config_Element)) #3 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource/Db/Abstract.php(320): Mage_Core_Model_Resource->getConnection('core_write') #4 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource/Db/Abstract.php(350): Mage_Core_Model_Resource_Db_Abstract->_getConnection('write') #5 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource/Db/Abstract.php(335): Mage_Core_Model_Resource_Db_Abstract->_getWriteAdapter() #6 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource/Db/Abstract.php(360): Mage_Core_Model_Resource_Db_Abstract->_getReadAdapter() #7 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Resource/Db/Collection/Abstract.php(134): Mage_Core_Model_Resource_Db_Abstract->getReadConnection() #8 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Config.php(1348): Mage_Core_Model_Resource_Db_Collection_Abstract->__construct(Object(Mage_Core_Model_Resource_Website)) #9 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Config.php(1380): Mage_Core_Model_Config->getModelInstance('core_resource/w...', Object(Mage_Core_Model_Resource_Website)) #10 /home/offerme/public_html/mstore/app/Mage.php(490): Mage_Core_Model_Config->getResourceModelInstance('core/website_co...', Object(Mage_Core_Model_Resource_Website)) #11 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Abstract.php(208): Mage::getResourceModel('core/website_co...', Object(Mage_Core_Model_Resource_Website)) #12 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/Abstract.php(213): Mage_Core_Model_Abstract->getResourceCollection() #13 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/App.php(608): Mage_Core_Model_Abstract->getCollection() #14 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/App.php(466): Mage_Core_Model_App->_initStores() #15 /home/offerme/public_html/mstore/app/code/core/Mage/Core/Model/App.php(349): Mage_Core_Model_App->_initCurrentStore('', 'store') #16 /home/offerme/public_html/mstore/app/Mage.php(683): Mage_Core_Model_App->run(Array) #17 /home/offerme/public_html/mstore/index.php(87): Mage::run('', 'store') #18 {main}

I looked around a fair bit and tried a few suggestions that I found on the net to no avail. So I turned to the support staff at Fastwebhost and they were able to make the necessary modifications to fix my issue very quickly.  They didn't really tell me exactly what they did, I'm pretty sure they just added these settings to my php.ini file.

extension=pdo.so
extension=pdo_sqlite.so
extension=pdo_mysql.so

With that issue fixed I moved on to creating a test category and product item in the admin interface.  When it came time to add images to the item I got the dreaded Upload HTTP Error in red when I hit the button to load them.  After searching for quite some time for ways to resolve this error I finally came across a Magento plugin that replaces the out-of-box uploader.  Apparently Magento uses Flash to upload the image files and for some reason it just won't work with the way Fastwebhost has my servers set-up.  The plug-in is called the No Flash Image Uploader and will upload your images without using flash. 

Installing the plugin

There is a good video on youtube that explains how to install a plugin in Magento (see below).  The one problem I had was that the extension key they gave for this plug-in didnt work.  The key off the website was magento-community/Dull_Uploader and when you put that into the Magento Connect Manager's you get the error:

Couldn't resolve host 'magento-community'

After another bit of searching I was able to find the Problems Installing No Flash Uploader in the Magento forums.  The last message on the page said you need to use 'community' instead of 'magento-community' so changing the extension key to community/Dull_Uploader enabled me to install the plug-in just fine.  

{youtube}http://www.youtube.com/watch?v=AsN_T_qj_EI{/youtube}

Now the image upload works fine without flash being involved.

 

 

One of the first things I needed to be able to do is create static content on the home page of Joomla.  By default the featured article module is set as the home page so the idea is to be able to create a featured article and set the position so that it always stays up at the top.  This is done with a negative position.  Rather than write a new article on how this is done, here are a couple good links:

How to feature an article on the Joomla 2.5 Frontpage

Sticky Frontpage Message on Joomla 2.5

 

Page 1 of 2

Shopping Cart

The cart is empty