I stumbled across this post searching for the reason why my module won't create the process page under setup. I tried some suggestions from this threat, but eventually found another solution. I just wanted to share this in case someone needed it.
I used the getModuleInfo() function to add a page. I did not prefix my modules name with "Process" but only extended it with the Progress class. The only thing I had to do was calling the parents install() method in my modules install() method. That`s it. Now the setup page is created automatically on install.
<?php namespace ProcessWire;
class MyModule extends Process implements ConfigurableModule {
public static function getModuleInfo() {
return [
'title' => 'My Module',
'summary' => 'A module',
'version' => 1,
'page' => array(
'name' => 'mymodule',
'parent' => 'setup',
'title' => 'My Module',
)
];
}
public function install() {
parent::___install();
}
public function uninstall() {
parent::___uninstall();
}
}