Dieser Online-Shop verwendet Cookies für ein optimales Einkaufserlebnis. Dabei werden beispielsweise die Session-Informationen oder die Spracheinstellung auf Ihrem Rechner gespeichert. Ohne Cookies ist der Funktionsumfang des Online-Shops eingeschränkt. Sind Sie damit nicht einverstanden, klicken Sie bitte hier.

Blog-Kategorie-Navigation mit TOXID


Wer einen OXID-Shop mit viel Content betreibt, sollte TOXID auf jeden Fall kennen.

Mit dem Open-Source-Modul von marmalade ist es möglich Content per XML in seinen Shop zu holen, obwohl dieser in einem anderen CMS (z. B. Wordpress auf einer Subdomain) gepflegt wird.

Dabei sind wir heute auf ein kleines Problem gestoßen, als wir die Kategorie-Struktur von Wordpress im Shop nutzen wollten.

Die Navigation wurde über das Snippet

[ { assign var='toxid' value=$oViewConf->getToxid() } ]
[ { $toxid->getCmsSnippet("navigation") } ]

eingebunden. Leider wurden die URLs nicht vollständig mit den Shop-URLs ersetzt. Dies haben wir in toxidCurl::getCmsSnippet() wie folgt gelöst:

$iLangId = oxLang::getInstance()->getBaseLanguage();
$sShopUrl = $this->getConfig()->getConfigParam('sShopURL').$this->_getToxidLangSeoSnippet($iLangId).'/';
$aBlogUrl = $this->getConfig()->getConfigParam('aToxidCurlSource');
$sText= str_replace($aBlogUrl[$iLangId], $sShopUrl, $sText);


Anschließend erschien beim Aufruf einer Kategorie immer der Fehler: Fatal error: Call to a member function xpath() on a non-object in ...

Auch dies war lösbar und zwar mit folgendem Code in toxidCurl::_getRemoteContent():

if(substr($sUrl, -1) == "/")
{
$sUrl = substr($sUrl, 0, -1);
}

Vielleicht hat ja der ein oder andere auch ein Problem dieser Art und wir können damit weiterhelfen ;-)


Tags: wordpress, toxid, oxid, marmamalde, content