Tuesday 29 September 2015

Show Categories Which Are not Included in Navigation Menu in Magento

Hello,

Get categories list which are not include in Navigation in magento.

Some time you want that are not added in navigation but categories active and you want to
get or listing.

<ul class="full_category">
<?php $_categories = Mage::getResourceModel('catalog/category_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('is_active', 1) //only active categories
    ->addAttributeToFilter('include_in_menu', 0)
    ->addAttributeToSort('position');//sort by position

foreach ($_categories as $_category) { ?>
<li class="cat">
                       
<a href="<?php echo $_helper->getCategoryUrl($_category) ?>" title="<?php echo $_category->getName() ?>"><strong class="strongsm"><?php echo $_category->getName() ?></strong></a>
                           
</li>
<?php }?>
</ul>

Monday 28 September 2015

Get All Cms Page in magento

Hello,

Some Time You need to add Cms page in your site map. you need your page page link and name.
I have same issue. I getting for query and use it's working. you can try it.

Get all Cms Page in Magento

$storeId = $this->helper('core')->getStoreId(); // thanks to drawandcode for this
$cms = Mage::getModel('cms/page')->getCollection()
->addFieldToFilter('is_active',1)
->addFieldToFilter('identifier',array(array('nin' => array('no-route','enable-cookies'))))
->addStoreFilter($storeId);
$url = Mage::getBaseUrl();
$html = "";
foreach($cms as $cmspage):
$page = $cmspage->getData();
if($page['identifier'] == "home"){
echo  "<li><a href=\"$url\" title=\"".$page['title']."\">".$page['title']."</a></li>\n";
} else {
echo "<li><a href=\"$url".$page['identifier']."\" title=\"".$page['title']."\">".$page['title']."</a></li>\n";
}
endforeach;

include , require and require_once , include_once in php

 include , require and require_once , include_once in php 


include, require and require_once,include_once are used to include a file into the PHP code

for example of include and require

<h1>Welcome to My blog!</h1>
<?php include 'header.php';
?>

it can added file in php code.

in require example

<h1>Welcome to My blog!</h1>
<?php require 'header.php';
?>

difference between  include and require

 when a file is included with the include statement and PHP cannot find it, the script will continue to execute

and

the echo statement will not be executed because the script execution dies after the require statement returned a fatal error

include_once 

It can be used include a PHP file another one, it can used to add files once. If it is found that the file has already been included, calling script is going to ignore further inclusions.

Syntax



include_once('name of the called file with path');

example 

<?php include_once('xyz.php'); 

?>

same as require_once used.

<?php require_once('example.php')  ?>

include_once and require_once same different with include and require.




Difference between Echo And Print In Php

Hello,

Here I can Give both of use echo and print in php. I give example and use.

Echo and Print are almost same. they are both output on screen. they are used with and without
parentheses.

Difference Echo And Print



  1. print return value and echo not return value.
  2. echo faster than print.
  3.  echo without parentheses can take multiple parameters, which get concatenated but print give error.

How Can Use.



$data = "hello".
$data1 ="jaydip";

echo "<h2>My echo information</h2>";
echo "namste !<br>";

echo $data."".$data1;


echo without parentheses can take multiple parameters 
echo "jj","123",1,3;

same like in Print:

$data = "hello".
$data1 ="jaydip";

print "<h2>My echo information</h2>";
print "namste !<br>";

print $data."".$data1;

you can use as print in 
$test=1;
($test==2) ? print "true" : print "false";


Thursday 24 September 2015

Filtering a Magento product collection by multiple categories and Stock item and filter current product in product detail page

Hello,

I  Want to create section to get same product of different categories of products with Stock or quantity.

after i want get product of minimum of product quantity 50%.

for that i will join 'cataloginventory/stock_item', and  'catalog/category_product'  get this collection.

this section create in product detail page that why i am filter current product using it product id.

Please Below Code it help to you.

$product_id = Mage::registry('current_product')->getId();
    $category_ids = $_product->getCategoryIds();
$collection = Mage::getModel('catalog/product')->getCollection()
 ->addAttributeToSelect('*')
 ->addAttributeToFilter('entity_id', array('neq' => $product_id))
 ->addAttributeToFilter('status', 1)
 ->addStoreFilter();
$conditions = array();
foreach ($category_ids as $categoryId) {
 if (is_numeric($categoryId)) {
   
  $conditions[] = "{{table}}.category_id = $categoryId";
 }
}
$collection->distinct(true)
->joinField('category_id', 'catalog/category_product', null, 'product_id = entity_id', implode(" OR ", $conditions), 'inner');
$collection->joinField(
    'qty',
    'cataloginventory/stock_item',
    'qty',
    'product_id=entity_id',
    '{{table}}.stock_id=1',
    'left'
);
 foreach ($collection as $_item) {
   
    //echo $_item->getName()."</br>";
     $product_qty = $_item->getQty();
     $product_qty = round($product_qty);
    $product_qty = $product_qty/100;
    if($product_qty >= 0.5){
       
        echo $_item->getName()."</br>";
       
        }
       
 }

Please Below code it help getting products.

Thursday 17 September 2015

Price LessThan 1000 Get Products in Magento

Hello,

Here I am Create Custom Query for Product list. I want to get all product that price
less than 1000 in magento. I am Giving Example for that

First Create Cms page goto Cms=>page

in cms page
goto design=>Layout Update XML

Write below code in xml

<reference name="root">
<action method="setTemplate"><template>page/2columns-left.phtml</template></action>
 <action method="unsetChild"><alias>breadcrumbs</alias></action>    
    <block type="page/html_breadcrumbs" name="breadcrumbs" as="breadcrumbs">
        <action method="addCrumb">
            <crumbName>Home</crumbName>
            <crumbInfo><label>Home</label><title>Home</title><link>/</link></crumbInfo>
        </action>
        <action method="addCrumb">
            <crumbName>Custom Page</crumbName>
            <crumbInfo><label>1000 Under</label><title>1000 Under</title></crumbInfo>
        </action>      
    </block>
</reference>

<reference name="left">
     <block type="catalog/navigation" name="catalog.categorymenu" before="catalog.leftnav" template="catalog/product/categorymenu.phtml"/>

        </reference>
<reference name="content">
<block type="catalog/product_new" name="product_list" template="catalog/product/list.phtml">
<block type="catalog/product_list_toolbar" name="product_list_toolbar" template="catalog/product/list/toolbar.phtml">
<block type="page/html_pager" name="product_list_toolbar_pager"/>
</block>
<action method="setToolbarBlockName"><name>product_list_toolbar</name></action>
</block>
</reference>

after create block in your app\code\local\Mage\Catalog\Block\Product\new.php

Write this code for that

<?php

class Mage_Catalog_Block_Product_New extends Mage_Catalog_Block_Product_List 
   function get_prod_count() 
   { 
      //unset any saved limits 
      Mage::getSingleton('catalog/session')->unsLimitPage(); 
      return (isset($_REQUEST['limit'])) ? intval($_REQUEST['limit']) : 12;//set your page limit 
   }// get_prod_count 

   function get_cur_page() 
   { 
      return (isset($_REQUEST['p'])) ? intval($_REQUEST['p']) : 1; 
   }// get_cur_page 

   /** 
    * Retrieve loaded category collection 
    * 
    * @return Mage_Eav_Model_Entity_Collection_Abstract 
   **/ 
   protected function _getProductCollection() 
   { 
      

      $collection = Mage::getModel('catalog/product')
                        ->getCollection()
                        ->addAttributeToSelect('*')
                        ->addPriceData()
                        ->setOrder('price', 'ASC')
                        ->addAttributeToFilter('price', array('lt' => '1001'))
                        ->addFieldToFilter('status', array('eq' => '1')
                    );

      $this->setProductCollection($collection); 

      return $collection; 
   }// _getProductCollection 
}// Mage_Catalog_Block_Product_New 

?>



Tuesday 15 September 2015

Magento Category Product Listing Sort by Most Viewed Product

Hello,

You Just want to orverride app\code\core\Mage\Catalog\Block\Product\List\Toolbar.php

paste in code\local\Mage\Catalog\Block\Product\List\Toolbar.php

here 


first add your most viewed in sort by product select box


 public function getAvailableOrders()

    {

       $this->addOrderToAvailableOrders('mostviewd', 'MOST POPULAR');

        return $this->_availableOrder;\\you can add this code here
    }


 public function setCollection($collection)

    {

if ($this->getCurrentOrder()) {

               if($this->getCurrentOrder()=='mostviewd') {
              $this->_collection->getSelect()->
joinInner('report_event AS _table_views',
' _table_views.object_id = e.entity_id',
'COUNT(_table_views.event_id) AS views')->
group('e.entity_id')->order('views DESC');
       
    
            }

}


}

add this code and check the result.