blog.erikkothe.de rund um Magento, TYPO3, CSS, ….

Wie bekomme ich unter eID Zugriff auf cObj?

Viele Forenbeiträge musste ich durchforsten um eine passende Lösung dafür zu finden. An dieser Stelle vielen Dank an die fleissigen Schreiber in diversen Foren!

Bei meinem speziellen Problem wollte ich Bilder passend zuschneiden. Dafür wollte ich die Funktion "getImgResource" benutzen. Um diese Funktion aber zur Verfügung zu haben, muss einiges in dem Skript hinzugefügt werden. An erster Stelle steht, die passenden Dateien zu laden:

require_once(PATH_t3lib . 'class.t3lib_page.php');
require_once(PATH_tslib . 'class.tslib_pibase.php');
require_once(PATH_tslib . 'class.tslib_content.php');
require_once(PATH_t3lib . 'class.t3lib_stdgraphic.php');
require_once(PATH_tslib . 'class.tslib_gifbuilder.php');

Danach müssen die erforderlichen Instanzen erstellt werden:

$classTemp = t3lib_div::makeInstanceClassName('tslib_fe');
$GLOBALS['TSFE'] = new $classTemp($TYPO3_CONF_VARS, $page, 0, true);
$GLOBALS['TSFE']->tmpl = t3lib_div::makeInstance('t3lib_tstemplate');
$GLOBALS['TSFE']->tmpl->init();
$GLOBALS['TSFE']->sys_page = t3lib_div::makeInstance('t3lib_pageSelect');
$GLOBALS['TSFE']->rootLine = $GLOBALS['TSFE']->sys_page->getRootLine(intval(4));
$GLOBALS['TSFE']->getConfigArray();

Der wichtigste Schritt, das cObj erstellen:

$mycObj = new tslib_cObj();

Nun hat man unter "$mycObj" Zugriff auf deren Methoden. Wie z.B. "$mycObj->getImgResource()"

Wenn jemand eine kürzere Lösung parat hat? Beiträge sind gerne erwünscht!

Share

Wo bekomme ich Hilfe, wenn ich die Transaktionsmails bearbeiten will?

Es gibt einige Variablen die man von Haus aus benutzen kann. Um diese zu benutzen muss man zwei geschweifte Klammern zum öffnen und schliessen benutzen. Eine Liste möglicher Werte findet Ihr unter:
http://www.magentocommerce.com/wiki/modules_reference/english/mage_adminhtml/system_email_template/index

Um mehr Flexibilität zu bekommen, kann man auch seine eigenes E-Mail Template erstellen. Eine kleine Einführung ist unter http://nicholas.piasecki.name/blog/2009/10/creating-sane-plain-text-sales-transactional-e-mails-in-magento/ zu finden.

Wer in die E-Mails noch andere Daten vom Benutzer anzeigen lassen möchte findet hier Hilfe: http://snippi.net/magento-get-load-customer-object-based-customer-email Dort ist leider die E-Mail statisch hinterlegt hier hilft eine kleiner Ergänzung weiter:

$_order = $this->getOrder();
$customer->loadByEmail($_order->getCustomerEmail());

Share