// where '50' is the category id to pull from
<?php $_productCollection = $products = Mage::getModel('catalog/category')->load(50)
->getProductCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('status', 1)
->addAttributeToFilter('visibility', 4);
?>
<?php $_helper = $this->helper('catalog/output'); ?>
<?php if ($_productCollection->count() != 0) { ?>
<?php foreach ($_productCollection as $_product) { ?>
<?php $_productNameStripped = $this->stripTags($_product->getName(), null, true); ?>
<div class="product-item">
<div class="product-img"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(300); ?>" width="300" height="300" alt="<?php echo $_productNameStripped; ?>" /></div>
<div class="product-name">
<a href="<?php echo $_product->getProductUrl(); ?>" title="<?php echo $_productNameStripped; ?>"><?php echo $_helper->productAttribute($_product, $_product->getName() , 'name'); ?></a>
<?php
$reviewHelper = $this->getLayout()->createBlock('review/helper');
echo $reviewHelper->getSummaryHtml($_product, false, true);
?>
</div>
</div>
<?php } ?>
<?php } ?>