Beiträge von StefanSTS

    Hallo Silas,


    aplikko hatten wir hier schon einmal vor einiger Zeit mit Problemen. Vielleicht findet die Forumsuche noch mehr.

    Die Sprachvariablen von VirtueMart scheinen soweit richtig verwendet zu werden, da die üblichen Sprachinhalte passen.

    Die englischen Begriffe werden wahrscheinlich im Override-Ordner des Template zu finden sein. Das sieht so aus, als wären die "hard coded". Normalerweise sind dort Joomla Sprachvariablen.


    Da hilft es, mit einem Tool eine Volltextsuche nach den englischen Begriffen über den Template-Ordner laufen zu lassen.

    Meistens finden sich dann die Übeltäter.

    Total Commander oder Notepad++ könnten die Volltextsuche evtl. Wer mit Linux arbeitet, kann dafür Krusader verwenden.


    Das Warenkorb-Symbol ist normalerweise über das Warenkorb-Modul eingebunden. Evtl. einmal unter den Joomla-Modulen schauen, ob da etwas aktiviert werden kann.


    Grüße

    Stefan

    Hallo Bernd,


    dafür sind die deaktivierten/versteckten Kategorien, auch Steuerungskategorien genannt, eingeführt worden.

    Man legt eine solche Steuerungskategorie an, weist sie dem Produkt zu und erstellt dann Regeln für diese Kategorien.


    Möglicherweise gibt es andere Möglichkeiten, aber ich nehme immer die, die vorgesehen sind.


    Grüße

    Stefan

    Hallo Eva,


    für solch eine Änderung empfiehlt sich ein Override im Template.

    Dazu müssen die entsprechenden Dateien in den Ordner

    /templates/protostar/html/com_virtuemart/XansichtX kopiert werden.


    XansichtX ist ein Platzhalter für die entsprechende "VirtueMart View".

    Es gibt die Warenkorb-Ansicht, die Kategorie-Ansicht, Produktdetails-Ansicht usw.


    Hier wird es der Ordner der View "cart" sein:

    /templates/protostar/html/com_virtuemart/cart/


    Die benötigten Dateien sollte man aus dem orginal VirtueMart-Ordner verwenden, hier:

    /components/com_virtuemart/views/cart/tmpl/default.php

    Diese Datei in den Override-Ordner kopieren und diese Datei auch bearbeiten.


    Die Datei enthält eine Zeile:

    echo $this->loadTemplate ('cartfields');


    Diese Zeile muss verschoben werden. Also die obige Zeile ausschneiden und weiter oben unter


    echo $this->loadTemplate ('address'); einfügen.


    Dann sollte das so aussehen:

    Code
    1. echo $this->loadTemplate ('address');
    2. echo $this->loadTemplate ('cartfields');


    Bitte darauf achten, dass die Änderungen wirklich in der Override-Datei im Override-Ordner landen. Die original VirtueMart Core-Dateien werden bei einem Update überschrieben.


    Hope that helps

    Stefan

    PS: Im Template sollte ein neuer Stil und ein neues Layout angelegt werden, das ist in der Template-Dokumentation beschrieben.


    Danach kann man die Layouts in dem eigenen Layout ändern, ansonsten werden die Dateien im Ordner /default/ beim nächsten Update überschrieben.

    Hallo Joerg,


    wenn Du die Lösung des Problems hier hineinschreibst, dann ist das hilfreicher als löschen, dann erfüllt das Forum genau die Aufgabe, die es soll:


    Eine öffentliche Betrachtung der Probleme mit Lösungen, die auch für andere hilfreich sind.


    Grüße

    Stefan

    Hallo Joerg,


    im Template gibt es einen Ordner layouts, dort sind alle Dateien, die VM beeinflussen.

    Um das genauer sagen zu können, müsste ich da selbst heineinschauen und testen. Das geht allerdings dann aber über meine Zeit, die ich mir als Grenze für das Forum setzen muss.


    Falls Du den Code findest, kannst Du versuchen, den Code auszutauschen.


    PHP
    1. <span class="<?php echo $stock->class ?> hasTooltip" title="<?php echo $stock->tip ?>"><?php echo $stock->text ?></span>


    zu


    PHP
    1. <span class="<?php echo $stock->class ?> hasTooltip" title="<?php echo $stock->tip ?>"><?php echo $this->product->product_in_stock ?></span>

    Hallo Joerg,


    man kann die Anzahl der vorhandenen Produkte in den Produktdetails so ausgeben:

    Code
    1. echo $this->product->product_in_stock;

    Das müsste in einen Override für das Produktlayout. Auf der VirtuePlanet-Seite ist dazu eine gute Dokumentation, allerdings auf Englisch.


    Ich weiß nur gerade nicht, ob man die bestellten Produkte davon noch abziehen muss.


    Etwas PHP-Verständnis braucht es allerdings, sonst wird es schwieriger. Ein Blick in die originalen VM-Dateien könnte helfen.

    components/com_virtuemart/views/productdetails/tmpl/default.php

    EDIT: das wurde ausgelagert in die stockhandle.php

    components/com_virtuemart/sublayouts/stockhandle.php




    Grüße

    Stefan

    Für Updates verwende ich normalerweise zuerst eine Spiegelung des Live-Shops.

    Diese Spiegelung kann man dann in Ruhe durchtesten und wenn alles läuft, kann man die Updates im Live-Shop machen.


    Das gleiche gilt, wenn man neue Produktkonstrukte anlegen will, die andere Eigenschaften haben als die zuvor genutzten, verschiedene selbsterstellte Felder usw. Dann hat man die Ruhe weg, ohne dauernd befürchten zu müssen, dass der Live-Shop ausfällt.

    Auf Updates verzichten heißt auf lange Zeit, dass man Sicherheitslücken mitschleppt, die immer mal wieder auftauchen. Das gilt insbesondere für andere Erweiterungen, die sonst noch genutzt werden.


    Viel Spaß weiterhin

    Stefan

    Die Warnung hat in Deinem Fall etwas mit AvalaraTax zu tun. Soweit Du das Plugin nicht verwendest, wird es wohl keine Auswirkungen haben.

    Das Problem ist allerdings etwas breiter gestreut. Das wird gerade untersucht.


    Eine Warnung muss nicht bedeuten, dass etwas nicht funktioniert. Notices und Warnings deuten aber an, dass es in folgenden PHP-Versionen zu einem Fatal Error kommen kann, weil Funktionen verändert oder entfernt werden, deshalb muss man sich schon darum kümmern.


    Die VM-Entwickler haben jedenfalls keine Langeweile. Schon seit Jahren nicht, auch wenn man das außerhalb nicht so mitbekommt, es gibt immer zu tun, entweder weil PHP sich ändert, Joomla oder sonstetwas. Und das neben der normalen Weiterentwicklung.



    Hostern sind überwiegend nie Probleme bekannt, das ist normal. Wenn Du 2 GB Webspace hast, bist Du wahrscheinlich auf einer Maschine mit mindestens 200 bis 500 anderen Kunden, da ist es normal, dass es Engpässe gibt. Das wird erst besser, wenn man fest zugesagte Prozessor und Speicherresourcen bekommt. Am Anfang mag ein kleiner Plan reichen, man sollte allerdings ein Auge auf die Performance haben. Wenn der Shop wächst und mehr Zugriffe hat, bleiben irgendwann die Kunden weg, weil sie zu lange auf das Laden der Seite warten müssen. Also hin und wieder testen, dafür gibt es genug Performance Tools im Netz.


    Grüße

    Stefan

    Hallo Joerg,


    an der Warnung wird gerade vom VirtueMart Team gearbeitet, das ist ein relativ kompliziertes Problem. Es hat sich etwas in Joomla geändert, weil die auf PHP 8 reagiert haben, leider nicht mit einem Versionsumschalter für PHP, der das Problem erst einmal aufgefangen hätte.


    Zur Zeit kann man einfach die Fehlerberichterstattung ausschalten, dann kommt zumindest die Warnung nicht mehr. Ich nehme an, das Problem ist in der nächsten Version gelöst.


    Die "Kaufversion von VirtueMart", ich nehme an, Du meinst "VirtueMart Pro", ist eine Dienstleistung vom Media Service Essen, dem Betreiber dieses Forums. Das ist keine vom VirtueMart Team herausgegebene Bezahlversion. VirtueMart ist kostenlos. Die "Pro" beruht auf dem gleichen VirtueMart Core und hat ein angepasstes Template und einige vorinstallierte Plugins. Ich hab da nur sporadisch hineingeschaut, deshalb kann ich da nicht viel zu sagen.


    Grüße

    Stefan

    Servus,


    wenn Du meinst, dass Du Version 10373 über 10373 gebügelt hast, dann wurde evtl. vorher der Installationsvorgang abgebrochen und nicht alle Dateien überspielt. Das könnte an der maximalen Ausführungszeit liegen, die beim Server eingestellt ist. Evtl. einmal überprüfen, ob der Webspace beim Hoster ausreichend dimensioniert ist, bzw. der Hoster ein guter ist.


    Freut mich, dass es funktioniert.


    Grüße

    Stefan

    Das CSS für die Mitgliedsbeitrag-Seite dann einfach mit der neuen Klasse erweitern.


    .mitgliedsbeitrag .price-plugin {

    display: none;

    }


    Und bitte kein !important verwenden, wenn es nicht sein muss. !important ist ein sehr unschönes Ding in CSS, das mehr Probleme macht als es löst.


    Grüße

    Stefan

    Hallo Joerg,


    Inline JavaScript über onclick würde ich in einem Shop nicht verwenden. JavaScript sollte über JS-Dateien aufgerufen werden. Das Thema ist ziemlich lang und findet sich, wenn man nach Content Security Policy sucht.


    Es gibt je nach Template verschiedene Möglichkeiten, Popups anzuzeigen ohne selbst JavaScript einzubinden.

    Normalerweise kommen die Templates mit Bootstrap. Bootstrap hat ein Skript für Popups. Google findet da sicher auch eine gute Erklärung.


    Vielleicht hast Du auch die nötigen Skripte an Bord, um nur:

    <a href=".../versandkosten" class="modal">...

    anzugeben. Dann sieht ein vorhandenes Skript die Klasse modal und zeigt den enthaltenen Link im Popup an.


    Die Vorgehensweise ist je nach Template unterschiedlich.


    Grüße

    Stefan

    Hallo Daniel,


    man kann die Sprachdateien auch für eine alte Installation verwenden, diese würde ich aber nur lokal nutzen.


    Ich möchte ausdrücklich davon abraten, einen Shop unter Joomla 2.5 zu verwenden, da Joomla 2.5 bekannte und unerfreulicherweise eklatante Sicherheitslücken hat, die ausgenutzt werden können, um das gesamte System zu kompromittieren.

    Wenn die Kundendaten entwendet werden, wird das Spiel nicht lustig.


    Ich würde zu einer Migration auf Joomla 3 raten, bzw. den Shop und die Seite neu aufsetzen. Zeitdruck hin oder her, das ist der vernünftige Weg.


    Grüße

    Stefan

    Hallo Daniel,


    richtig, dem Pfad fehlte noch der view/-Ordner, da war ich wohl noch nicht richtig wach.

    Nenne das Layout nur mitgliederbeitrag.php, dann wird es in der Produktbearbeitung im Dropdown für "Produktseite" angezeigt.


    Bitte beachte meine Ausführung zu Joomla 2.5 in dem anderen Thread.


    Servus,


    Man kann das ausblenden aber nur für den kompletten Shop machen, eine Class kann man dem Artikel wohl nicht zuweisen um nur dann die Felder auszublenden wenn es dieser Artikel ist?


    Auch kann man wohl nicht vorgeben das die Felder ausgefüllt werden müssen?

    es könnte helfen, ein eigenes Layout für dieses Produkt anzulegen.

    Im Ordner /components/com_virtuemart/productdetails/tmpl/ die Datei default.php kopieren und umbenennen in mitglider.php oder so, dann in der Produkt-Bearbeitung dieses Layout auswählen.

    Wenn in der mitglieder.php eine Klasse gesetzt wird: class="mitglieder_container", kann man diese im CSS direkt ansprechen.


    Wenn die Felder ausgefüllt werden müssen, könnte man ein wenig jQuery schreiben, um das zumindest im Frontend zu erzwingen.

    In der Logik:

    Wenn Feld leer, blockiere Warenkorb-Button und bei Klick auf Warenkorb-Button markiere erforderliches Feld rot.

    Das sollte für das Frontend ausreichen.


    Das ist schöne Anpassung/Bastelei in den Template-Overrides, macht richtig Spaß wie flexibel VirtueMart ist. ;-)


    Die tabellenartige Liste in Post 5 könnte evtl. mit dem multiadd-Layout funktionieren, das ist aber dann etwas mehr Bastelei.


    Grüße

    Stefan