Существует страница 'index' и блок 'post' c модификатором 'type' => 'one':
// index.bemjson.js
module.exports = {
block: 'page',
content: {
block: 'post',
mods: { type: 'one' },
content: {
...
}
}
В папке desktop.blocks/post/ лежат файлы: post.bemhtml.js, post.bemjson.js, post.bh.php ...
В папке desktop.blocks/post/_type/ лежат файлы: post_type_one.bemhtml.js, post_type_one.bemjson.js, post_type_one.bh.php ...
При сборке проекта в бандле страницы появляется файл index.bh.php. Код:
// index.bh.php
// file: ../../desktop.blocks/post/post.bh.php
$bh->match('post',function ($ctx) {
....
А необходимо, чтобы 'брался' шаблон desktop.blocks/post/_type/post_type_one.bh.php. Как enb-bh-php сообщить об этом?
При описанной структуре будет использовать как
post.bh.php
, так иpost_type_one
. Но благодаря тому, чтоpost_type_one
окажется ниже в результатах сборки, у него будет приоритет, так что из этого шаблона можно переопределить поведение базового.Если шаблон в принципе не попадает в сборку, возможно, поможет добавление нужного модификатора в deps.js-файл (см. https://ru.bem.info/platform/deps/).