Hallo zusammen,
ich habe ein Bundle für contao 4.4.7 angelegt und die Backend Module werden auch korrekt geladen. Alleine die Frontend Module werden komplett ignoriert, es wird auch keine Fehlermeldung ausgegeben. Was hat sich da zu contao 3.5 geändert? Aktuell ist die Definition wie gehabt.
config/config.php
PHP-Code:
/**
* Front end modules
*/
array_insert($GLOBALS['FE_MOD'], 3, array
(
'piece' => array
(
'piecelist' => 'ModulePieceList',
'piecereader' => 'ModulePieceReader',
)
));
modules/ModulePieceList.php
PHP-Code:
<?php
namespace dieschittigs;
class ModulePieceList extends \ModulePiece
{
/**
* Template
* @var string
*/
protected $strTemplate = 'mod_piecelist';
/**
* Display a wildcard in the back end
*
* @return string
*/
public function generate()
{
if (TL_MODE == 'BE')
{
/** @var \BackendTemplate|object $objTemplate */
$objTemplate = new \BackendTemplate('be_wildcard');
$objTemplate->wildcard = '### ' . utf8_strtoupper($GLOBALS['TL_LANG']['FMD']['piecelist'][0]) . ' ###';
$objTemplate->title = $this->headline;
$objTemplate->id = $this->id;
$objTemplate->link = $this->name;
$objTemplate->href = 'contao/main.php?do=themes&table=tl_module&act=edit&id=' . $this->id;
return $objTemplate->parse();
}
return parent::generate();
}
/**
* Generate the module
*/
protected function compile()
{
echo "hallo"; die;
}
}
/ModulePiece extended dann /Module
Da wir einen eigenen Namespace verwenden müssen die Models in der config.php geladen werden:
PHP-Code:
$GLOBALS['TL_MODELS']['tl_piece'] = 'DieSchittigs\\SttgsShopify\\Models\\PieceModel';
Liegt es vielleicht daran, muss ich auch die Modul-Klassen so laden? Und wenn ja, wie genau?
Und noch eine Frage: Müssen die Templates wieder registriert werden wie in 3.5?
Danke!
Martin
Lesezeichen