Jak dodać blok do strony głównej tylko nad sekcją treści, ale pod nawigacją, aby rozłożyć się po stronie, nadal używając szablonu dwukolumnowego?
Używam Magento w wersji 1.9.
Zobacz zdjęcie:
Jak dodać blok do strony głównej tylko nad sekcją treści, ale pod nawigacją, aby rozłożyć się po stronie, nadal używając szablonu dwukolumnowego?
Używam Magento w wersji 1.9.
Zobacz zdjęcie:
Odpowiedzi:
Nie musisz wcale tworzyć modułu. Możesz używać widżetów w Magento 1.4+:
Kliknij CMS> Widżety:
Kliknij „Dodaj nowe wystąpienie widgetu”:
Wybierz „Blok statyczny CMS” i nazwę motywu:
Następnie w „właściwościach interfejsu” nadaj mu tytuł i kliknij „Dodaj aktualizację układu” i skonfiguruj go tak, jak pokazano, aby wyświetlał się tylko na stronie głównej w głównym bloku treści:
W obszarze Opcje widgetu wybierz blok statyczny, który chcesz wyświetlić:
Utwórz local.xml
podapp/design/frontend/your package/your template/layout/
I wpisz kod
<?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>
Spróbuj, to zawsze działa
<reference name="after_body_start">
<block type="core/template" name="block_name" template="template/template.phtml" />
</reference>
Oto naprawdę szybki sposób, aby to zrobić ...
Utwórz moduł:
<?xml version="1.0"?>
<config>
<modules>
<Namespace_PageLayout>
<active>true</active>
<codePool>local</codePool>
<depends>
<Mage_Page/>
</depends>
</Namespace_PageLayout>
</modules>
</config>
Następnie dodaj następujące elementy do pliku konfiguracyjnego
<?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>
A w folderze motywów app / design / frontend / YOURTHEME / default / template / page / 1column-home.phtml
Dodaj:
<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>
Następnie u administratora Magento utwórz blok statyczny o nazwie „custom_block” lub cokolwiek innego i dodaj go do 1column-home.phtml po nagłówku:
<?php echo $this->getChildHtml('header') ?>
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('custom_block')->toHtml(); ?>
Pamiętaj, aby dodać trochę treści do bloku statycznego i wybrać nowy układ strony głównej z zakładki projektu na stronach CMS ...