视频地址 :https://www.youtube.com/watch?v=-kkHEqJAuWg
block的命名可以和controller一样,这样比较好管理。
自己定义的block都要继承Magento\Framework\View\Element\Template;
这个类。
block是用来补充controller的。所有业务逻辑的代码可以写在block中。block在xml中被某个block标签的class调用后。不一定是为这个block中的phtml服务的。也可以为整个xml服务。比如设置title,设置content中的标题。所以用上面的命名方法。可以控制器同名
在block这个类中。有一个方法_prepareLayout()好像就是用来提前给整个页面进行配置的。
这个方法是被系统自动调用吗?因为在视频中没有看到调用这个方法的地方;
可以在这个block中定义个
public function getSubTitle()
{
return “abc”;
}
然后再phtml中可以直接获取
<?= $block->getSubTitle() ?>
就可以得到在block定义那个方法的返回值。