Hi Claudia,
so wird m.E. immer noch der gesamte Blog angezeigt, nur dass eben die entsprechende Seite schon “aufgeschlagen” ist.
Hi Claudia,
so wird m.E. immer noch der gesamte Blog angezeigt, nur dass eben die entsprechende Seite schon “aufgeschlagen” ist.
[QUOTE=nickname;142429]Hi G-Glowde,
<irgendetwas><![CDATA[
//Hier der zu übertragende Inhalt
]]></irgendetwas>
In Oxid kannst du das dann so anzeigen:
[{ $toxid->getCmsSnippet(irgendetwas) }]
Jetzt fehlt nur noch der Inhalt. Suche doch mal bei codex.wordpress.org nach einen passenden Codeschnipsel, da wirst du garantiert fündig.[/QUOTE]
Sowas in der Art habe ich schon vermutet. Dein “Tipp” bringt mich leider nur überhaupt nicht weiter, da genau das passende Codeschnipsel zu finden schwierig ist, wenn man nicht weiß, wonach man suchen soll
Es wär einfach klasse, wenn so in der Art wie von Claudia beschrieben funktionieren würde. Funktioniert bei mir jedoch leider nicht
Wäre auch ne feine Sache, wenn man einfach ne Kategorie komplett anzeigen lassen könnt. Dann wärs möglich einen Blog komplett auf ner Url laufen zu lassen und im Shop nur Auszüge anzuzeigen z.B. dann eben Kategorie shop.
Also falls jemand noch nen komplettes funktionierendes Codeschnippselchen hätte für entweder 1 beitrag oder 1 kategorie anzeigen wie im letzten post beschrieben … wäre ich dankbar…
Gruß
Robert
Hallo Robert
ich hab in Wordpress das twentyeleven-Theme genommen und die header.php und footer.php wie folgt angepasst:
header.php:
<?php echo '<?xml version="1.0" encoding="utf-8"?>' ?>
<toxid>
<head> <![CDATA[
<?php
if ( is_singular() && get_option( 'thread_comments' ) )
wp_enqueue_script( 'comment-reply' );
wp_head();
?> ]]>
</head>
<body>
<nav id="access" role="navigation">
<![CDATA[
<?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?>
]]> </nav>
<content>
<![CDATA[
footer.php:
]]>
</content>
<![CDATA[
<?php
wp_footer();
?> ]]>
</body>
</toxid>
In Oxid habe ich eine Kategorie “Blog” erstellt und im Kategorie-Langtext den folgenden Code hinterlegt:
[{assign var='toxid' value=$oViewConf->getToxid()}]
[{$toxid->getCmsSnippet('content',true,'/')}]
Der Kategorie habe ich dann auch noch ein alternatives Template “list_toxid.tpl” zugewiesen, das auch noch einen Verweis auf eine spezielle CSS-Datei für den Blog enthält:
list_toxid.tpl:
<!-- Verweis auf CSS für TOXID -->
[{oxstyle include="css/libs/toxid_style.css"}]
[{oxscript add="$('a.js-external').attr('target', '_blank');"}]
[{oxscript include="js/widgets/oxarticlebox.js" priority=10 }]
[{oxscript add="$( '#content' ).oxArticleBox();"}]
[{assign var="actCategory" value=$oView->getActiveCategory()}]
[{capture append="oxidBlock_content"}]
[{if $actCategory->oxcategories__oxlongdesc->value }]
<div class="categoryTopLongDescription" id="catLongDesc">[{oxeval var=$actCategory->oxcategories__oxlongdesc}]</div>
[{/if}]
[{insert name="oxid_tracker"}]
[{/capture}]
[{include file="custom/page_toxid.tpl" }]
Vielleicht hilft das weiter.
Ich habe zwar auch noch andere PHP-Dateien des Wordpress-Themes geändert, das waren aber nur kleinere Änderungen aus Design-Gründen…
Falls du bei deinen Beiträgen auch die Kommentarfunktion erlaubst, findest du hier eine Möglichkeit damit es funktioniert: http://forum.oxid-esales.com/showthread.php?t=9448&page=14#post123231
Gruss claudia
[QUOTE=claro;142455]…
Falls du bei deinen Beiträgen auch die Kommentarfunktion erlaubst, findest du hier eine Möglichkeit damit es funktioniert: http://forum.oxid-esales.com/showthread.php?t=9448&page=14#post123231
Gruss claudia[/QUOTE]
Danke dir Claudia, schau ich mir mal in Ruhe an.
Gruß
Robert
Endlich hab ichs so geschafft wies gedacht war.
Hier die Lösung für alle, die etwas ähnliches suchen. Der folgende Code wird im Wordpress XML Theme … in den Header nach <toxid> geschrieben.
//Ruft sämtliche Beiträge aus der Kategorie “shop” auf
<startseite><![CDATA[
<?php query_posts( array ( ‘category_name’ => ‘shop’, ‘posts_per_page’ => -1 ) );
while ( have_posts() ) : the_post();
the_title();
the_content();
endwhile; wp_reset_query(); ?>
]]></startseite>
Im OXID dann selber wird die Ausgabe über folgenden Code aufgerufen (kann auch in einer CMS Seite im OXID verwendet werden):
[{assign var=‘toxid’ value=$oViewConf->getToxid()}]
[{ $toxid->getCmsSnippet(startseite) }]
An dieser Stelle werden dann alle Beträge mit Titel und Inhalt ausgegeben, welche in der Kategorie “shop” sind.
Hi zusammen,
ich habe mich heute damit auseinandergesetzt, Contao (Version 3.2.9) mit Oxid Shop (Version 4.7.6_70476 <- Installation mit Demodaten, keine weiteren Module etc.) zu koppeln. Soweit funktioniert das auch, aber… und das ist mir erst später aufgefallen. Wenn ich das Toxid Modul aktiviere ist noch alles gut, aber sobald ich in den Einstellungen die URL zu Contao eintrage und speichere funktioniert kein Link mehr vom Oxid Shop. Egal ob Kategorie, Produkt oder Menülink. Leider hilft danach auch das entfernen der CMS Url nichts. Nach Deaktivierung des Toxid Moduls gehen die Oxid Links wieder. Tmp leeren, views und seo-links neu generieren und mehrere Neuinstallationen des Shops haben immer das selbe Ergebnis.
Jemand von euch da ne Idee?
Hi,
OXID-TOXID-WP läuft! Danke für eine tolle Erweiterung.
Frage: Wozu dient views/azure/products.tpl? bitte ein Beispiel?
Request: Ich hätte gerne eine art getCmsSnippet(), die robust ist. Jetzt ist es so das wenn WP die gefragte Seite/Beitrag nicht kennt, oder was anders geht schief, das dann OXID Shop ein Redirect auf der Startseite auslöst. Für Bloginhalt, fine, aber wenn ich nur ein Snippet aus WP für mein Produktdetailseite brauche, will ich kein Redir bei fehlende Inhalt. Dann lieber Empty-String zurück.
Oh und noch was: Caching ist super (wobei ich doch der Inhalt nur 1x einsetze??), aber dann bitte bessere cache-hash benutzten. Aktuell geht das hier nicht:
<div id="toxid_curl_main">
[{assign var='toxid' value=$oViewConf->getToxid()}]
[{ $toxid->getCmsSnippet(content) }]
[{ $toxid->getCmsSnippet(content, false, 'hersteller/adidas/') }]
</div>
Keep up the good work - und wir sehen uns auf der Commons/Unconf.
Könnte so aussehen:
diff --git a/modules/toxid_curl/core/toxidcurl.php b/modules/toxid_curl/core/toxidcurl.php
index 2f62c47..29f1dff 100644
--- a/modules/toxid_curl/core/toxidcurl.php
+++ b/modules/toxid_curl/core/toxidcurl.php
@@ -97,6 +97,12 @@ class toxidCurl extends oxSuperCfg
*/
protected $_aSearchCache = array();
+ /*
+ * Return empty snippet, instead of redirect to shop-home.
+ * @var bool
+ */
+ protected $_blNoRedirect = false;
+
/**
* Deprecated!
* resturns a single instance of this class
@@ -156,7 +162,7 @@ class toxidCurl extends oxSuperCfg
* @param bool $blMultiLang
* @return string
*/
- public function getCmsSnippet($snippet=null, $blMultiLang = false, $customPage = null)
+ public function getCmsSnippet($snippet=null, $blMultiLang = false, $customPage = null, $noredir = false)
{
if($snippet == null) {
return '<strong style="color:red;">TOXID: Please add part, you want to display!</strong>';
@@ -166,6 +172,9 @@ class toxidCurl extends oxSuperCfg
$this->_aCustomPage = $customPage;
}
+ if ($noredir)
+ $this->_blNoRedirect = true;
+
$sText = $this->_getSnippetFromXml($snippet);
$sText = $this->_rewriteUrls($sText, null, $blMultiLang);
@@ -207,6 +216,7 @@ class toxidCurl extends oxSuperCfg
);
$this->_aCustomPage = null;
+ $this->_blNoRedirect = false;
/* if actual site is ssl-site, replace all image-sources with ssl-urls */
if ($oConf->isSsl()) {
@@ -258,6 +268,9 @@ class toxidCurl extends oxSuperCfg
$custom = $this->_getToxidCustomPage();
$aPage = $this->_getRemoteContent($source.$custom.$page.$param);
+ if($this->_blNoRedirect && ($aPage['info']['http_code']==500 || $aPage['info']['http_code']==404 || $aPage['info']['http_code']===0))
+ return '<?xml version="1.0"?><toxid></toxid>';
+
switch ($aPage['info']['http_code'])
{
case 500:
kann man innerhalb von einer cms seite in oxid mehrfach ein aufruf zum blog machen? wenn ich die variable toxid zuweise kommt trotzdem nur das ergebnis von dem ersten aufruf
[{assign var=‘toxid’ value=$oViewConf->getToxid()}]
[{assign var=‘toxid2’ value=$oViewConf->getToxid()}]
Hallo,
der Fehler wurde bereits diskutiert und ist bekannt. Wir werden das beim Refactorn des Moduls beachten und ermöglichen.
Viele Grüße Joscha
Hallo
ich wollte gerade auf die neuste Version von TOXID cURL updaten - meine derzeit laufende Version ist von ca. September 2013.
Nun habe ich festgestellt, dass es mit der neusten Version ein Problem mit Wordpress gibt:
Wird in einem Wordpress-Beitrag z.B. auf eine PDF-Datei verlinkt die ebenfalls im Wordpress-Verzeichnis abgelegt ist, wird die URL dieser Verlinkung ebenfalls auf die “Pseudo-Blog-URL” umgeschrieben und die Datei natürlich nicht gefunden.
Dasselbe passiert mit Bildern und deshalb können Bilder nicht mehr mit Fancybox angezeigt werden.
Setze ich in den TOXID-Einstellungen einen Haken bei “URLs nicht umschreiben - Aufrufe führen auf externe CMS-Seite” funktionieren die Links zwar wieder, dafür werden die Links in der eingebundenen Navigation aber nicht umgeschrieben, was ich natürlich auch nicht möchte.
Gibt es eine andere Einstellung die ich vornehmen kann? Hat jemand dazu schon eine Lösung?
Gruß Claudia
Hallo Claudia,
hast du die Einstallungen im Backend vorgenommen oder in der Config.inc.php belassen? Evtl. überschreiben die sich gegenseitig.
Gruß Joscha
Hallo Joscha
ich hab die Einstellungen im Backend hinterlegt, in der config.inc.php ist nichts mehr.
Gruß claudia
Hallo,
wenn ich das TOXID in Oxid 4.9.0 integriere (Ordner modules/toxid_curl) und dann aktiviere, kommt im Backend folgender Fehler:
Fatal error: Call to undefined method oxConfig::getInstance() in […] modules oxid_curl\core oxid_curl_oxviewconfig.php on line 33
Muss das Modul für die 4.9.0 noch angepasst werden?
Danke für Antworten!
Hallo,
ja, OXID hat alle Static calls entfernt mit der neuen Version. Hier muss man also noch anpassen. Gerne nehmen wir einen PullRequest auf.
Gruß Joscha
OK. Danke.
Das heißt es geht um alle Vorkommnisse von “oxRegistry::”, “oxConfig::”. Hab ich was vergessen? Ich kenne mich bislang mit der Oxid-API nicht aus.
oxConfig::getInstance() ersetzt durch $this->getConfig()
oxRegistry::getConfig() ersetzt durch ? (ist das eine andere Config) ?
Wenn du mir ein paar Tipps gibst, passe ich die Sachen an und mache einen PullRequest.
EDIT
Habe “oxConfig::getInstance()” ersetzt. Jetzt läuft es, allerdings wird nichts gespeichert.
Wo sehe ich denn die Änderungen im Changelog? Hier: http://wiki.oxidforge.org/Downloads/4.9.0_5.2.0#Important_information_for_developers habe ich nichts gefunden.
Danke!
Hallo,
es gab heute bereits einen PR der die Version kompatibel macht, von einem Kollegen hier, da wir TOXID in einer 5.2 benötigen.
Viel Spaß damit.
Gruß Joscha
Wir haben TOXID auch im Einsatz in Verbindung mit WordPress.
Komischerweise steht die Überschrift der CMS Inhalte unter dem Text.
Kann sich dies jemand erklären?
Hallo Leute, wir wollten auch soeben einen Wordpress Blog in unseren Shop integrieren mittels TOXID aber schon wenn wir die Dateien vom Modul in “Modules” rein ziehen und dann im Shop auf “Aktivieren” klicken. Kommt sofort eine Fehlermeldung und der Shop funktioniert nicht mehr.
Fehler: Internal Server Error
Shop Version: 4.8
Hat vielleicht eine Idee was evtl falsch lief? Exception Log hat zum Datum garkeinen Eintrag.
LG
[QUOTE=KingSkyline;153051]
Hat vielleicht eine Idee was evtl falsch lief? Exception Log hat zum Datum garkeinen Eintrag.[/QUOTE]
Entweder hat sich da noch ein getInstance() oder so versteckt, ich vermute aber eher, dass das Verzichnis nicht richtig heißt und nach dem Download noch ein *-master am Ende ist.
Gruß Joscha