You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Magento中应将引入文件放置在何处?

嘿,这个问题得看你用的是无框架自定义项目还是基于特定PHP框架的项目,不过我可以给你梳理下常规做法和常见的最佳实践:

常规存放位置

无框架自定义项目

没有强制的标准,但开发者们普遍会用这些位置:

  • 根目录下的includes/或partials/文件夹:就像你想的那样,直接在根目录建partials/完全可行,这个命名非常直观,一看就知道是放可复用代码片段的地方。
  • 模板目录的子文件夹:如果你的.phtml模板本身集中在templates/目录里,那把复用片段放在templates/partials/会更有条理,路径也更短,比如引入时可以写<?php include(__DIR__ . '/partials/foo.php') ?>。

框架类项目

不同框架有自己的约定位置,举几个常见的:

  • Laminas(原Zend Framework):通常把这类复用模板放在module/[你的模块名]/view/[模块名]/partials/,如果是全局共享的片段,也可以放在专门的共享视图目录里,但更推荐按模块划分。
  • Symfony:如果用原生PHP模板(phtml),框架默认约定的复用片段位置就是templates/partials/,直接用这个目录就符合规范。
  • CodeIgniter:一般放在application/views/partials/,因为所有视图文件都集中在views/目录下。
能不能自己创建partials文件夹?

当然可以!只要你能保持项目结构的一致性,自己建这个文件夹不仅没问题,反而很推荐——毕竟partials是业内通用的命名,其他接手项目的开发者一眼就能明白这个目录的用途。

不过小提醒:如果项目结构比较复杂,尽量别把partials直接放在根目录,最好和你的模板文件放在同一层级或者子目录里,这样路径管理更清晰,也不会和config/、public/这类核心目录混在一起。

额外小技巧

引入文件时尽量用绝对路径,比如借助__DIR__常量,或者框架提供的视图路径助手,避免因为当前脚本工作目录变化导致找不到文件。举个例子:

// 假设当前.phtml在templates/pages/下,partials在templates/下
<?php include(__DIR__ . '/../partials/foo.php') ?>

如果是框架项目,优先用框架自带的视图引入方法,比如Laminas里的<?= $this->partial('partials/foo.phtml') ?>,既符合框架规范,又能自动处理路径问题。


内容的提问来源于stack exchange,提问作者Black

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:28:46