私が理解していることから、PHPクラスが拡張されると、コンストラクターは呼び出されませんか? したがって、以下では、メソッドOptions_Page_Template->on_enqueue_scripts()
が実際に実行されることはありません -
class Options_Page_Template{
function __construct(){
/** Enqueue scrips and styles for use in this plugin */
add_action('wp_enqueue_scripts', array(&$this, 'on_enqueue_scripts'));
}
function on_enqueue_scripts(){
{ do Whatever here }
}
}
class Options_Home extends Options_Page_Template{
function __construct(){
{ Add various actions here }
}
}
拡張されたときにOptions_Page_Template()
常に独自に実行するように指示する方法はありますか? __constructor()
を使用できることはわかっていparent::__construct()
ますが、それにはクラスを拡張するすべてのファイルにコードを追加する必要があります。
また、コンストラクターにクラスと同じ名前を付けるという昔ながらの方法も試しましたが、うまくいかなかったため、PHP は明らかにそれよりも賢い方法です。ありがとう。