Quantcast
Channel: Programmierung - Shopware Community Forum
Viewing all 2871 articles
Browse latest View live

Wie SEO Kategorie URL mit Customize-Freitextfeld umschreiben?

$
0
0

Hallo zusammen,

mit folgender Methode lege ich in einem Plugin ein Freitextfeld an:

	private function createArticlesSupplierCategoryAttribute()
	{
		/** @var CrudService $service */
		$service = $this->container->get('shopware_attribute.crud_service');
		$service->update('s_categories_attributes', 'custom_categories_permalink',
			TypeMapping::TYPE_STRING, [
				'label' => 'Kategorie-Permalink',
				'helpText' => '',
				'position' => 0,
				'translatable' => true,
				'displayInBackend' => true,
			]);
	}

 

Leider werden die neu hinterlegten URLs aus dem Freitextfeld, nach einem SEO-Index-Neuaufbau und dem Cache löschen, mit folgendem Snippet nicht übernommen:

{if $sCategory.attribute.custom_categories_permalink}{$sCategory.attribute.custom_categories_permalink}{else}{sCategoryPath categoryID=$sCategory.id}{/if}/

 

Vielleicht hat von euch jemand eine Lösung?

 

Vielen Dank und beste Grüße
Michael


Der richtige Event um Order bei Zulieferer zu prüfen und an den zu übermitteln.

$
0
0

Hallo Zusammen,

Nachdem der Käufer eine Ware dem Warenkorb hinzufügt und nachdem der Kunde "konstepflichtig bestellen" klickt, möchten wir eine Afrage bezüglich des aktuellen Preises der Artikeln sowie ihrer aktuell verfügbaren Menge senden. Wir verkaufen Waren von einem Großhändler, der sie auch selbst zuliefert. Jeden Tag importieren wir die aktuelle Preisliste, aber seit dem Importzeitpunkt bis zum Bestellzeitpunkt können sich rein theoretisch sowohl der Preis als auch die verfügbare Menge ändern, was dan Probleme mit Erfüllung des Vertrages zwischen uns und den Kunden verursachen könnte.

Was wären die richtigen Ereignisse, die wir verwenden sollten, um die beschriebene Logik in Shopware-Bestellprozess reinzubauen?

Vielen Dank im Vorab.

Sprachauswahl im Template abändern

$
0
0

Hallo ihr Lieben!

Bei der Länderauswahl in der Menüleiste erscheint eine Select-Box, um in die jeweiligen Sprach-Shops zu wechseln.

Meine Frage: wie lässt sich in diese Box so abändern, dass die Ländernamen nebeneinander stehen und ich nur durch einen Klick auf die Namen in den anderen Shop wechseln kann?

 

Viele Grüße

Per API Bilder in Media importieren

$
0
0

Hallo zusammen,

gerade versuche ich einen API-Import für Bilder zu machen, die in ein bestimmtes Album in die Medienverwaltung hinein sollen.

$client->call(
    'media',
    'POST',
    [
        [
            'albumId' => 1,
            'file' => 'http://www.irgendwo.de/bild01.jpg',
            'decription' => 'xyz'
        ],
        [
            'albumId' => 1,
            'file' => 'http://www.irgendwo.de/bild02.jpg',
            'decription' => 'abc'
        ]
    ]
);

Allerdings bekomme ich immer nur eine Fehlermeldung:

HTTP: 400
No Success
A required parameter is missing:

Ohne Angabe, was nun genau fehlt.

Hier im Forum habe ich einen älteren Beitrag gefunden, in dem empfohlen wurde, statt 'albumId' besser 'album' zu vewenden, doch das brachte leider garnichts. Auch habe ich es sowohl mit 'file' als auch mit 'link' - ebenfalls mit gleicher Fehlermeldung.

Mein erster Versuch war PUT statt POST, doch das funktioniert offenbar gar nicht.

Hat jemand eine Idee, wie es tatsächlich funktioniert?

 

Mittels JavaScript auf Details einer Bestellung auf der Abschlussseite

$
0
0

Hallo zusammen,

lässt sich auf der Seite nach dem Bestellprozess auf die Details der Bestellung mittels JavaScript zugreifen?

Wichtig wäre, was gekauft wurde, wie viel, Summe des Einkaufs usw.

Danke euch!
Michael

Netto Preis auf Brutto umrechen

$
0
0

Ich möchte mit Smarty 19% vom Preis abziehen. Die Variable um die es geht:

{$sArticle.price}

Ist das möglich und wenn ja, wie schreibe ich das?
{$sArticle.price-???}

SW 5.3 - Eigenes JS injizieren

$
0
0

Hallo,

mit SW 5.3 hat sich die Ladelogik für die Scripts geändert, es gibt einen JS-Listener

document.getElementById('main-script').addEventListener('load')

was schön ist! 
Da das unter SW < 5.3 natürlich nicht zur Verfügung steht: gibt es einen (einfachen) Weg,
eigenes JS versionsübergreifend und sicher nach dem Laden von jQuery & Co. zu injizieren?

 

Vielen Dank!
Nils 

Conversions vor Google Analytics verbergen

$
0
0

Werte Mitstreiter,

wir müssen unsere "offline" Verkäufe täglich nach Feierabend aus dem Shop ausbuchen und benutzen dafür unser Frontend. Im Backend funktioniert das nicht vernünftig da dort die Bilder und Beschreibungen fehlen und wir nicht sicher sein können, dass wir den richtigen Artikel erwischen. Also habe ich zwei Ideen wie man das anders lösen kann:

Idee 1: Ich habe einen Subshop erstellt mit einem eigenen Theme ohne Google Pixel. Das Problem ist dass ich den Subshop nicht vor Google verstecken kann und sich somit Kunden dahin verirren könnten. Eine Passwort Abfrage per htaccess geht auch nicht da der Subshop keine eigenen Dateien/Verzeichnisse hat.

Idee 2: Man könnte das Theme des Hauptshops so anpassen, dass das Google Pixel nur bei bestimmten Benutzern/Benutzergruppen ausgeführt wird. Ich habe nur leider keine Ahnung, wie man so etwas umsetzt und ob das überhaupt möglich ist.

Kann mir jemand bei einer der beiden Ideen weiterhelfen oder eine weitere Idee beisteuern um dieses Problem zu lösen? Im Moment komme ich nicht weiter....vielen Dank schonmal im Vorraus.

 

Gruß

Bastian


Keine Unterseiten aufrufbar nach Aktivierung von ElasticSearch

$
0
0

Hallo,

ich brauche mal wieder ein bisschen Hilfe mit meinem aktuellen Projekt.

Ich habe Shopware 5.2.24 installiert und alles funktioniert soweit super. Nun möchte ich allerdings ElasticSearch aktivieren, da wir einigermaßen viele Produkte haben. Ich habe alles soweit konfiguriert, meiner Meinung nach ist auch alles korrekt. Ich kann ElasticSearch über die config.php aktivieren und die Startseite aufrufen. Sobald ich allerdings versuche, eine Unterseite/Kategorie aufzurufen, bekomme ich nur "Ups! Es ist ein Fehler aufgetreten".

Im Log steht leider nichts brauchbares, außer eine Exception "Elasticsearch\Common\Exceptions\ServerErrorResponseException:" ohne Beschreibung oder weitere Informationen.

Ich bekomme keine Fehler bei der Erstellung des Index in ElasticSearch, alle Produkte werden geschrieben und der Vorgang wird erfolgreich beendet.

Gibt es irgendwo eine Einstellung, die ich übersehen habe?

URL-Struktur nach Umzug von Magento auf Shopware

$
0
0

Hallo, zusammen, 

ich suche nach einer Lösung: nach Umzug eines Shops  von Magento 1 auf Shopware, soll die URL-Struktur identisch bleiben. Weiß jemand, wie kriegt man ein "/" am Ende der URL, nach Umzug verschwindet es bei vielen Produkt-URLs und da hat man ein großes Problem. Für Tipps wäre ich sehr dankbar.

MfG, Alex

Wie stelle ich bei Artikelvarianten den Preisaufschlag auf BRUTTO statt NETTO als Voreinstellung ?

$
0
0

hy.

wie kann man im bei der erstellung einer artikelvariante unter der rubik  Preisaufschläge für varianten, den drop down preis dauerhaft auf BRUTTO stellen?
voreinstellung ist netto. da ich das im sinne des kunden immer in brutto angebe um runden zahlen zu generieren, würde ich das gerne dauerhaft von hause aus als brutto haben.
aktuell muss ich bei JEDER erstellung jedes einzelne teil auf brutto umstellen, das nervt bei großer menge.

Wer kann mir sagen wo ich das im backend dauerhaft umstellen kann?

 

CDN für .js und .css

$
0
0

Hallo aus der Schweiz

 

Ich habe in der config.php die 'mediaUrl' => 'https://e4me.cdn-service.ch/&#39; drin stehen.

Damit erreiche ich, dass sämtliche Inhallte vom Ordner /media vom cdn service ausgegeben werden.

Wie kann ich erreichen, dass auch Bilder vom Ordner /themes sowie sämtliche .js und .css über CDN laufen?

Grüsse 

Wie persistente Produktfilter bereitstellen? (Produktfilter beibehalten auch bei Seitenwechsel etc.)

$
0
0

Zu meinem Erstaunen habe ich festgestellt, das man nirgendswo einstellen kann, das ein Produktfilter persistent bleibt / auch bei einem Seitenwechsel bestehen bleibt.

Ich brauche diese Möglichkeit aber, um bei einem Shop sicherzustellen, das nur die Artikel angezeigt werden, die mit einem bestimmten Fahrzeug kompatibel sind.

Leider gehen die Einstellungen aber bei jedem Seitenwechsel verloren.

Gibt es hier eine einfache Möglichkeit, das ganze beizubehalten und erst wenn explizit die Filterung wieder aufgehoben wird, das ganze zu verwerfen?

Für irgendwelche Ansatzpunkte diesbezüglich wäre ich sehr dankbar :)

PDF Rechnung Rechnungs-Nr. im Code 39

$
0
0

Ich möchte zusätzlich auf meiner PDF-Rechnung, nur die Rechnungsnummer in der Schriftart Code39, also so eine Art Barcode, integrieren. Wie kann ich das in der /documents/index.tpl in meinem Theme lösen?

Kunden-Import via REST Resource: Performance nimmt exponentiell ab

$
0
0

Guten Morgen liebes Forum,

Ich habe folgendes Problem:

Ausgangssituation:
Mein Plugin importiert mittels CLI Command ca. 20.000 Kundendatensätze und verwendet dazu die REST Resourcen "customer" und "address". Das ganze läuft auf Debian 8, MySQL DB auf einem getrennten Host.

Das Problem:
Beim Start des Importvorgangs wird die CPU bei einem Core zu 100% ausgelastet, was bei dem Prozess via CLI IMO absolut ok ist. Speicher wird auch sauber belegt (kein swappen). Das Interessante dabei: Mit fortlaufender Dauer wird der Importvorgang exponentiell langsamer. Die ersten 1000 Kunden werden binnen einer Stunde importiert, für die nächsten 4000 hat das System bereits 12 Stunden gebraucht. Aktuell benötigt er für einen Kundendatensatz zwischen 5 und 10 Sekunden.

Serverseitig sieht alles wie zu Beginn aus: 100% CPU Load, normale Speicherauslastung. Nachdem sich der benötigte Plattenplatz auch nicht ändert schließe ich ein Caching-Problem eigentlich ebenfalls aus.

Hatte jemand von Euch schon mal ein ähnliches Problem? Oder noch eine Idee?

Danke & LG


CSS-Datei in Plugin

$
0
0

Ich bräuchte einen kleinen Tipp wie ich eine CSS-Datei, die ich in einem Plugin vorhalte, dem System bekannt mache und global im Frontend zur Verfügung habe. Am liebsten würde ich die Datei so einbinden, dass sie den Cahce nutzt und auch vom System ge-minified wird.

 

Bestimmt ist es ganz einfach.. nur fehlt mir gerade wohl der richtige Grundgedanke.

Risk Management - weitere Filtermöglichkeiten nötig.. "KundenNR IST NICHT" oder "Kunde Attribut IST"

$
0
0

Wie kann man das Risk Management denn einfach durch weitere Filtermöglichkeiten ergänzen?

Ich vermisse grundlegende und häufig vorkommende Filter-Regeln, wie etwa das man Lastschrift sperrt bis auf eine kleine ausgewählte Liste von Kunden, die weitaus kleiner ist, als sie sinnvoll durch eine Kundengruppe abbildbar wäre, sprich, schlicht einen KUNDENNR ist nicht - Filter oder aber alternativ die Filterung auf Boolean Freitextfelder, wie z.B. "lastschriftberechtigt" true / false.

Wie kann man das einfach nachrüsten? Mir fehlt da ein bisschen die Doku.

Neue Spalte in der Artikel-Übersicht im Backend durchsuchbar/filterbar machen?

$
0
0

Hallo zusammen,

ich habe den Fall, dass ich die Grid-Übersicht der Artikel um eine Spalte erweitern möchte. Das habe ich mit Hilfe des DQL Helpers auch gemacht. Zuerst habe ich in der Bootstrap meines Plugins das Event SwagMultiEdit_Product_DqlHelper_getColumnsForProductListing_filterColumns subscribed. In dem Event mache ich dann folgendes:

public function filterBackendArticleColumns(\Enlight_Event_EventArgs $args) {
        $result = $args-&gt;getReturn();

        $shownColumns = $args-&gt;get('defaultColumns');
        $columnPositions = array_flip($shownColumns);

        $alias = 'FpDemandPlanning_Supplier';
        $result['FpDemandPlanningSupplier'] = array(
            'entity' =&gt; 'FpDemandPlanning',
            'field' =&gt; 'supplier',
            'editable' =&gt; false,
            'type' =&gt; 'string',
            'nullable' =&gt; true,
            'allowInGrid' =&gt; true,
            'columnName' =&gt; 'supplier_id', //column
            'alias' =&gt; $alias,
            'table' =&gt; 'fp_demand_planning_supplier_manufacturers', //table
            'show' =&gt; in_array($alias, $shownColumns),
            'position' =&gt; array_key_exists($alias, $columnPositions) ? $columnPositions[$alias] : -1,
        );

        return $result;
    }

Danach habe ich in meinem eigenen dekotrierten DQL Helper, folgendes gemacht:
 

    public function getDefaultColumns()
    {
        $columns = parent::getDefaultColumns();
        $columns[] =  'FpDemandPlanning_Supplier';

        return $columns;
    }

    public function getProductForListing($detailId) {
        $article = parent::getProductForListing($detailId);

        $articleObj = $this-&gt;getModelManager()-&gt;find(Article::class, $detailId);

        $service = $this-&gt;container-&gt;get('fp_dashboard.dashboard_service');
        $supplier = $service-&gt;getArticleFpSupplier($articleObj);
        $article['FpDemandPlanning_Supplier'] = $supplier['name'];

        return $article;
    }

 

Das funktioniert soweit auch gut und die Spalte wird im Backend mit den nötigen Daten angezeigt. Aber wie bekomme ich es nun hin, dass die Spalte ebenfalls durchsucht wird, wenn jemand in das Suchfeld etwas eingibt? Dazu habe ich in ExtJs/backend/article_list/constroller.main.js die Funktion onSearch gefunden und vermute, dass ich dies hier erweitern muss:

filter = '(article.name = "%[0]%" OR detail.number = "%[0]%" OR supplier.name = "%[0]%") AND ';

Aber wie? fpdemandplanning.supplier wird nicht erkannt. 

Hat hier jemand eine Idee, wie ich meine neue Spalte in der Suche integrieren kann und wie ich es als zusätzliches Filterkriterium auf der linken Seite etablieren kann? Muss ich hierfür nicht nur über den DQLHelper gehen sondern noch etwas in ExtJs machen, damit fpdemandplanning.supplier im Suchfilter erkannt wird?

Danke, falls hier jemand helfen kann!

 

Zahlungs- und Versandarten per REST API abfragen

$
0
0

Hallo Community,

ich würde gerne Bestellungen per REST API anlegen. Das funktioniert soweit mit der Shopwareversion 5.2.21.

Mein Problem ist, dass ich die Zahlungs- und Versandarten-IDs nicht zur Verfügung habe. Deshalb möchte ich diese mit bspw. den Namen (Rechnung, Vorkasse, Paypal, etc.) abfragen. Im Moment fällt mir nur dazu ein, die API per Plugin zu erweitern, um die IDs abzufragen.

Geht es auch einfacher bzw. eleganter?

Grüße

Mathias

Fehlendes Attribut beim Google Merchant Feed

$
0
0

Servus,

 

wir wollen bei einem Shop per Feed Google Merchant Center anbinden. Das funktioniert soweit außer bei einem Attribut.

missing sub-attribute in attribute: versand.preis

Wo muss das gepflegt sein?

 

Vielen Dank für die Hilfe

Viewing all 2871 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>