- 博客(58)
- 资源 (5)
- 收藏
- 关注
原创 magento教程---emove Magento 2 core modules
在composer.json中添加replace,就可以删除vendor中的模块然后再执行composer update
2021-12-22 13:53:20
323
原创 magento教程--Show and hide category titles
方法一,创建一个module,并且创建一个和catelog module下同名的xml,把block reference过来,进行remove = true或者display = false,推荐使用display方法二,创建css进行display none推荐使用本方式,因为不影响seo方法三,如果需要后台指定某个category进行hide。在传统系统上的思路,在后台category中创建一个开关,进行控制,然后在前台显示的地方,先判断这个开关,然后进行对应的处理。magento.
2021-12-21 18:11:28
1017
原创 magento教程--- override observers and plugins
视频地址:https://www.youtube.com/watch?v=fgbybvEfsqg&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=49把要覆盖的observer复制过来到自己的module内。然后进行修改。在自己的event。xml内指定这个eventname对应的observer(是自己刚刚定义的新的)在module。xml内要写先后关系。...
2021-12-21 14:18:01
248
原创 magento教程---schedule crons by config paths
视频地址:https://www.youtube.com/watch?v=R1m98auhVGs&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=48如何在后台配置crontab的schedule定义一个system。xml在crontab。xml内指定这个路径
2021-12-21 14:08:13
155
原创 magento教程---后台一些配置的xml
这些都可以设置显示的scope。group里面可以套用groupconfig.xml,用来设置system.xml的模式值。这样配置,可以让magento直接在读配置的时候,读了这个文件,不再去数据库读取,那就直接写死了,后台管理员也无法修改。这个也是。直接度这里了。不度数据库了。但是这两个文件是有区别的,一个是环境配置文件,相当于git的忽略文件,不会上传到服务器,只在本地有效果。一个是全局配置的,在后台配置以后,就丢整个服务生效了。...
2021-12-21 09:35:45
760
原创 magento教程----How to use ifconfig
视频地址:https://www.youtube.com/watch?v=mt9mezRXKeo&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=47在后台system.xml文件中正常创建一个显示后台控制的按钮在这个block对应的xml文件中,指定ifconfig是这3个组成的名字。...
2021-12-21 09:35:15
128
原创 magento教程---How to set page meta title and page main title
方法一,直接定义一个xml,然后进行修改就可以了。这里调用的是action。什么时候需要调用action,这个是magento的系统方法。所以要查阅才知道。2.方法二,在控制器里设置(这个优先级更高,就覆盖在xml中的设置,有限展示这个)得到layout,得到具体的block,然后设置title。...
2021-12-20 20:48:40
124
原创 magento教程----pass data to blocks
3中给blocks传递数据的方式,其实就是传递给phtml1,controller,2,xml,3,observer因为block在controller和xml之后,再备系统调用。所以可以在上游给下游传值。1,从controller里传递通过getlaoyout得到那个xml对象,然后得到具体的block对象,调用block对象的setTopic方法(set是他的魔术方法,没有都会创建)。在phtml内就可以得到了。这几个都是block的魔术方法。这个是dataobject.
2021-12-20 18:26:27
162
原创 magento教程---disable crontab in magento2
视频地址:https://www.youtube.com/watch?v=V4kvu2sUrCM&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=43配置给出这样,2月30号。
2021-12-20 16:39:04
153
原创 magento教程--create crontab group
视频地址:https://www.youtube.com/watch?v=m2x4kn-cvU8&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=42给crontab建议不同的分组,因为每一个分组都是用一个进程来进行执行。如果放在同一个分组内,那就相当于只用了一个进程,那样会容易形成阻塞。所以可以给crontab进行分组。...
2021-12-20 16:30:48
169
原创 magento教程-----create crons
视频地址:https://www.youtube.com/watch?v=BAUJxRrhZ2Y&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=41这4个都自己定义的,分别是crontab的名字,类名,方法名,还有执行的频率。不用继承任何类,所以也没有固定的方法名称,完全可以自己定义,把需要用到的依赖注入到构造函数内就可以了。然后在方法内调用。不建议用crontab -e来执行,浪费资源有一个新的vendor可以用。ht.
2021-12-20 16:14:53
126
原创 magento教程---mute observers
视频地址:https://www.youtube.com/watch?v=_pA3rgh-91M&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=40在调用的时候,把这个判断条件改写就可以了。方法1,你可以直接删除dispatch,不对event进行调用就可以了。方法2.如果你无法删除dispatch,那只有修改observer了,让在需要禁止的地方,增加一个禁止条件就可以了。这个里面,event是一直都被调用的。...
2021-12-20 15:29:30
174
原创 magento教程--- disable observers
视频地址:https://www.youtube.com/watch?v=q6XRZTTF4wo&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=39和禁用plugin是一样的。都是在新的module的xml配置文件中,把这个disabled true。并且在module。xml内指定先后顺序。...
2021-12-20 15:11:34
107
原创 magento教程---分发你自己定义的event事件。
视频地址:https://www.youtube.com/watch?v=kona_jJak3w&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=381,在控制器的构造函数方法内,注入$eventManager对象,并且在execute方法内,调用这个对象,执行dispatch方法。指定事件名2,在events.xml内把1内指定的事件名和具体的要执行操作的方法绑定起来3,定义这个操作具体内容的方法。...
2021-12-20 15:05:38
353
原创 magento教程--如何创建和使用observers
视频地址:https://www.youtube.com/watch?v=iyQwkXCyBXc&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=37这些都是不是系统定义的目录,所以你可以自己定义一个observer目录,来放observer文件。构造函数用来注入一些,自己需要用到的类然后再execute方法类,写具体的业务逻辑实现。如果不是系统内部的事件,也可以自己起事件名,然后在需要调用的地方,用dispatch来...
2021-12-20 14:51:31
324
原创 magento教程--如何创建和使用plugin
magento中的构造函数,一般是用来实现依赖注入,并且对依赖注入过来的对象,进行初始化。(其他作用,目前还没见到)plugin是用来修改某个类中的public function的。通过di.xml来定义修改。通过这种修改的方式。即使这个类被其他class继承了。那也不会影响继承的那个class。只会影响plugin在dim中指定修改的本class。有点相当于。用另一个类对在本类进行内部public function的扩展。但是不影响本来的子继承类。before修改原生方法的参数。aft..
2021-12-20 13:02:51
502
原创 magento教程---创建cli命令
视频地址:https://www.youtube.com/watch?v=Yu5SLqfAlOo&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=31只要在di.xml中注入自己写的类就可以了。然后在自己写类里面来实现cli一共就是两个方法。用的时候可以看下第一个方法,configure(配置),定义命令的名字 namespace:subject:action,还定义要传入的参数的一些格式,就是在命令后面传入一个参数。这个参...
2021-12-18 20:34:24
273
原创 magento教程---service contracts
视频地址:shttps://www.youtube.com/watch?v=Yu5SLqfAlOo&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=31service contracts就是interface。有data interface和service interface。是一种约定的契约。开发者需要遵循。...
2021-12-18 16:09:04
243
原创 magneto教程---两种使用preference的方法
视频教程:https://www.youtube.com/watch?v=fZcQgmnj8kA&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=30一个是用来覆盖interface,一个是用来覆盖另一个concrete class。但是不建议这样做。没有意义。
2021-12-18 15:37:52
263
原创 magento---什么时候使用virtul type?
视频地址:https://www.youtube.com/watch?v=lk3VpPz7NMY&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=29virtual types相当于magento为你创造的一个子类。这个子类是不独立存在的。当然如果你自己创造一个concrete class也是可以解决virtual type的问题的。virtualtype 在别的框架里是没有的。是magento的一个特性。但是手动创建一个子类,然.
2021-12-18 14:56:49
769
原创 magento教程---如何使用 virtual types
视频地址:https://www.youtube.com/watch?v=DiAS3vE6OO4&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=28virtual types 实现了依赖注入的无限嵌套。并且不用创建出实际的类,用di.xml创建出虚拟类。这个对象,是把一个数组转换成一个对象。然后获取数组的value,就可以用$object->key这样的形式了。数据访问层 repositoryrepositor...
2021-12-17 22:56:23
1596
原创 magento教程---如何使用proxy设计模式。
视频地址:https://www.youtube.com/watch?v=3EG9FgYaf8M&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=27之前在依赖注入那章讲过了。proxy是一种设计模式。就是这个对象虽然被依赖注入到了另一个对象中。但是如果没有调用这个依赖注入对象的方法。那么即使在构造函数内初始化了这个对象。也不会对这个对象进行实例化。如何使用:在di.xml中定义一个type。在type中指定类。并且指定这个要被注入的对
2021-12-17 16:31:56
247
原创 magento教程--如何使用池设计模式
视频地址;https://www.youtube.com/watch?v=zbacPEMBSSs&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=26什么是池设计模式(pool design pattern)?----一次性启动多个object放到池中。设计模式之对象池模式 - 烟草的香味 - 博客园对象池模式, 或者称为对象池服务, 其意图为: 通过循环使用对象, 减少资源在初始化和释放时的昂贵损耗(这里的"昂贵"可能是时间效益(如.
2021-12-17 14:46:46
623
原创 magento教程--Replace constructor arguments
视频地址https://www.youtube.com/watch?v=MEGT_551Y58&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=24https://www.youtube.com/watch?v=SytVCehxJXw&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=25在di.xml 用type对于interface的依赖注入如果一个interface只.
2021-12-16 23:15:17
259
原创 magento教程---Injectables 和 Non Injectables的区别
视频地址:https://www.youtube.com/watch?v=yGvlRzdE4U0&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=23model -> service->viewModel->block->controllermodel定义数据的crud方法service把model注入到内部,并且调用model的方法,得到返回值viewmodel把service注入到内部,然后调用serv.
2021-12-16 21:37:00
655
原创 magento教程---依赖注入
视频地址:https://www.youtube.com/watch?v=TBZUCKb8Gyo&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=22单例模式。是指在一次请求中。一个对象只会被实例一次。实例好的对象,会放在内存中,如果再次使用。就不会再去实例了。而不是你刷新页面。刷新页面是第二次请求了。肯定需要重新实例化。不会从之前的内存中获取了。之前内存中数据。在你请求结束后。就从内存中全部清空了。magento中的依赖注入,默认情.
2021-12-16 18:08:40
773
原创 magento教程---什么时候使用view models
视频地址https://www.youtube.com/watch?v=G2zSr-eGo2s&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=21viewmodel就是block类,用来给block标签里的class使用的。(错了。不是block,是另一种获取数据的方式。把viewmodel用argument注入到block中,然后通过get方法得到viewmodel对象。然后再调用它的方法来获取数据。)需要implements A.
2021-12-16 13:30:46
590
原创 magento教程---覆盖template
视频地址:https://www.youtube.com/watch?v=VF3I7RiBVEM&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=20第一种方式定义一个theme。然后用系统的路径。来进行覆盖。在这个文件里先把原先的copy过来,然后进行修改就可以了。就起到了覆盖的效果。第二种方式。用module来进行改写定义module.xml的时候要写这个sequence ,这个是指定执行顺序。写一...
2021-12-16 10:00:05
203
原创 magento教程--如何在header和footer里加入script
视频教程:https://www.youtube.com/watch?v=C_9ZCi3Eqcs&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=18如何把js代码写在body内,而不是在head标签内部这个name=head.additional是写在head标签内部的在block内套了一个block。如果外部的block没有phtml模板,那外部这个block有点像container,就是一个容器,用来装block的。.
2021-12-15 22:25:22
695
原创 magento教程---把js代码加在页面的head标签
如果是default.xml是给所有的页面都加如果指定xml,是给指定的xml页面加referenceblock 的那么是 head.additional这个block,是用来控制head标签内的内容。视频地址:https://www.youtube.com/watch?v=wEVANTVjgHY&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=17...
2021-12-15 20:15:40
692
原创 magento教程---删除页面中的css和js
视频地址:删除的时候,contact那个页面,用的是cms_page_view.xml这个。为何添加的时候用的是contact_index_index这个xml呢?因为cms那个是针对的一系列页面。而contact_index_index这个是针对某一个具体页面,但是再细谈内部是否有这个xml呢?(也有的。)这做事针对的所有cms的page,不仅仅针对的contact这个页面。也针对其他的页面。针对具体的页面。要把cms的id加在xml文件的后面...
2021-12-15 20:01:41
644
原创 magento教程--在head标签加css和js
视频地址:https://www.youtube.com/watch?v=qLriyx5b74U&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=15这样直接改写default.xml,因为default是每个页面都会继承的。真正的是在module_theme/view/frontend/layout下面。这样写是修改所有页面的css和js。在code中重写vendor下面的module。不用把module的name起的和vendo
2021-12-15 19:02:38
649
原创 magento教程--删除layout中的block
视频地址https://www.youtube.com/watch?v=S0o1sNHasRE&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=13在自己定义的module中,定义一个相同名字的xml。然后remove= true就可以了还有一个是display = false一般喜欢用display= false两者的区别:remove是直接把这个block从这个layout对象中进行了删除。display =..
2021-12-15 17:02:52
277
原创 magento教程---在layout中,重新布置block
视频地址:https://www.youtube.com/watch?v=tnx0ov5e6fI&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=12把要修改的module写在自己定义的module的module.xml内。自己写的module,depend on这个module。用来修改他。是先后顺序。然后在自己的module内重新定义一个相同的xml。进行move就可以了。...
2021-12-15 16:54:38
148
原创 magento中的widgets
视频地址:https://www.youtube.com/watch?v=3_OM8lIln38&list=PL9Q0S-CmtAhJVjwnK5ip6H84sCuRQcACY&index=11写widget的时候需要implements这个interface。这个interface内有有setdata和getdata方法需要去实现。在block中是可以用$_template这个属性来declare模板的,就是phtml的。这样就不用在block标签里用template来指.
2021-12-15 16:38:52
212
原创 magento中的cms block
视频地址:https://www.youtube.com/watch?v=Zz8096Oi5s4这个就是block id后台创建的block是cms block。block的name是自己起的argument内传入的name = ‘block_id’是后台定义cms block起的name。这样就可以找到指定的cms block。默认情况,这样写完是不会把block的内容显示在页面上的。必须在phtml中调用下才会显示。这个cms block是 一个子block,所以...
2021-12-14 18:20:25
334
原创 magento教程--block嵌套
视频地址:https://www.youtube.com/watch?v=ZmCmxdYn_vk在xml中的block要是父子嵌套<block class = "" name="" tmeplate=""> <block class = "" name = "" template = "" /></block>在父block的phtml中可以直接用方法得到子phtml中的内容在父block中写一个这样的方法,就可以动态的得到设定好的...
2021-12-14 16:23:42
1689
原创 magento中的block
视频地址 :https://www.youtube.com/watch?v=-kkHEqJAuWgblock的命名可以和controller一样,这样比较好管理。自己定义的block都要继承Magento\Framework\View\Element\Template;这个类。block是用来补充controller的。所有业务逻辑的代码可以写在block中。block在xml中被某个block标签的class调用后。不一定是为这个block中的phtml服务的。也可以为整个xml.
2021-12-14 15:46:37
174
原创 magento视频总结--magento中的layout
视频地址:https://www.youtube.com/watch?v=b_QsgsPgF80在控制器中1,在构造器中依赖注入pageFactory $resulepagefactory,2,在方法execute中return下return $this->resultPageFactory->create();这样就可以自动调用在view/frontened/layout/下命名好的xml文件了。然后编辑xml文件3,每个xml文件都有一个referenceContainer
2021-12-14 15:09:59
1651
名优快递单号生成器
2014-03-20
海明快递单号生成器V7.9
2014-02-11
海明运单好生成器
2011-09-29
海明快递单号生成器6.8
2011-09-29
海明快递单号生成器V6.8
2011-07-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人