Productstream unter Warenkorb anzeigen

Hallo,

 

wie kann ich ähnliche Artikel im Warenkorb anzeigen?

Wenn ich diesen block in die cart.tpl einfüge wird leider nichts angezeigt:
 

                                        {* Similar products *}
                    {block name="frontend_detail_index_recommendation_tabs_entry_similar_products"}
                    {if count($sArticle.sSimilarArticles) > 0}
                    {s namespace="frontend/detail/index" name="DetailRecommendationSimilarLabel"}{/s}
                    {/if}
            {/block}

 

Naja, das scheint ja nur der TAB- Link aus den Details zu sein, das geht natürlich auf einer anderen Seite so nicht. Was soll auch ein “ähnlicher” Artikel im Warenkorb sein? Ähnlich zu was?
Guck Dir das an:
Quick Tip: Shopping worlds without AJAX
Damit dann in die TPL eine Einkaufswelt mit dem Stream einbauen.
Aber “ähnlich” zu den Artikeln im Warenkorb wird wohl nur mit einem eigenen Plugin gehen.

Hi Sonic,

stimmt, war etwas falsch von mir erklärt. Besser wäre es wenn man eine EW einfügt. Aber woher bekomme ich die ID der EW? Diese werden ja nicht mehr angezeigt?

Trick 17 mit Selbstüberlistung. Ich mach das ganze derzeit für leere Suchseiten :wink:

Chrome ist Dein Freund:
Öffne im Chrome die Devconsole mit F12 und dann TAB network
Speicher nun die EKW
In den Events auf der linken Seite dann den Namen " detail?_dc=" auswählen
Und rechts runterscrollen: Unter Query String Parameters  steht dann die EKW ID id:
 

 

super Idee. Habe die ID auch über die DB gefunden. Im Quelltext wird die EW jetzt geladen, leider wird sie im cart aber nicht angezeigt.  Blush

Hast Du das nach Anleitung aus dem Link oben gemacht?
JS im Theme eingebunden, kompiliert?

                Unsere beliebtesten Artikel aus allen Bereichen
• Gewürzdosen  • Aromadosen • Aufbewahrung  • Lock&Lock  • Teedosen  • Vorratsgläser

 

ja, genau wie in der Anleitung. Geladen wird ja, nur nicht angezeigt…

hat sich an dieser Anleitung seit 5.3 was geändert?
https://developers.shopware.com/blog/2017/06/26/quick-tip-shopping-worlds-without-ajax/?_ga=2.3171702.716219278.1509430495-1691117795.1506765069

Ich hab es exakt so für die Suchergebnisseite gemacht - für card müsste ich ggf. später mal ausprobieren.

  1. js mit den Änderungen für den Statemanager angelegt
  2. die js in der Theme.php eingebunden
  3. den Code-Schnipsel aus dem Blog in die tpl-Datei eingebunden
  4. Theme compiliert
  5. Ergebnis auf der Seite bewundern.

SW 5.3.4

 Theme.php

	protected $javascript = [
		'src/js/statemanager.js'
	];

 

statemanager.js

// Statemanager Change for using EKW without ajax-loading
window.StateManager
    .removePlugin('.emotion--wrapper', 'swEmotionLoader')
    .addPlugin('.emotion--wrapper:not(.emotion--non-ajax)', 'swEmotionLoader')
    .addPlugin('.emotion--non-ajax *[data-emotion="true"]', 'swEmotion');

 

ok,

 

meine Vorgehensweise:
 

EW.js in _public/src/js mit folgenden Inhalt:

window.StateManager
    .removePlugin('.emotion--wrapper', 'swEmotionLoader')
    .addPlugin('.emotion--wrapper:not(.emotion--non-ajax)', 'swEmotionLoader')
    .addPlugin('.emotion--non-ajax *[data-emotion="true"]', 'swEmotion');

theme.php:
 

protected $javascript = [
    'src/js/EW.js'
];

Block in cart.tpl eingefügt:
 

    {action module="widgets" controller="emotion" action="index" emotionId="40"}

Theme kompiliert, cache gelöscht, usw. usw. SW 5.3.4

Setz mal noch eine Kommentarzeile ganz zu Anfang in die JS.
Hab dazu mal was im Forum gelesen, dass es Auffälligkeiten gibt mit fehlerhaften JS-Einbindungen wenn in der ersten Zeile Code steht.
Das DIV ist in der DIV-Verschachtelung auch da, wo sonst immer die EMOS liegen? im DIV “content–wrapper”?

Das mit der Kommentarzeile funktioniert auch nicht.
Meine cart.tpl sieht so aus:
 

{extends file='frontend/index/index.tpl'}

.........
......
            {* Product table *}
            {block name='frontend_checkout_cart_table'}
                

                    {* Deliveryfree dispatch notification *}
                    {block name='frontend_checkout_cart_deliveryfree'}
                        {if $sShippingcostsDifference}
                            {$shippingDifferenceContent="{s name='CartInfoFreeShipping'}{/s} {s name='CartInfoFreeShippingDifference'}{/s}"}
                            {include file="frontend/_includes/messages.tpl" type="warning" content="{$shippingDifferenceContent}"}
                        {/if}
                    {/block}

                    {* Error messages *}
                    {block name='frontend_checkout_cart_error_messages'}
                        {include file="frontend/checkout/error_messages.tpl"}
                    {/block}

                    {block name='frontend_checkout_cart_table_actions'}
                        

                            
                                {* Continue shopping *}
                                {block name="frontend_checkout_actions_link_last"}{/block}

                                {block name="frontend_checkout_actions_confirm"}

                                    {* Forward to the checkout *}
                                    {if !$sMinimumSurcharge && !($sDispatchNoOrder && !$sDispatches)}
                                        {block name="frontend_checkout_actions_checkout"}
                                            
                                                {s name="CheckoutActionsLinkProceedShort" namespace="frontend/checkout/actions"}{/s}
                                                
                                            
                                        {/block}
                                    {else}
                                        {block name="frontend_checkout_actions_checkout"}
                                            
                                                {s name="CheckoutActionsLinkProceedShort" namespace="frontend/checkout/actions"}{/s}
                                                
                                            
                                        {/block}
                                    {/if}
                                {/block}
                            
                        
                    {/block}

                    {* Product table content *}
                    {block name='frontend_checkout_cart_panel'}
                        
                            

                                {* Product table header *}
                                {block name='frontend_checkout_cart_cart_head'}
                                    {include file="frontend/checkout/cart_header.tpl"}
                                {/block}

                                {* Basket items *}
                                {foreach $sBasket.content as $sBasketItem}
                                    {block name='frontend_checkout_cart_item'}
                                        {include file='frontend/checkout/cart_item.tpl' isLast=$sBasketItem@last}
                                    {/block}
                                {/foreach}

                                {* Product table footer *}
                                {block name='frontend_checkout_cart_cart_footer'}
                                    {include file="frontend/checkout/cart_footer.tpl"}
                                {/block}
                            
                        
                    {/block}

                    {* Premium products *}
                    {block name='frontend_checkout_cart_premium'}
                        {if $sPremiums}

                            {* Actual listing *}
                            {block name='frontend_checkout_cart_premium_products'}
                                {include file='frontend/checkout/premiums.tpl'}
                            {/block}
                        {/if}
                    {/block}

                    {block name='frontend_checkout_cart_table_actions_bottom'}
                        
                            {block name="frontend_checkout_actions_confirm_bottom"}
                                

                                    {* Continue shopping *}
                                    {block name="frontend_checkout_actions_link_last_bottom"}{/block}

                                    {* Forward to the checkout *}
                                    {if !$sMinimumSurcharge && !($sDispatchNoOrder && !$sDispatches)}
                                        {block name="frontend_checkout_actions_confirm_bottom_checkout"}
                                            
                                                {s name="CheckoutActionsLinkProceedShort" namespace="frontend/checkout/actions"}{/s}
                                                
                                            
                                        {/block}
                                    {else}
                                        {block name="frontend_checkout_actions_confirm_bottom_checkout"}
                                            
                                                {s name="CheckoutActionsLinkProceedShort" namespace="frontend/checkout/actions"}{/s}
                                                
                                            
                                        {/block}
                                    {/if}
                                

                                {if !$sMinimumSurcharge && ($sInquiry || $sDispatchNoOrder)}
                                    {block name="frontend_checkout_actions_inquiry"}
                                        
                                            {s name="CheckoutActionsLinkOffer" namespace="frontend/checkout/actions"}{/s}
                                        
                                    {/block}
                                {/if}
                            {/block}
                        
                    {/block}
                   {* EW unter Warenkorb *}
            
                {action module="widgets" controller="emotion" action="index" emotionId="40"}
            

                    {* Benefit and services footer *}
                    {block name="frontend_checkout_footer"}
                        {include file="frontend/checkout/table_footer.tpl"}
                    {/block}
                
            {/block}

        {else}
            {* Empty basket *}
            {block name='frontend_basket_basket_is_empty'}
                
                    {include file="frontend/_includes/messages.tpl" type="warning" content="{s name='CartInfoEmpty'}{/s}"}
                
            {/block}
        {/if}
    
{/block}

 

Ich müsste es mal selber im Warenkorb ausprobieren. Vielleicht mach ich das die Tage mal.
Warum hat Deine “eigene” cart.tpl soviel [original]-code - so viele Änderungen?!?

Ich habe zum Testen einfach mal die Original Datei genommen. Ist der Testshop.

Kleines Update:
Ich bin gerade dabei, mir das auch für den Warenkorb einzubauen.
Für eine leere Cart ist es eingebaut, und funktioniert so, wie es soll.
Da müsstest Du mal sauber ein Theme ableiten und nur einen block überschreiben - ggf. in der Browser-Console gucken, ob ein JS-Fehler geworfen wird.
Der nächste Schritt: Auch für eine Cart mit Artikeln eine EKW unten unter oder über den Cart-Footer.
Link auf meine “Cart” gerne per PN auf Nachfrage  Wink