Antworten:
Sie müssen überhaupt kein Modul erstellen. Sie können Widgets in Magento 1.4+ verwenden:
Klicken Sie auf CMS> Widgets:
Klicken Sie auf "Neue Widget-Instanz hinzufügen":
Wählen Sie "CMS Static Block" und den Namen Ihres Themas:
Geben Sie dann unter "Frontend-Eigenschaften" einen Titel ein, klicken Sie auf "Layout-Aktualisierung hinzufügen" und konfigurieren Sie es so, dass es nur auf der Startseite im Hauptinhaltsblock angezeigt wird:
Wählen Sie unter Widget-Optionen den statischen Block aus, den Sie anzeigen möchten:
Erstellen Sie local.xml
unterapp/design/frontend/your package/your template/layout/
Und geben Sie den Code ein
<?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>
Versuchen Sie dies, es funktioniert immer
<reference name="after_body_start">
<block type="core/template" name="block_name" template="template/template.phtml" />
</reference>
Hier ist ein sehr schneller Weg, dies zu tun ...
Erstellen Sie ein Modul:
<?xml version="1.0"?>
<config>
<modules>
<Namespace_PageLayout>
<active>true</active>
<codePool>local</codePool>
<depends>
<Mage_Page/>
</depends>
</Namespace_PageLayout>
</modules>
</config>
Fügen Sie dann Folgendes zu Ihrer Konfigurationsdatei hinzu
<?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>
Und in Ihrem Themenordner app / design / frontend / YOURTHEME / default / template / page / 1column-home.phtml
füge das hinzu:
<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>
Dann erstellen Sie in Ihrem Magento-Administrator einen statischen Block namens 'custom_block' oder was auch immer und fügen ihn nach dem Header zu 1column-home.phtml hinzu:
<?php echo $this->getChildHtml('header') ?>
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('custom_block')->toHtml(); ?>
Stellen Sie sicher, dass Sie dem statischen Block Inhalte hinzufügen und Ihr neues Homepage-Layout auf der Registerkarte "Design" in den CMS-Seiten auswählen ...