Plugin überschreiben / Customizing

Hallo Zusammen,

ich versuche jetzt, um ein installiertes Plugin überzuschreiben. Habe ich dafür 2 Ideen:

 

  1. Durch „Extending an existing Plugin“, hier ist die Doku Extend an existing plugin via another plugin  

Hier brauche ich etwa Vorschläge/Beispiel um die tpl-Datei unter /Views/ zu schreiben. Hat jmd. Erfahrung dafür??

 

  1. Die Reihenfolgen der Plugins bearbeiten und steht mein eigene Plugin ganz hinten, damit es die „existing Plugin“ überschreiben kann. Und damit würde ich gerne wissen, ob die Ausführung-Reihenfolgen von installierten Plugins bearbeitet werden kann.

 

Viele Grüße

Chuying

Hi _chuuuing_,

du musst etwas Geduld haben. Das hier ist ein Forum in dem die Mitglieder dir freiwillig in Ihrer Freizeit anderen Mitgliedern helfen. Jeder stellt hier Fragen, es ist nicht sehr fair gegenüber anderen Fragestellern, seine eigene Fragen durch Doppelposts immer wieder in den Vordergrund zu holen. Warte doch mindestens mal 1-2 Tage ab, bevor du das tust.

Das Problem bei CustomProducts und den Templates ist folgendes: Das Plugin bindet sich ganz am Ende ein. (siehe SwagCustomProducts/Subscriber/Template.php). Du kannst aber einfach das gleiche Event wie CustomProducts benutzen und die Priorität höher setzen (= wird später ausgeführt)

 ['onTemplateDirectoriesCollect', 10]
        ];                                                                      
    }  
    public function onTemplateDirectoriesCollect(EventArgs $args)               
    {                                                                           
        $dirs = $args->getReturn();                                             
        
        // !! Das Verzeichnis liegt bei dir evtl. woanders. Entsprechend anpassen !!                                                                      
        $dirs[] = __DIR__. '/../Views';                                        
                                                                                
                                                                                
        $args->setReturn($dirs);                                                
    }

/* ...*/

Die Unterschied ist hier, dass du neben dem Callback noch ein Zahl (= Priorität) angibst. z.B. 10 sollte ausreichen, da CustomProducts die Priorität 0 (Standard) hat. 

Danach wird das Template deines Plugin *nach* CustomProducts eingebunden.

Viele Grüße

1 „Gefällt mir“

Zuerst mal danke sehr für deine Antwort. Es hilft viele. :slight_smile:

Und zweit muss ich auch erklären, die zweite Frage kommt später vor. Ich habe nach der ersten Frage die zweite Möglichkeiten bekommen und deswegen habe ich hier wieder geschrieben. Ich weiß wohl dass hier freiwillig ist, ich stelle Frage ist aber auch freiwillig oder?

Nach die zweite Post habe ich versuche, die erste zu löschen. aber leider hat nicht geklappt. Wenn du weiß wie man das machen kann, kannst du mich vielleicht auch helfen? ich bin neue here, viele kenne ich nicht. 

Viele Grüße

_chuuuing_