Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.2k views
in Technique[技术] by (71.8m points)

overriding - Solution to PHP override conflict?

A client is using Prestashop 1.7.6.4.

They have tried to install a module that overrides AdminOrdersController.php, however, they already have an override of AdminOrdersController.php due to their own customization and so there is a conflict that needs to be resolved.

I will likely encounter this issue many times in the future with functions of various sizes and complexities.

Is there a standardized pattern or some sort of "best practice" way of handling this kind of override conflict?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The best way is not to use overrides but hooks, since PS1.7.7 there are loads of new hooks.

If you can not use a hook you should create an override with only that specific function, and not the entire file. And if two modules are overriding the the same function on the same controller you can combine these into one file. Make sure to save this manually, because on every PS update this file might reset.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...