0

私はプラグイン (有料メンバーシップ プロですが、それは問題ではありません) を使用しており、そのプラグインで関数をオーバーロードする必要があります。Paid Memberships Pro プラグインの特定の部分を変更するカスタム「プラグイン」を作成しています。これのほとんどはうまくいきます。対応するテンプレートよりも優先されるテンプレートを作成できますが、関数を作成すると、他のプラグインから呼び出すことができません。これはセキュリティか何かによるもので、意図的なものだと思います。

私の質問は: 特定のプラグイン機能を別の機能から上書きする良い方法はありますか? 元のプラグインを更新して機能を失わないようにしたい (そうしないと、文字通り上書きするだけです)。コードを表示する必要がある場合は、便利なコードを用意しています。

4

1 に答える 1

1

機能を追加する最善の方法は、プラグインを分解して動作を分離することです。プラグインが拡張性とカスタマイズ性を念頭に置いて設計されていない場合、特に更新に重大な変更を加えたくない場合は、苦労するでしょう.

たとえば、プライベート関数またはプロパティへのアクセスが必要な場合がありますが、継承/オーバーライドする場合はアクセスできません。プラグインの新しいバージョンに更新すると、関数またはプロパティがなくなることさえあります。

抽象化されていない、または継承するように設計されていないクラスからの継承は、コードの匂いです。

于 2013-06-05T17:02:14.157 に答える