Seite 1 von 1

Klassen der CMS_TYPES direkt nutzen

Verfasst: Di 13. Jun 2017, 14:24
von Faar
Gibt es eine Möglichkeit, den Constructor einer Klasse eines CMS_TYPES direkt zu nutzen, wie z.B. vom CMS_TEASER?
https://api.contenido.org/latest/class- ... easer.html
https://api.contenido.org/latest/source ... tml#80-134

Ich wüsste nicht, was ich in $rawSettings und $contentTypes einsetzen sollte? Wie käme ich an diese Daten?
Mit $id ist wohl diese in der Klammer gemeint: CMS_TEASER[11] ?

Kann ich ein Modul aufbauen, das mir explizit das anzeigt was ich möchte?

Code: Alles auswählen

if (cRegistry::isBackendEditMode()){
	echo '<label class="content_type_label">'.$label.'</label>';
	echo cContentTypeTeaser::generateEditCode(11);
}else{
	echo cContentTypeTeaser::generateViewCode(11);
}
Denn manchmal stört es gewaltig, wenn im Editor-Modus die Frontend-Inhalte des Teasers angezeigt werden. Da reicht eigentlich oft nur der Button.

Re: Klassen der CMS_TYPES direkt nutzen

Verfasst: Di 13. Jun 2017, 23:13
von homtata
In einem anderen Projekt hab ich folgenden Code verwendet und meine, dass das den reinen Edit-Button geliefert hat, kannst ja mal versuchen:

Code: Alles auswählen

$typeGen = new cTypeGenerator();
$idart = cRegistry::getArticleId();
$artLang = cRegistry::getArticleLanguage();
$lang = cRegistry::getLanguageId();

// Teaser 1
ob_start();
echo "CMS_TEASER[1]";
$buffer = ob_get_clean();
$teaserId = (int) TypeIdManager::getTypeId('CMS_TEASER');
ob_start();
eval('echo "' . $typeGen->getGeneratedCmsTag("CMS_TEASER", $teaserId) . '"; ');
$teaserContent = ob_get_contents(); // liefert den Editor-Button
ob_end_clean();

Re: Klassen der CMS_TYPES direkt nutzen

Verfasst: Mi 14. Jun 2017, 10:22
von Faar
Danke, ich muss das man ausprobieren.