Hi. ich bin mir für die Bestellabschlussseite nicht 100% sicher ob {$sAmountNet - $sShippingCost} der Warenkorbwert ohne Versandkosten ist. Benötige es für einen Trackingpixel. Hat jemand offizielle Resourcen?
Danke und Gruss.
Hi. ich bin mir für die Bestellabschlussseite nicht 100% sicher ob {$sAmountNet - $sShippingCost} der Warenkorbwert ohne Versandkosten ist. Benötige es für einen Trackingpixel. Hat jemand offizielle Resourcen?
Danke und Gruss.
Hallo Zusammen,
ich möchte einen Artikel über die Api inklusive Bild anlegen, was mir leider nicht gelingt.
Das Anlegen eines Artikels ohne Bild ist kein Problem. Es gelingt mir auch ein Bild über die Media-Schnittstelle hochzuladen.
Json-Objekt zum Bild anlegen:
{
"album": -1,
"file": "hxxps://xxx/public-mime/2Z57JM7.jpg",
"description": "d"
}
Result:
{
"success": true,
"data": {
"id": 721,
"location": "http://localhost:8100/api/media/721"
}
}
Wenn ich nun im nächsten Schritt dem neuen Artikel die Bild-ID mitgebe, erhalte ich folgende Fehlermeldung:
{"success":false,"message":"\\Shopware\\Models\\Article\\Image by id 721 not found"}
Das Bild mit der id 721 existiert in Shopware... Ich kann es auch über die Media-Schnittstelle wieder abrufen.
Ich verstehe nicht ganz was ich falsch mache.
Hat jemand ein funktionierendes Beispiel in JSON wie der Aufruf aussehen müsste, um einen neuen Artikel ein bestehendes Bild hinzuzufügen?
Eine weitere Frage dazu:
Kann man einen neuen Artikel auch nur den Link zu einem neuen Bild mitgeben, so dass diese zusammen angelegt werden?
Wenn ich das Beispiel unten aus der API-Doku richtig verstehe, ist das Erstellen eines Artikels mit neuen Bildern auch in einem POST-Request möglich? Wobei ich den Pfad merkwürdig finde, da hier auf keine Datei verweist wird.
Beispiel unter "Further Examples" in der API-Doku :
https://developers.shopware.com/developers-guide/rest-api/examples/article/
$testArticle = array( 'name' => 'NewTestArticle', 'active' => true, 'tax' => 19, // alternatively 'taxId' => 1, 'supplier' => 'Test Supplier', // alternatively 'supplierId' => 2, 'categories' => array( array('id' => 15), array('id' => 16), ), 'images' => array( array('link' => 'http://lorempixel.com/640/480/food/'), array('link' => 'http://lorempixel.com/640/480/food/'), ), 'mainDetail' => array( 'number' => 'swTEST' . uniqid(), 'inStock' => 16, 'prices' => array( array( 'customerGroupKey' => 'EK', 'price' => 99.34, ), ) ), ); $client->post('articles', $testArticle);
Weiß jemand Rat?
Ich verwende Shopware Version 5.2.12.
VG,
Philipp
Wir haben für die wichtigsten Shops 2 SSL Zertifikate und haben für die HTTPS weiterleitung von HTTP auch die rewrites in der htaccess hinterlegt.
Es funktioniert mit dem Hauptshop auch Super, jedoch hängen die Subshops (eins mit SSL) in einer ewigen weiterleitung?
Was kann Ich machen damit nur die SSL Shops weitergeleitet werden?
Danke
Hallo Community
Ich suche momentan nach einer Möglichkeit die Artikeleigenschaften im Listing auszugeben.
Gibts da eine fertige Funktion oder muss ich dafür ein Plugin schreiben?
Ich habe das mal über ein Plugin versucht, aber da hakt es beim holen der Artikelliste.
Die Antwort hiervon ist immer Leer:
public function install()
{
$this->subscribeEvent(
'Enlight_Controller_Action_PostDispatchSecure_Frontend',
'addPropertiesToListing'
);
return true;
}
public function addPropertiesToListing(Enlight_Event_EventArgs $args)
{
$articles = $args->getReturn();
$controller = $args->get('subject');
$view = $controller->View();
$view->assign('articleProperties', !empty($articles));
}
Hallo zusammen,
ich benötige für mein plugin die Möglichkeit, Stores bei den Selectboxen in der Plugin-Konfiguration einzubinden.
Unter SW 5.0 hatte ich ja die Möglichkeit, diese Konfiguration zu programmieren und seit 5.2.11 kann man sie per XML einfach eintragen.
Gibt es eine Möglichkeit, dies für SW 5.2.0 bis 5.2.10 im 5.2-Plugin-System zu bewerkstelligen?
Aktuell fällt mir nur die Möglicheit, sämtliche Einträge manuell in der install-methode vorzunehmen, aber das kommt mir irgendwie unsauber vor.
Da erscheint es mir fast schon besser, das Plugin im alten System zu entwickeln und dort einfach nur meine Anpassung mit dem CSRFWhitelistAware-Interface einzubauen.
Danke im Voraus
Hi
Ich versuche gerade eine kleine Anpassung im Backend. Dabei versuche ich in der Bestellübersicht die
Shopware.apps.Order.view.list.Navigation
von der Linken Seite auf die rechte Seite zu setzen. In den darauf folgenden Anpassungen kommen alle Erweiterungen auch auf die rechte Seite, da dies vom Ablauf einfacher ist.
In der Bootstrap habe ich die windows.js eingebunden
public function postDispatchOrder($args)
{
$view = $args->getSubject()->View();
$args->getSubject()->View()->addTemplateDir($this->Path() . "/Views/");
if( $args->getRequest()->getActionName() === "load" )
{
$view->extendsTemplate("backend/mdbackend/order/model/attribute.js");
$view->extendsTemplate("backend/mdbackend/order/view/detail/position.js");
$view->extendsTemplate("backend/mdbackend/order/view/list/position.js");
$view->extendsTemplate("backend/mdbackend/order/view/main/window.js");
}
}
die window.js sieht wiefolgt aus
//{block name="backend/order/view/main/window" append}
//{namespace name=backend/order/main}
Ext.override('Shopware.apps.Order.view.main.Window', {
initComponent:function () {
var me = this;
//add the order list grid panel and set the store
me.items = [
{
xtype: 'container',
layout: {
type: 'vbox',
align: 'stretch'
},
region: 'center',
items: [Ext.create('Shopware.apps.Order.view.list.List', {
flex: 2,
listStore: me.listStore,
orderStatusStore: me.orderStatusStore,
paymentStatusStore: me.paymentStatusStore,
statusStore: me.statusStore,
taxStore: me.taxStore
}), Ext.create('Shopware.apps.Order.view.list.Position', {
collapsed: true,
collapsible: true,
flex: 1,
title: '{s name=position_grid_title}Order positions{/s}',
region: 'south',
statusStore: me.statusStore,
taxStore: me.taxStore
})]
}, Ext.create('Shopware.apps.Order.view.list.Navigation', {
region: 'east',
orderStatusStore: me.orderStatusStore,
paymentStatusStore: me.paymentStatusStore
})
];
me.callParent(arguments);
}
});
//{/block}
Allerdings haben keine Änderungen EInfluss drauf, so dass wohl die windows.js nicht so einfach überschrieben werden kann. Jemand einen Rat ?
Hallo,
ich möchte gerne im Bloglisting die Tags und/oder die Freitextfelder ausgeben lassen.
Alle Versuche über {$sBlogArticles.attribute.attribute1} sind gescheitert, wahrscheinlich weil sie über die detail.tpl erzeugt werden.
Aber ich habe Seiten gesehen, die es hinbekommen haben.
Ich hoffe, dass jemand von euch einen Lösungsansatz parat hat.
Danke im Vorraus.
Gibt es eine Lösung wie man Zugriff auf den PayPal-Button im Einkaufswagen rechts bekommt um ihn zu ändern?
Hallo Gemeinde,
hatte mir in der config_variant.tpl folgende Abfrage eingebaut:
{if $sArticle.image.attribute.attribute1 == "showtext"}
Das abgefragte Feld war das attribute1 Freitextfeld der Artikeldetails -> Bilder! Nach Update auf 5.2 gibt es diese Felder nicht mehr, man muss diese jetzt selbst anlegen. Das habe ich auch gemacht, nur reagiert die o.g. Abfrage nicht auf mein neu angelegtes attribute1 Freitextfeld! Lt. Freitextverwaltung -> Tabelle wird aber die gleiche Tabelle angesprochen wie in der alten Shopware Version 5.1.
Ist das neue selbst angelegte Freitextfeld attribute1 nicht mehr gleich dem alten Freitextfeld attribute1? Muss evtl. die o.g. Abfrage geändert werden, wenn ja wie?
Danke und Grüße
Michael
Hallo,
wir haben zusätzliche Freitextfelder für die Shopseiten / CMS-Seiten eingerichtet.
Diese werden allerdings standardmäßig nicht in Smarty als Variable mit übergeben. Shopware selbst schreibt ja dazu, dass man ggf. Freitextfelder über ein Plugin ausgeben muss.
Hat jemand von Euch hier schon Erfahrungen oder einen Tipp, wie das genau funktioniert?
Vielen Dank!
Hallo,
ich habe einen ESI Controller, den ich im frontend mit einem "on action tag" aufrufen lasse:
{action controller=my_controller action=index}
Das ganze funktioniert auf der Arikel Detailseite ohne Probleme (frontend/detail/data.tpl)
Jetzt wollte ich das gleiche auf der Listing Seite (frontend/listing/product-box/product-price.tpl) machen, jedoch kann da der Controller angeblich nicht gefunden werden:
Uncaught exception 'Enlight_Controller_Exception' with message 'Controller "my_controller" not found'
Hat jemand eine Idee warum das an dieser Stelle nicht funktioniert?
VG
Hallo,
ich habe mir überlegt das ganze über ein IFrame zu lösen. Gibt es da auch eine Möglichkeit das Formular direkt einzubinden?
Das Formular soll auf jeder Shopseite in einem ein Pop-up vorhanden sein.
Mit besten Grüßen,
Alexander H.
Ich würde Gerne die Order.mail Form überschreiben um ggf. ein neues Feld (CC Empfänger) hinzuzufügen.
app.js:
//{block name="backend/order/application"}
// {include file="backend/TestCCPlugin/Views/mail/form.js"}
//{/block}
TextCCPlugin/Views/mail.form.js:
//{block name="backend/order/view/mail/form" append}
Ext.define('Shopware.apps.TestCCPlugin.view.mail.Form', {
override:'Shopware.apps.Order.view.mail.Form',
getFormItems: function() {
console.log("getFormItems called");
var me = this;
var result = me.callParent(arguments);
console.log("after call parent");
result.push({
xtype: 'textfield',
name: 'ccreceiver',
fieldLabel: '{s name=ccreceiver}CC{/s}'
});
return result;
}
});
//{/block}
Leider wird das neue Feld nicht angezeigt. Habe ich etwas vergessen/falsch überschrieben?
Hallo,
bei manchen Kategroietexten ist manchmal einfach ein komischer Quellcode nach dem eigentlichen Code. Ein Beispiel habe ich hier:
<p><span style="width: auto; padding: 0px 4px 0px 0px; font: 11px/20px 'Helvetica Neue',Helvetica,sans-serif; color: #ffffff; background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzBweCIgd2lkdGg9IjMwcHgiIHZpZXdCb3g9Ii0xIC0xIDMxIDMxIj48Zz48cGF0aCBkPSJNMjkuNDQ5LDE0LjY2MiBDMjkuNDQ5LDIyLjcyMiAyMi44NjgsMjkuMjU2IDE0Ljc1LDI5LjI1NiBDNi42MzIsMjkuMjU2IDAuMDUxLDIyLjcyMiAwLjA1MSwxNC42NjIgQzAuMDUxLDYuNjAxIDYuNjMyLDAuMDY3IDE0Ljc1LDAuMDY3IEMyMi44NjgsMC4wNjcgMjkuNDQ5LDYuNjAxIDI5LjQ0OSwxNC42NjIiIGZpbGw9IiNmZmYiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxIj48L3BhdGg+PHBhdGggZD0iTTE0LjczMywxLjY4NiBDNy41MTYsMS42ODYgMS42NjUsNy40OTUgMS42NjUsMTQuNjYyIEMxLjY2NSwyMC4xNTkgNS4xMDksMjQuODU0IDkuOTcsMjYuNzQ0IEM5Ljg1NiwyNS43MTggOS43NTMsMjQuMTQzIDEwLjAxNiwyMy4wMjIgQzEwLjI1MywyMi4wMSAxMS41NDgsMTYuNTcyIDExLjU0OCwxNi41NzIgQzExLjU0OCwxNi41NzIgMTEuMTU3LDE1Ljc5NSAxMS4xNTcsMTQuNjQ2IEMxMS4xNTcsMTIuODQyIDEyLjIxMSwxMS40OTUgMTMuNTIyLDExLjQ5NSBDMTQuNjM3LDExLjQ5NSAxNS4xNzUsMTIuMzI2IDE1LjE3NSwxMy4zMjMgQzE1LjE3NSwxNC40MzYgMTQuNDYyLDE2LjEgMTQuMDkzLDE3LjY0MyBDMTMuNzg1LDE4LjkzNSAxNC43NDUsMTkuOTg4IDE2LjAyOCwxOS45ODggQzE4LjM1MSwxOS45ODggMjAuMTM2LDE3LjU1NiAyMC4xMzYsMTQuMDQ2IEMyMC4xMzYsMTAuOTM5IDE3Ljg4OCw4Ljc2NyAxNC42NzgsOC43NjcgQzEwLjk1OSw4Ljc2NyA4Ljc3NywxMS41MzYgOC43NzcsMTQuMzk4IEM4Ljc3NywxNS41MTMgOS4yMSwxNi43MDkgOS43NDksMTcuMzU5IEM5Ljg1NiwxNy40ODggOS44NzIsMTcuNiA5Ljg0LDE3LjczMSBDOS43NDEsMTguMTQxIDkuNTIsMTkuMDIzIDkuNDc3LDE5LjIwMyBDOS40MiwxOS40NCA5LjI4OCwxOS40OTEgOS4wNCwxOS4zNzYgQzcuNDA4LDE4LjYyMiA2LjM4NywxNi4yNTIgNi4zODcsMTQuMzQ5IEM2LjM4NywxMC4yNTYgOS4zODMsNi40OTcgMTUuMDIyLDYuNDk3IEMxOS41NTUsNi40OTcgMjMuMDc4LDkuNzA1IDIzLjA3OCwxMy45OTEgQzIzLjA3OCwxOC40NjMgMjAuMjM5LDIyLjA2MiAxNi4yOTcsMjIuMDYyIEMxNC45NzMsMjIuMDYyIDEzLjcyOCwyMS4zNzkgMTMuMzAyLDIwLjU3MiBDMTMuMzAyLDIwLjU3MiAxMi42NDcsMjMuMDUgMTIuNDg4LDIzLjY1NyBDMTIuMTkzLDI0Ljc4NCAxMS4zOTYsMjYuMTk2IDEwLjg2MywyNy4wNTggQzEyLjA4NiwyNy40MzQgMTMuMzg2LDI3LjYzNyAxNC43MzMsMjcuNjM3IEMyMS45NSwyNy42MzcgMjcuODAxLDIxLjgyOCAyNy44MDEsMTQuNjYyIEMyNy44MDEsNy40OTUgMjEuOTUsMS42ODYgMTQuNzMzLDEuNjg2IiBmaWxsPSIjYmQwODFjIj48L3BhdGg+PC9nPjwvc3ZnPg==') no-repeat scroll 3px 50% #bd081c; position: absolute; opacity: 1; z-index: 8675309; display: none; cursor: pointer;">Merken</span></p>
Was könnte das sein?
Hallo,
ich benötige für mein Shopware 5.2.0 Plugin einzelne Symfony Bundles, die nicht standardisiert mit in Shopware verfügbar sind.
Wie kann ich diese über den Shopware Loader einbinden/registrien?
Funktioniert es z.B. damit ich den Classloader von Composer in den Classloader von Doctrine einbinde?
Mit freundlichen Grüßen,
Brian
Hallo liebe Shopware Gemeinde,
ich bräuchte Hilfe.
Aktuell ist es so:
Ich habe eine Bootstrap, in der eine Form aufgerufen wird, wo nichts weiter gemacht wird, als die Header Hintergrundfarbe zu ändern, was auch super klappt.
Jetzt zu einem großen Problem:
Habe ich den HTTP-Cache aktiviert (Produktionsmodus), wird die Hintergrundfarbe im Frontend nicht geändert - egal wie oft ich die Bootstrap speicher.
Leere ich den HTTP-Proxy Cache, dann wird die Änderung im Frontend angezeigt.
Ich hätte aber gerne das meine Bootstrap vom HTTP-Cache ausgeschlossen wird!
Es gibt zwar einige Lösungsansätze, doch die funktionieren nicht, bzw. sind nicht das was ich möchte. Wie z.B.:
$this->cacheManager->clearHttpCache();
oder
in der getInfo
'esi' => true,
eintragen.
Es wäre wirklich super, wenn mir dabei jemand helfen könnte.
Vielen Dank im vorraus.
Hallo zusammen,
habe hier einen komischen Fehler beim Update des Import/Export Plugind welches mir in den Plugins angezeigt wird.
Error
Unable to update, got exception: An exception occurred while executing 'ALTER TABLE s_import_export_session ADD CONSTRAINT FK_64E921BACCFA12B8 FOREIGN KEY (profile_id) REFERENCES s_import_export_profile (id) ON DELETE CASCADE': SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`GUENSTIG`.`#sql-1100_2e7b1a`, CONSTRAINT `FK_64E921BACCFA12B8` FOREIGN KEY (`profile_id`) REFERENCES `s_import_export_profile` (`id`) ON DELETE CASCADE)
Somit ist das Import / Export Plugin nicht mehr zu nutzen und auch unter "Plugins" deaktiviert.
Im Adminmenü auch nicht mehr vorhanden.
Was kann oder muss ich tun? Neuistallation etc. hat leider nix gebracht.
Susanne
Halllo,
ich wollte mal Fragen ob jeamand dieses Tool kennt, wie es funktioniert bzw ob man damit gut arbeiten kann?
Ich bin selbst eher der Programmier einsteiger möchte mir aber eigene Sachen in meinem Shop umbauen und dieses tool klingt hilfreich dies mit eigenen plugins zu lösen.
Hat da wer Erfahrungsberichte oder Tipps parat?
Grüße
T
Hallo,
ich würde gerne den AJAX Call beim Hinzufügen eines Artikels zum Merkzettel so beeinflussen, dass eine Erfolgsmeldung angezeigt wird. Über die ajaxAddAction() wird das ja nicht funktionieren, wo ist denn die JS-Funktion, die den Ajax Call startet, um dort ggf. die Success Meldung manuell auszugeben? Oder gibt es eine Möglichkeit, einfach dem Response Body eine Meldung mitzugeben, die dann automatisch angezeigt wird?
Danke!
Hallo Zusammen,
ich habe für einen Kunden ein Plugin entwickelt, welches das Template frontend/checkout/shipping_payment.tpl erweitert. Dies funktioniert soweit sehr gut. Der Kunde hat allerdings ein eigenes Theme und hat dort die frontend/checkout/shipping_payment.tpl überschrieben. Nehme ich das Template aus dem Theme des Kunden heraus, funktioniert mein Template sehr gut.
Mein Aufbau im Plugin:
Views/frontend/checkout/shipping_payment.tpl
In der Bootstrap:
$view->addTemplateDir(
$this->Path().self::TEMPLATE_PATH
);
Der Inhalt meines Templates:
{extends file="parent:frontend/checkout/shipping_payment.tpl"}
{block name="frontend_index_header_javascript_jquery" append}
<script src="{link file='frontend/_public/js/MEIN_JAVASCRIPT.js'}"></script>
<script>
var $activePaymentId = 'payment_mean{$activePaymentId}';
</script>
{/block}
{block name="frontend_index_content" append}
{include file="frontend/plugin/MEIN_TEMPLATE.tpl"}
{/block}
Hat jemand eine Idee was ich beachten muss? Muss ich die Blöcke in dem Theme (frontend/checkout/shipping_payment.tpl) erweitern? Oder kann man das auch so lösen, dass das direkt über das Template funktioniert?
Stehe da grade etwas auf dem Schlauch. Ich habe natürlich in einen Test-Shop von mir das ganze auch mal ausprobiert. Allerdings beobachte ich das gleiche Verhalten wie bei dem Kunden mit seinem Theme. Dachte erst, es liegt evtl. am Theme des Kunden.
Viele Grüße
Andreas