Situación: Estoy trabajando en un complemento y lo estoy desarrollando como una clase, todo funcionó bien hasta que me encuentro con esta situación. Quería hacer las cosas un poco más limpias y probé esto ...
class MyPlugin {
function __construct() {
add_action('admin_menu', array(&$this, 'myplugin_create_menus');
}
//I don't want to write a function for every options page I create
//so I prefer to just load the content from an external file.
function load_view($filename) {
$view = require(dirname(__FILE__).'/views/'.$filename.'.php');
return $view;
}
//Here is where the problem comes
function myplugin_create_menus() {
add_menu_page( 'Plugin name',
'Plugin name',
'manage_options',
'my-plugin-settings',
array(&$this, 'load_view') // Where do I specify the value of $filename??
);
}
}#end of class
He probado un montón de opciones diferentes pero nada funciona, tal vez esté frente a él pero no puedo verlo.
Por supuesto, esto es una recreación. He prefijado todas mis funciones y no son exactamente como las que escribí aquí, pero espero que tengan la idea de lo que estoy pidiendo.
Gracias de antemano.
P.D .: Si desea ver el código fuente original, estaré encantado de pegarlo y darle el enlace.