Làm cách nào để thêm một khối trên trang chủ bên trên nội dung, bên dưới chỉ điều hướng trên trang chủ?


22

Làm cách nào để thêm một khối vào trang chủ chỉ phía trên phần nội dung, nhưng bên dưới điều hướng để trải rộng trên trang trong khi vẫn sử dụng mẫu hai cột?

Tôi đang sử dụng Magento phiên bản 1.9.

Xem hình ảnh:

Nhập mô tả hình ảnh ở đây

Câu trả lời:


23

Bạn không cần phải tạo một mô-đun nào cả. Bạn có thể sử dụng Widgets trong Magento 1.4+:

Nhấp vào CMS> Widget:

nhập mô tả hình ảnh ở đây

Nhấp vào "Thêm một Instance Widget mới":

nhập mô tả hình ảnh ở đây

Chọn "Khối tĩnh CMS" và tên chủ đề của bạn:

nhập mô tả hình ảnh ở đây

Sau đó, bên dưới 'thuộc tính lối vào' đặt tiêu đề và nhấp vào "Thêm cập nhật bố cục" và định cấu hình như hiển thị để chỉ hiển thị trên trang chủ trong khối nội dung chính:

nhập mô tả hình ảnh ở đây

Trong Tùy chọn widget chọn khối tĩnh bạn muốn hiển thị:

nhập mô tả hình ảnh ở đây


Đây là giải pháp tốt nhất trong cả ba giải pháp ...
user1704524

Có cách nào để làm điều này trong Magento 2 không?
kia4567

11

Tạo local.xmldướiapp/design/frontend/your package/your template/layout/

Và đặt mã

<?xml version="1.0"?>
<layout version="0.1.0">
    <cms_index_index>
        <reference name="root">
            <block type="core/template"  name="my.vblock" before="content" template="page/home/myblock.phtml" after="breadcrumbs" />
        </reference>
    </cms_index_index>
 </layout>

Đó là một phương pháp tốt ...
user1704524

Cảm ơn vì điều đó! Nhưng tôi đang cố gắng làm điều đó trước vụn bánh mì. Tôi đã thử trước = "Breadcurmbs" nhưng nó nói rằng XML không hợp lệ. Làm thế nào tôi có thể làm cho công việc này?
Alyssa Reyes

@AlyssaReyes Nếu bạn đã sử dụng 'Breadcurmbs', bạn có thể thử 'mẩu bánh mì': p
Maarten Wolfsen

6

Hãy thử nó luôn luôn hoạt động

<reference name="after_body_start">
    <block type="core/template"  name="block_name" template="template/template.phtml" />
</reference>

4

Đây là một cách thực sự nhanh chóng để làm điều đó ...

Tạo một mô-đun:

<?xml version="1.0"?>
<config>
    <modules>
        <Namespace_PageLayout>
            <active>true</active>
            <codePool>local</codePool>
            <depends>
                <Mage_Page/>
            </depends>
        </Namespace_PageLayout>
    </modules>
</config>

Sau đó thêm phần sau vào tập tin cấu hình của bạn

<?xml version="1.0"?>
<config>
    <modules>
        <Namespace_PageLayout>
            <version>0.1.0</version>
        </Namespace_PageLayout>
    </modules>
    <global>
        <page>
            <layouts>
                <homepage_layout translate="label">
                    <label>Homepage Layout</label>
                    <template>page/1column-home.phtml</template>
                </homepage_layout>
            </layouts>
        </page>
    </global>
</config>

Và trong ứng dụng thư mục chủ đề / thiết kế / frontend / YOUTHEME / default / template / page / 1column-home.phtml

thêm điều này:

<head>
    <?php echo $this->getChildHtml('head') ?>
</head>
<body<?php echo $this->getBodyClass()?' class="'.$this->getBodyClass().'"':'' ?>>
<?php echo $this->getChildHtml('after_body_start') ?>
<div class="wrapper">
    <?php echo $this->getChildHtml('global_notices') ?>
    <div class="page">
        <?php echo $this->getChildHtml('header') ?>
**<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('custom_block')->toHtml(); ?>** 
        <div class="main-container col1-layout cms-home">
            <div class="main">
                <?php echo $this->getChildHtml('breadcrumbs') ?>
                <div class="col-main">
                    <?php echo $this->getChildHtml('global_messages') ?>
                    <?php echo $this->getChildHtml('content') ?>
                </div>
            </div>
        </div>
        <?php echo $this->getChildHtml('footer_before') ?>
        <?php echo $this->getChildHtml('footer') ?>
        <?php echo $this->getChildHtml('global_cookie_notice') ?>
        <?php echo $this->getChildHtml('before_body_end') ?>
    </div>
</div>
<?php echo $this->getAbsoluteFooter() ?>
</body>
</html>

Sau đó, trong quản trị viên Magento của bạn, hãy tạo một khối tĩnh gọi là 'custom_block' hoặc bất cứ thứ gì và thêm nó vào 1column-home.phtml sau tiêu đề:

<?php echo $this->getChildHtml('header') ?>
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('custom_block')->toHtml(); ?>

Hãy chắc chắn để thêm một số nội dung vào khối tĩnh và chọn bố cục trang chủ mới của bạn từ tab thiết kế trong các trang CMS ...


0

Có thể thử cập nhật bố cục

theo mã như thế này

<reference name="top.container">
    <block type="core/template"
                   name="linkcoupon_block"
                   as="linkcoupon_block"
                   template="linkcoupon/static.phtml"
                   output="toHtml"
            />
</reference>
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.