Hallo,
ich bin neu bei Shopware und versuche derzeit die Kategorie/Artikel Ansicht zu erweitern. Ich möchte ein zusätzliches Textfeld ins Kategorie/Artkiel Backend hinzufügen.
Als vorlage habe ich diese beiden “Tutorials” verwendet
http://andrebiel.de/shopware-artikel-zusatzfelder-erweitern/
Allerdings habe ich es weder mit dem einen noch dem anderen geschafft das Backend zu erweitern.
Mein “Plugin”:
engine/Shopware/Plugins/Local/Backend/MyPluginName/Bootstrap.php
createMyEvents();
$this->_createAttributes();
} catch (Exception $e) {
return array(
'success' => false,
'message' => $e->getMessage()
);
}
return array(
'success' => true,
'invalidateCache' => array('backend')
);
}
public function createMyEvents() {
$this->subscribeEvent(
'Enlight_Controller_Action_PostDispatch_Backend_Article',
'loadBackendModuleArticles'
);
}
private function _createAttributes() {
$this->Application()->Models()->addAttribute('s_articles_attributes', 'shorties', 'cool_bool', 'TINYINT(1)', false, 0);
$sql = "
INSERT INTO `s_core_engine_elements` (`groupID`, `domname`, `type`, `label`, `required`, `position`, `name`, `help`, `translatable`, `variantable`)
VALUES (7, '', 'boolean', 'Unsere coole Checkbox', 0, 1001, 'shortiesCoolBool', 'Zeigt an ob dieser Artikel cool ist', 1, 1)
";
Shopware()->Db()->query($sql);
Shopware()->Models()->generateAttributeModels(
array('s_articles_attributes')
);
}
public function uninstall() {
$this->Application()->Models()->removeAttribute(
's_articles_attributes',
'shorties',
'cool_bool'
);
$sql = "
DELETE FROM s_core_engine_elements WHERE name = 'shortiesCoolBool'
";
try {
Shopware()->Db()->query($sql);
Shopware()->Models()->generateAttributeModels(
array('s_articles_attributes')
);
} catch (Exception $e) {
return array(
'success' => false,
'message' => $e->getMessage()
);
}
return true;
}
public function loadBackendModuleArticles(Enlight_Event_EventArgs $arguments) {
$view = $arguments->getSubject()->View();
$view->addTemplateDir($this->Path() . 'Views/');
$action = $arguments->getRequest()->getActionName();
echo 'Controller Works';
if ($action === 'load') {
$view->extendsTemplate('backend/article/MyPluginName/model/attribute.js');
}
}
}
?>
engine/Shopware/Plugins/Local/Backend/MyPluginName/Views/backend/article/MyPluginName/model/attribute.js
//{block name="backend/article/model/attribute/fields" append}
{ name: 'shortiesCoolBool', type: 'boolean' },
//{/block}
Wenn ich das Plugin im Pluginmanager installiere und aktiviere dann bekomme ich direkt ein fehler
Herkunft: unbekannt
Art: SyntaxError
Ich danke im vorraus für eure Hilfe
LG
PR