【问题标题】:breadcrumb.phtml file path?面包屑.phtml 文件路径?
【发布时间】:2016-04-29 14:52:18
【问题描述】:

我仍然试图通过研究一个主题来理解magento的主题引擎。我的主题是templates/page/html 文件夹中有breadcrumb pthml 文件,它可以操作bradcrumbs。 magento 如何知道该文件? page/html 文件夹是否是标准的。 以及它的作用是什么 文件在page.xml中做

【问题讨论】:

  • 如果你在 ubuntu 上开发,firebug 和 grep 是你最好的朋友
  • magento 是如何知道文件的?您可以在 app/design/frontend/base/default/layout/page.xml <block type="page/html_breadcrumbs" name="breadcrumbs" as="breadcrumbs"/> 中找到面包屑块,然后您可以在 app/code/core/Mage/Page/Block/Html/Breadcrumbs.php 中查看块类,您可以在那里找到以下行public function __construct() { parent::__construct(); $this->setTemplate('page/html/breadcrumbs.phtml'); }

标签: magento themes


【解决方案1】:

magento 中的模板系统包括

•   XML layout configuration
•   PHP template files
•   PHP block classes

所有布局 XML 文件都可以在 app/design/frontend/<interface>/<theme>/layout 文件夹中找到。

所有模板文件都将位于app/design/frontend/<interface>/<theme>/template 文件夹下的各个文件夹中的.phtml 文件中。

所有块都将位于app/code/<core,local,community>/<namespace>/<module>/Block 文件夹中。

您可能找不到同一主题中的所有布局/模板文件,比如望远镜。例如,Magento 将按顺序检查以下文件夹中是否有一个名为 catalog.xml 的文件:

    app/design/frontend/interface/telescope/layout/
    app/design/frontend/interface/default/layout/
    app/design/frontend/base/default/layout/

【讨论】:

    【解决方案2】:

    面包屑模板文件将在您当前的主题下。

    例如:

    app/design/frontend/<pkg>/<theme>/template/page/html/breadcrumbs.phtml
    

    如果它不在当前主题中,那么它将在基本主题中

    app/design/frontend/base/default/template/page/html/breadcrumbs.phtml
    

    Magento 模板引擎首先在活动主题中查找块/页面模板,如果未找到,则会在基本主题中查找。

    【讨论】:

      【解决方案3】:

      这是由布局处理程序和块描述处理的,因此,如果您是业务新手,请前往 magento 知识库并阅读那里的主题教程

      app/design/frontend/base/default/layout/page.xml:82: <block type="page/html_breadcrumbs" name="breadcrumbs" as="breadcrumbs"/>
      

      【讨论】:

      • 这意味着 这个块可以通过将 header.phtml 文件放在 page/html/ 文件夹中来修改,我可以也创建新块。例如。 将此行放入 page.xml
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-12
      • 1970-01-01
      相关资源
      最近更新 更多