我目前正在尝试在所有页面上的欢迎消息下方进行快速搜索。我去了我的 主题/模板/页/html/header.phtml 并将欢迎的MSG移至“ TopSearch”上方,但没有改变任何东西。我看了看 主题/布局/page.xml 但是我无法弄清楚我可以在那里更改任何东西以使其正常工作。我是PHP和XML的新手,因此将不胜感激。

这是我的 page.xml

        <block type="page/html_header" name="header" as="header">
            <block type="page/template_links" name="top.links" as="topLinks"/>
            <block type="page/switch" name="store_language" as="store_language" template="page/switch/languages.phtml"/>
            <block type="core/text_list" name="top.menu" as="topMenu" translate="label">
                <label>Navigation Bar</label>
                <block type="page/html_topmenu" name="catalog.topnav" template="page/html/topmenu.phtml"/>
            </block>
            <block type="page/html_wrapper" name="top.container" as="topContainer" translate="label">
                <label>Page Header</label>
                <action method="setElementClass"><value>top-container</value></action>
            </block>
        </block>

和我的 header.phtml

<div class="header-container">
    <div class="header">
        <?php if ($this->getIsHomePage()):?>
        <h1 class="logo"><strong><?php echo $this->getLogoAlt() ?></strong><a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><img src="<?php echo $this->getLogoSrc() ?>" alt="<?php echo $this->getLogoAlt() ?>" /></a></h1>
        <?php else:?>
        <a href="<?php echo $this->getUrl('') ?>" title="<?php echo $this->getLogoAlt() ?>" class="logo"><strong><?php echo $this->getLogoAlt() ?></strong><img src="<?php echo $this->getLogoSrc() ?>" alt="<?php echo $this->getLogoAlt() ?>" /></a>
        <?php endif?>
        <div class="quick-access">
            <p class="welcome-msg"><?php echo $this->getWelcome() ?> <?php echo $this->getAdditionalHtml() ?></p>
            <?php echo $this->getChildHtml('topSearch') ?>
            <?php echo $this->getChildHtml('topLinks') ?>
            <?php echo $this->getChildHtml('store_language') ?>

        </div>
        <div id="phone_number">1(888)641-7988</div>
        <?php echo $this->getChildHtml('topContainer'); ?>
    </div>
</div>
<?php echo $this->getChildHtml('topMenu') ?>

任何帮助将不胜感激。

有帮助吗?

解决方案

请更正您的CSS, .header .form-search 此CSS类用于形式搜索样式和 position:absolute 在此课程中使用,因此请删除此和表单搜索在您的欢迎消息下方移动

其他提示

代替

<?php echo $this->getChildHtml('topSearch') ?>

用这个

<?php $this->getLayout()->getBlock('top.search')->toHtml(); ?>

这样,您可以在.phtml文件中的任何地方调用搜索。

我认为您应该看看您的CSS。如果 position: absolute 在HTML中移动元素无济于事。

许可以下: CC-BY-SA归因
scroll top