Wednesday, 8 May 2013

Removing products and reset id in magento

Run the Query in phpmyadmin.
Note: Before use Backup your database:

Delete products:

    TRUNCATE TABLE `catalog_product_bundle_option`;
    TRUNCATE TABLE `catalog_product_bundle_option_value`;
    TRUNCATE TABLE `catalog_product_bundle_selection`;
    TRUNCATE TABLE `catalog_product_entity_datetime`;
    TRUNCATE TABLE `catalog_product_entity_decimal`;
    TRUNCATE TABLE `catalog_product_entity_gallery`;
    TRUNCATE TABLE `catalog_product_entity_int`;
    TRUNCATE TABLE `catalog_product_entity_media_gallery`;
    TRUNCATE TABLE `catalog_product_entity_media_gallery_value`;
    TRUNCATE TABLE `catalog_product_entity_text`;
    TRUNCATE TABLE `catalog_product_entity_tier_price`;
    TRUNCATE TABLE `catalog_product_entity_varchar`;
    TRUNCATE TABLE `catalog_product_link`;
    TRUNCATE TABLE `catalog_product_link_attribute`;
    TRUNCATE TABLE `catalog_product_link_attribute_decimal`;
    TRUNCATE TABLE `catalog_product_link_attribute_int`;
    TRUNCATE TABLE `catalog_product_link_attribute_varchar`;
    TRUNCATE TABLE `catalog_product_link_type`;
    TRUNCATE TABLE `catalog_product_option`;
    TRUNCATE TABLE `catalog_product_option_price`;
    TRUNCATE TABLE `catalog_product_option_title`;
    TRUNCATE TABLE `catalog_product_option_type_price`;
    TRUNCATE TABLE `catalog_product_option_type_title`;
    TRUNCATE TABLE `catalog_product_option_type_value`;
    TRUNCATE TABLE `catalog_product_super_attribute`;
    TRUNCATE TABLE `catalog_product_super_attribute_label`;
    TRUNCATE TABLE `catalog_product_super_attribute_pricing`;
    TRUNCATE TABLE `catalog_product_super_link`;
    TRUNCATE TABLE `catalog_product_enabled_index`;
    TRUNCATE TABLE `catalog_product_website`;
    TRUNCATE TABLE `catalog_product_entity`;
    
    TRUNCATE TABLE `cataloginventory_stock`;
    TRUNCATE TABLE `cataloginventory_stock_item`;
    TRUNCATE TABLE `cataloginventory_stock_status`;
    
    INSERT  INTO `catalog_product_link_type`(`link_type_id`,`code`) VALUES (1,'relation'),(2,'bundle'),(3,'super'),(4,'up_sell'),(5,'cross_sell');
    INSERT  INTO `catalog_product_link_attribute`(`product_link_attribute_id`,`link_type_id`,`product_link_attribute_code`,`data_type`) VALUES (1,2,'qty','decimal'),(2,1,'position','int'),(3,4,'position','int'),(4,5,'position','int'),(6,1,'qty','decimal'),(7,3,'position','int'),(8,3,'qty','decimal');
    INSERT  INTO `cataloginventory_stock`(`stock_id`,`stock_name`) VALUES (1,'Default');

Change the label of shipping and handing in magento

Go to this path
app/code/core/Mage/Sales/Model/Quote/Address/Total/
open shipping.php
there is a function fetch()
In this see the $title value content the 'Shipping & Handling' change it to your custom text.

Monday, 6 May 2013

Get product Description on order in magento

For backend order:


/test/app/design/adminhtml/default/default/template/sales/order/view/items/renderer/default.phtml



add lines after first td closed:-
<td><?php $custom2=Mage::getModel('catalog/product')->load($_item->getId());
echo $custom2->getDescription();
?>
</td>


/test/app/design/adminhtml/default/default/template/sales/order/view/item.phtml


after the line  <th><?php echo $this->helper('sales')->__('Product') ?></th>


add the line:
<th><?php echo $this->helper('sales')->__('Product Description') ?></th>



For frondend order In my account:
/test/app/design/frontend/base/default/template/sales/order/items/renderer/default.phtml
add this line after first td close

<td><?php $custom2=Mage::getModel('catalog/product')->load($_item->getId());
echo $custom2->getDescription();
?> </td>



/test/app/design/frontend/base/default/template/sales/order/item.phtml

after line this "  <th><?php echo $this->__('Product Name') ?></th>"

add the lines:
<th><?php echo $this->__('Product Discription') ?></th>


For cart page in frountend:

/app/design/frontend/base/default/template/checkout/cart/item/default.phtml

<td><?php $custom2=Mage::getModel('catalog/product')->load($_item->getId());
echo $custom2->getDescription();
?> </td>


/app/design/frontend/base/default/template/checkout/cart.phtml
  <th rowspan="<?php echo $mergedCells; ?>"><span class="nobr"><?php echo $this->__('Product Description') ?></span></th>

show All category with their thumbnail image in magento

first create a page in template/catalog/navigation
category_listing.phtml

Paste the below code:

 <?php
$_main_categories=$this->getStoreCategories();
if($_main_categories->count()):
    foreach ($_main_categories as $_main_category):
     
              ?>
                    <?php
                    $cur_category=Mage::getModel('catalog/category')->load($_main_category->getId());
                    $layer = Mage::getSingleton('catalog/layer');
                    $layer->setCurrentCategory($cur_category);
                   ?>               

                    <div class="catagory-box">
                        <div class="greenBorder">
                            <div class="img-align">
                                <div class="img-valign" align="center">
                                    <a href="<?php echo $this->getCurrentCategory()->getUrl()?>">
    <?php if($_imageUrl=$this->getCurrentCategory()->getThumbnailImageUrl()):?>
       <img src="<?php echo $_imageUrl ?>" alt="<?php echo $this->getCurrentCategory()->getName();?>" width="100" height="100">
                                    <?php else:?>
    <img src="<?php echo $this->getSkinUrl('images/add-01.gif')?>" alt="<?php echo $this->getCurrentCategory()->getName();?>">
                                    <?php endif;?>
                                    </a>
                                </div>
                            </div>
                        </div>
                        <div class="cat-box-text">
                            <span><a href="<?php echo $this->getCurrentCategory()->getUrl()?>"><?php echo $this->getCurrentCategory()->getName();?></a></span><br>
                            <?php echo $this->getCurrentCategory()->getDescription() ?>
                        </div>
                    </div>
<?php
          $_sub_categories=$_main_category->getChildren();
            foreach ($_sub_categories as $_sub_category): ?>
<?php
                    $cur_category1=Mage::getModel('catalog/category')->load($_sub_category->getId());
                    $layer = Mage::getSingleton('catalog/layer');
                    $layer->setCurrentCategory($cur_category1);
?><div class="catagory-box">
                        <div class="greenBorder">
                            <div class="img-align">
                                <div class="img-valign" align="center">
                                    <a href="<?php echo $this->getCurrentCategory()->getUrl()?>">
    <?php if($_imageUrl=$this->getCurrentCategory()->getThumbnailImageUrl()):?>
       <img src="<?php echo $_imageUrl?>" alt="<?php echo $this->getCurrentCategory()->getName();?>" width="100" height="100">
                                    <?php else:?>
    <img src="<?php echo $this->getSkinUrl('images/add-01.gif')?>" alt="<?php echo $this->getCurrentCategory()->getName();?>">
                                    <?php endif;?>
                                    </a>
                                </div>
                            </div>
                        </div>
                        <div class="cat-box-text">
                            <span><a href="<?php echo $this->getCurrentCategory()->getUrl()?>"><?php echo $this->getCurrentCategory()->getName();?></a></span><br>
                            <?php echo $this->getCurrentCategory()->getDescription() ?>
                        </div>
                    </div>
<?php
          $_sub_sub_categories=$_sub_category->getChildren();
            foreach ($_sub_sub_categories as $_sub_sub_category): ?>
<?php
                    $cur_category2=Mage::getModel('catalog/category')->load($_sub_sub_category->getId());
                    $layer = Mage::getSingleton('catalog/layer');
                    $layer->setCurrentCategory($cur_category2);
?><div class="catagory-box">
                        <div class="greenBorder">
                            <div class="img-align">
                                <div class="img-valign" align="center">
                                    <a href="<?php echo $this->getCurrentCategory()->getUrl()?>">
    <?php if($_imageUrl=$this->getCurrentCategory()->getThumbnailImageUrl()):?>
       <img src="<?php echo $_imageUrl?>" alt="<?php echo $this->getCurrentCategory()->getName();?>" width="100" height="100">
                                    <?php else:?>
    <img src="<?php echo $this->getSkinUrl('images/add-01.gif')?>" alt="<?php echo $this->getCurrentCategory()->getName();?>">
                                    <?php endif;?>
                                    </a>
                                </div>
                            </div>
                        </div>
                        <div class="cat-box-text">
                            <span><a href="<?php echo $this->getCurrentCategory()->getUrl()?>"><?php echo $this->getCurrentCategory()->getName();?></a></span><br>
                            <?php echo $this->getCurrentCategory()->getDescription() ?>
                        </div>
                    </div>
<?php
         endforeach;
            endforeach;
        endforeach;

endif;
?>



Now go to app/code/core/Mage/Catalog/Model/category.php
and add the function:

public function getThumbnailImageUrl()
   {
      $url = false;

      if ($image = $this->getThumbnail()) {

         $url = Mage::getBaseUrl('media').'catalog/category/'.$image;
      }
      return $url;
   }


Now make a cms page and call the phtml file as:
{{block type="catalog/navigation" name="catalog.categories" template="catalog/navigation/category_listing.phtml"}}



Note: This will shows upto 3-level categories in magento

Friday, 19 April 2013

Add the Google Checkout botton in the checkout page in magento

Open the app/design/frontend/base/default/template/checkout/onepage/payment.phtml

add this code after <img> tag:
<?php echo $this->getLayout()->createBlock('googlecheckout/link')->setTemplate('googlecheckout/link.phtml')->toHtml(); ?>

Auto generated SKU when add product in magento


Open /app/design/adminhtml/default/default/template/catalog/product/edit.phtml and add the following code to the bottom of the file:

<?php
    $dbread = Mage::getSingleton('core/resource')->getConnection('core_read');
    $sql = $dbread->query("SELECT * FROM catalog_product_entity ORDER BY created_at DESC LIMIT 1");
    $res = $sql->fetch();
?>
<script type="text/javascript">
if(document.getElementById('sku').value == ""){
    document.getElementById('sku').value = <?php echo (int)$res["sku"] + 1; ?>;
}
</script>


Note:Read the SKU (must be an integer) of the last added product.
     Increment the SKU by 1.
     Pre-populate the incremented new SKU to the SKU field by JavaScript.

Thursday, 18 April 2013

Making default of product attributes like is_active,tax class, weight,status,stock,qty in magento


UPDATE `eav_attribute` SET `default_value` = 'container1' WHERE `eav_attribute`.`attribute_code`='options_container';
UPDATE `eav_attribute` SET `default_value` = '1' WHERE `eav_attribute`.`attribute_code`='is_active';
UPDATE `eav_attribute` SET `default_value` = '1' WHERE `eav_attribute`.`attribute_code`='is_anchor';
UPDATE `eav_attribute` SET `default_value` = '1' WHERE `eav_attribute`.`attribute_code`='status';
UPDATE `eav_attribute` SET `default_value` = '0' WHERE `eav_attribute`.`attribute_code`='weight';
UPDATE `eav_attribute` SET `default_value` = '2' WHERE `eav_attribute`.`attribute_code`='tax_class_id';
insert into core_config_data values ( null, 'default', 0, 'cataloginventory/item_options/is_in_stock', 1 );
insert into core_config_data values ( null, 'default', 0, 'cataloginventory/item_options/qty', 10 );