在Magento中添加侧边栏(左侧)到自定义布局

时间:2015-04-11 16:45:00

标签: list magento layout views php

我有一个我为Magneto网站制作的自定义模块布局。问题是布局是1列,外侧()左侧或右侧没有侧边栏。但是我需要找到一种方法将侧边栏添加到左侧的产品网格中。它不能存在于col-main div之外。这样的事情会在自定义布局PHTML文件或列表PHTML文件中完成吗?我对Magneto比较陌生,所以任何见解都会受到赞赏。

这是自定义布局PHTML文件

 <div class="col1-layout">
            <div class="main">
                <?php echo $this->getChildHtml('breadcrumbs') ?>
                <div class="col-main specialLayout1Col">
                    <div class="container">
                        <div class="row">
                            <div class="infoContainer">
                                <?php echo $this->getChildHtml('global_messages') ?>
                                <?php echo $this->getChildHtml('content') ?>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div> <div class="col1-layout">
            <div class="main">
                <?php echo $this->getChildHtml('breadcrumbs') ?>
                <div class="col-main specialLayout1Col">
                    <div class="container">
                        <div class="row">
                            <div class="infoContainer">
                                <?php echo $this->getChildHtml('global_messages') ?>
                                <?php echo $this->getChildHtml('content') ?>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>

这是list.PHTML文件产品网格

<div class="row">
<div class="col-sm-12">
    <ul class="products-grid products-grid--max-<?php echo $_columnCount; ?>-col">
        <?php $i=0; foreach ($_productCollection as $_product): ?>
        <?php /*if ($i++%$_columnCount==0): ?>
        <?php endif*/ ?>
        <li class="item<?php if(($i-1)%$_columnCount==0): ?> first<?php elseif($i%$_columnCount==0): ?> last<?php endif; ?>">
            <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image">
                <?php $_imgSize = 210; ?>
                <img id="product-collection-image-<?php echo $_product->getId(); ?>"
                src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize($_imgSize); ?>"
                alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" />
            </a>
            <div class="row">
                <div class="col-sm-12">
                    <div class="productGridDivider"></div>
                </div>
            </div>
            <div class="product-info">
                <h2 class="product-name"><a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($_product->getName(), null, true) ?>"><?php echo $_helper->productAttribute($_product, $_product->getName(), 'name') ?></a></h2>
                <?php
                // Provides extra blocks on which to hang some features for products in the list
                // Features providing UI elements targeting this block will display directly below the product name
                if ($this->getChild('name.after')) {
                $_nameAfterChildren = $this->getChild('name.after')->getSortedChildren();
                foreach ($_nameAfterChildren as $_nameAfterChildName) {
                $_nameAfterChild = $this->getChild('name.after')->getChild($_nameAfterChildName);
                $_nameAfterChild->setProduct($_product);
                echo $_nameAfterChild->toHtml();
                }
                }
                ?>
                <?php echo $this->getPriceHtml($_product, true) ?>
                <?php if($_product->getRatingSummary()): ?>
                <?php echo $this->getReviewsSummaryHtml($_product, 'short') ?>
                <?php endif; ?>
                <div class="actions">
                    <?php if(!$_product->canConfigure() && $_product->isSaleable()): ?>
                    <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
                    <?php elseif($_product->getStockItem() && $_product->getStockItem()->getIsInStock()): ?>
                    <a title="<?php echo $this->__('View Details') ?>" class="button" href="<?php echo $_product->getProductUrl() ?>"><?php echo $this->__('View Details') ?></a>
                    <?php else: ?>
                    <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
                    <?php endif; ?>
                    <ul class="add-to-links">
                        <?php if ($this->helper('wishlist')->isAllow()) : ?>
                        <li><a href="<?php echo $this->helper('wishlist')->getAddUrl($_product) ?>" class="link-wishlist"><?php echo $this->__('Add to Wishlist') ?></a></li>
                        <?php endif; ?>
                        <?php if($_compareUrl=$this->getAddToCompareUrl($_product)): ?>
                        <li><span class="separator">|</span> <a href="<?php echo $_compareUrl ?>" class="link-compare"><?php echo $this->__('Add to Compare') ?></a></li>
                        <?php endif; ?>
                    </ul>
                </div>
            </div>
        </li>
        <?php /*if ($i%$_columnCount==0 || $i==$_collectionSize): ?>
        <?php endif*/ ?>
        <?php endforeach ?>
    </ul>
</div>

1 个答案:

答案 0 :(得分:0)

您可以使用css来执行此操作

&#13;
&#13;
 <div class="col1-layout">
            <div class="main">
                <?php echo $this->getChildHtml('breadcrumbs') ?>
                <div class="col-main specialLayout1Col">
                    <div class="container">
                        <div class="row">
                            <div class="infoContainer"> <!-- give column size 12 -->
                                <?php echo $this->getChildHtml('global_messages') ?>
                              <div class="left"> <!-- give column size 3 -->
                                
                                <?php echo "call you left content block here" ?>
                                </div>
                              <div class="col-main"> <!-- give column size 9 -->
                                
                                <?php echo $this->getChildHtml('content') ?>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
&#13;
&#13;
&#13;

但在设置css时要小心