All posts by Morten Vadskær

Juleprep workshop 2017

For at få julesalget ordentligt i hus, skal der skrives mails og klargøres Facebook opslag … og drikkes en øl i festligt lag.

Så vi har booket mødelokale, kaffe, wifi & værelser på Hindsgavl Slot d. 10. – 11. oktober fra den årle morgenstund til hen ad dagen næste dag. Belært af folkets arbejdsiver fra sidste år, har vi sprunget den 3-retters menu over og bestilt burgere til os til aftensmad.

Pris inkl kaffe, te, morgenmad og overnatning 3450,- ex moms.

Betaling ved tilmelding og det foregår over dit Shoporama abonnement. Tilmelding er bindende (men din plads må godt sælges, hvis du bliver forhindret i at dukke op).

(Der er 100,- rabat pr. person, hvis man bor på dobbeltværelse)

Som lille bonus er der 1 times 1:1 hjælp til Analytics-opsætning til de 10 første shop-ejere, der tilmelder sig.

Der er 20 pladser.

Tilmelding ved en email til vadskaer@shoporama.dk med navnet på din shop, der skal betale gildet.

Vi glæder os til at se glade arbejdsomme Shoporamaer :-)

Shoporama Hindsgavl 2017

Masseredigere ekstra-felter

Sådan her masseredigerer du ekstra-felter i Shoporama

1) Gå ind i dine produkter og markér, de produkter hvor du vil tilføje ekstra-feleter

2) Scroll ned i bunden af siden

3) I feltet under “Masseredigering af ekstra-felter” skriver du din værdi. Hvis du vil tilføje eller erstatte værdien, så vælger du “Tilføj/erstat” i dropdown menuen til højre for. Hvis du vil fjerne et ekstrafelt, så vælger du “Fjern”.

Ændre mange ekstrafelter på Shoporama

4) Klik “Udfør masseredigering” lige lidt nedenunder.

 

 

Gør din shop klar til Facebooks dynamiske annoncer

Facebook har en feature, der hedder “dynamic ads”. Ganske kort går det ud på, at en kunde er forbi din webshop. Facebook opsamler information om, hvilke varer kunden ser. Næste gang hun er på Facebook eller Instagram, så er der på magisk vis reklamer for netop de produkter hun så i din shop.

Ren magi, ikke? :-)

Nuvel – vi har allieret os med Halfdan Timm fra Obsidian her for at guide dig igennem, hvordan du får det sat op. Halfdann sidder dagligt med Facebook marketing og har også skrevet en bog om emnet.

Du skal bruge fem ting:

1) En Facebook pixel på din side (læs her hvordan du sætter den ind). Det er gratis og det bør du gøre allerede i dag, så du begynder at indsamle data til Facebook.

2) Et produktfeed med alle dine produkter (det skal ind i Facebook, så de kender alle dine produkter)

3) Et “viewcontent” på dine produktsider. Vi skal fortælle Facebook, når kunden har set et produkt.

4) En event, der bliver skudt af til Facebook, når din kunde smider en vare i kurven.

5) En konverterings-event, så Facebook ved, hvornår en kunde har konveteret.

Det er ca. dét – lad os komme i gang.

Pkt. 1 er der taget hånd om

Du skal bare lige finde din Facebook pixel først. Her kan du læse, hvordan du laver en Facebook pixel.

Pkt 2. – Lav et produktfeed

Du kan egentligt bare bruge dit feed fra Google Shopping.  Men ellers er der en xml skabelon her, som du kan bruge. Den skal gemmes i dit tema som f.eks. fb-produkter.xml

<?xml version="1.0"?><rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">
    <channel>
        <title>Alle varer</title>
        <link><{$landing_page->getRemoteUrl()}></link>
        <description></description>

        <{assign var="products" value=$landing_page->getProducts()}>
        <{section name="i" loop=$products}>
            <{assign var="images" value=$products[i]->getImages()}>
            <{assign var="supplier" value=$products[i]->getBrand()}>
            <item>
                <title><{$products[i]->getName()|escape}></title>
                <link><{$products[i]->getRemoteUrl()}></link>

                <g:id><{$products[i]->getProductId()}></g:id>

                <{if $products[i]->getSalePrice()}>
                    <g:price><{$products[i]->getPrice(null, null, true)|number_format:2:".":","}> DKK</g:price>
                    <g:sale_price><{$products[i]->getSalePrice(null, null, true)|number_format:2:".":","}> DKK</g:sale_price>
                <{else}>                    
                    <g:price><{$products[i]->getPrice(null, null, true)|number_format:2:".":","}> DKK</g:price>
                <{/if}>
                <g:availability>in stock</g:availability>
                <{section name="j" loop=$images max=1 start=0}>
                    <g:image_link><{$webshop->getUrl()}><{$images[j]->getSrc(800,800, 'fit')}></g:image_link>
                <{/section}>

                <g:condition>new</g:condition>

                <{assign var=hovedkat value=$products[i]->getMainCategory()}>
                <{if $hovedkat}>
                    <{if $hovedkat->getMetaValue('g:google_product_category')}>
                        <g:google_product_category><{$hovedkat->getMetaValue('g:google_product_category')}></g:google_product_category>
                    <{/if}>
                <{/if}>

                <{if $products[i]->hasVariants()}>
                    <{assign var="profile" value=$products[i]->getProfile()}>
                    <{assign var="attr" value=$profile->getAttributeList()}>

                    <{section name="h" loop=$attr}>
                        <{if $attr[h]->getDataType() == "valuelist"}>

                            <{assign var="values" value=$attr[h]->getValues()}>
                            <{assign var="tempgtin" value=0}>
                            <{section name="k" loop=$values}>
                                <{if $tempgtin == 0}>
                                    <{if $products[i]->getInStock($attr[h]->getAttributeId(), $values[k]->getAttributeValueId()) > 0}>
                                        <g:gtin><{$products[i]->getGtin($values[k]->getAttributeValueId(),$attr[h]->getAttributeId())}></g:gtin>
                                        <{assign var="tempgtin" value=1}>
                                    <{/if}>
                                <{/if}>
                            <{/section}>

                        <{/if}>
                    <{/section}>

                <{else}>                
                    <g:gtin><{$products[i]->getGtin()}></g:gtin>                
                <{/if}>
                <{if $supplier}>
                    <g:brand><{$supplier->getName()}></g:brand>
                <{/if}>

                <g:product_type></g:product_type>
            </item>
        <{/section}>
    </channel>
</rss>

Nu opretter du en landingsside med alle de produkter du vil have i feedet (skal det bare være dem alle, kan du vælge "pris større end 0" som regel.

Du indsætter fb-produkter.xml i “eget feed”-feltet.

Pkt. 3 – viewcontent

Det er ret simpelt. Vi skal bare skyde lidt kode af, så Facebook kan se, at kunden har set en vare. Så denne kode skal ind på product.html

<script> _fbq.push('track', 'ViewContent', {content_ids: ['<{$product->getProductId()}>'], content_type: 'product'}); </script>

Nemt ikke?

Pkt. 4 – registrere, når der er lagt en vare i kurven

Det er en lille bitte stump kode, der skal på din læg i kurv-knap. Den ser sådan ud

<input type="submit" name="submit" value="Læg i kurv" id="submit" onclick="fbq('track', 'AddToCart');"/>

Det er jo kun “onclick”-delen du skal have tilføjet.

Pkt. 5 – registrere salg

Det er også supernemt. Denne kode skal ind på din thanks.html side (eller ecommerce_tracking.html – det er en smagssag)

<script type="text/javascript">
        fbq('track', 'Purchase', {value: '<{$order->getPrice()|number_format:2:".":""}>', currency: 'DKK'});
    </script>

Så er du så godt som i mål.

Nu kan du gå i Facebook og oprette dine dynamiske annoncer.

 

Tweak din søgefunktion til at vise kategorier

Søgningen i Shoporama søger kun på produkter.

Men ind imellem søger folk på en kategori eller et brand og så kan det være praktisk at de ryger direkte over på en side med alle disse produkter. Her kommer et trick til at løse den opgave (kræver du kan trylle med din SFTP editor).

Lad os antage en bruger søger på Faktorfobi på “Hummel”. Hvis der er Hummel produkter på shoppen, som ikke lige har ordet “Hummel” i hverken navn eller beskrivelse, så vil de ikke blive vist i en søgning. Derfor giver det mere mening at sende de besøgende direkte ind på siden med Hummel badetøj.

Nuvel… hvordan gøres det så? Først ændrer vi lige søgestrengen til lowercase for at gøre det lidt nemmere. Så sender vi dem videre med JavaScript. Koden ser således ud:

<{if $get.search|lower == "hummel"}>
<script type="text/javascript">
    window.location = "https://www.faktorfobi.dk/hummel-badetoej";
</script>
<{/if}>

Det er alt :-)
Nu er det bare at oprette alle de specielle søgninger, du vil have her med en elseif-sætning.

 

Google Adwords remarketing koder

For at benytte Google Adwords remarketing, skal der lidt ekstra koder ind. Det er

  • et script på produktsiden, der fortæller Google, hvilke produkter de har set
  • et script i din indkøbskurv, der fortælle Google, hvem der har været i kurven og hvad de har haft i kurven
  • et script på ordrekvitteringssiden, hvor de tracker, hvem der har købt og hvad de har købt.

Bemærk at denne her kode ikke tager højde for varianter.

Det skal alt sammen sættes ind med SFTP editor og koden er som følger:

Produktsiden (product.html):

<script type="text/javascript">
        var google_tag_params = {
        ecomm_prodid: ['<{$product->getProductId()}>'],
        ecomm_pagetype: 'product',
        ecomm_totalvalue: '<{$product->getRealPrice()|number_format:2:".":""}>'
        };
        </script>

Indkøbskurven (basket.html):

<{if $basket}>
    <{assign var="k" value=0}>
    <{section name="i" loop=$basket}>
        <{assign var="product" value=$basket[i].product}>
        <{if $k==0}>
            <{assign var="ecommtracking" value="'"|cat:$product->getOwnId()|cat:"'"}>
            <{assign var="k" value=1}>
        <{else}>
            <{assign var="ecommtracking" value=$ecommtracking|cat:",'"|cat:$product->getOwnId()|cat:"'"}>
        <{/if}>    
    <{/section}>

    <script type="text/javascript">
        var google_tag_params = {
            ecomm_prodid: [<{$ecommtracking}>],
            ecomm_pagetype: 'cart',
            ecomm_totalvalue: '<{$total_price|number_format:2:".":","}>'
            };

    </script>
<{/if}>

Ordrebekræftelsen (thanks.html eller ecommercetracking.html hvis du bruger den)

<{assign var="products" value=$order->getProducts()}>
    <{assign var="k" value=0}>
    <{section name="i" loop=$products}>
        <{if $k==0}>
            <{assign var="ecommtracking" value="'"|cat:$products[i]->getOwnId()|cat:"'"}>
            <{assign var="k" value=1}>
        <{else}>
            <{assign var="ecommtracking" value=$ecommtracking|cat:",'"|cat:$products[i]->getOwnId()|cat:"'"}>
        <{/if}>        
    <{/section}>    
    <script type="text/javascript">
        var google_tag_params = {
            ecomm_prodid: [<{$ecommtracking}>],
            ecomm_pagetype: 'purchase',
            ecomm_totalvalue: '<{$order->getPrice()|number_format:2:".":","}>'
            };

    </script>

Der udover kan det være en fordel at smide lidt ekstra oplysninger ind på kategorier, landingssider, søgesiden og statiske sider. Det er denne kode, du kan smide ind i global.html

<{if $category}>
        <script type="text/javascript">
        var google_tag_params = {
        ecomm_pagetype: 'category',
        ecomm_category: '<{$category->getName()|escape}>'
        };
        </script>
    <{/if}>

    <{if $landing_page}>
        <script type="text/javascript">
        var google_tag_params = {
        ecomm_pagetype: 'category',
        ecomm_category: '<{$landing_page->getName()|escape}>'
        };
        </script>
    <{/if}>

    <{if $search}>
        <script type="text/javascript">
        var google_tag_params = {
        ecomm_pagetype: 'search'
        };
        </script>
    <{/if}>

    <{if $page}>
        <script type="text/javascript">
        var google_tag_params = {
        ecomm_pagetype: 'other'
        };
        </script>
    <{/if}>

Ændre prisen på mange produkter på én gang

Du kan hæve og sænke prisen (procentuelt) på dine produkter på en gang. Måden du gør det på er følgende:

1) Gå ind i produkter

2) Markér de produkter, du vil hæve prisen på

3) Scroll ned i bunden af siden og find feltet “Prisændring”

Ændre priser Shoporama

4) Vil du ændre din normale pris, skal du bruge “Sæt salgsprisen til”. Her skal du bruge din 8.klasses matematik. For hvis du vil hæve prisen med 10%, så skal du skrive 1.1. Vil du sænke prisen med 50% skal du skrive 0.5.
Vil du ændre din tilbudspris skal du være opmærksom på, at den ændrer sig i forhold til salgsprisen. Dvs. har du en vare, der koster 100,- og sat ned til 80,-. Vil du ændre udsalgsprisen til f.eks. 70,- i stedet for 80,- så skal du skrive 0.7, da du vil tage 70% af de 100,-. og ikke 70% af de 80,-, som er udsalgsprisen. Der skal man holde tungen lige i munden.

5) Scroll lidt længere ned og klik “Udfør masseredigering”.

Voilá – prisændringer.

Hvad så, hvis jeg vil ændre rigtigt mange priser?

Ja – så har du jo lidt et problem, for Shoporama viser kun 100 produkter. Her er en måde at løse det på:

1) Opret en kategori, der hedder “Ikke nedsat endnu” eller sådan noget.

2) Læg alle produkterne i den kategori

3) Nu går du i produktoversigten og viser kun produkter, der er i kategorien “Ikke nedsat endnu” og ændrer den til at vise 100 produkter

4) Markér alle 100. Scroll ned til masseredigering.

5) Under “Fjern fra kategori” vælger du “Ikke nedsat endnu” og så vælger du at ændre prisen som beskrevet ovenfor.

6) Klik “Udfør masseredigering”.

7) Nu vil du se de næste 100 produkter i kategorien “Ikke nedsat endnu”. Gentag trin 4-6 så længe, der er produkter i kategorien

8) Når der ikke længere er nogle produkter i kategorien, går du i kategorier og sletter denne kategori.

Og sådan ændrer du mange produkter på én gang.

Facebook markedsføring med David Lorentzen

The free lunch is over ved Facebook. Men der er stadig mange kunder at hente der.

I 2016 holdt vi to kurser i Facebook markedsføring med David Lorentzen og dem gentager vi i 2017 (dog med de nyeste ting på tapetet).

Det er følgende datoer:

5. maj fra 8:30-16:30 i København, Hotel Guldsmeden, Helgolandsgade 11,  1653 København K. Der er 8 pladser i

11. maj fra 9-17 i Aalborg, Shoporama HQ, Slotsgade 35A, 9000 Aalborg. Der er 6 pladser i Aalborg

Pris: 2100,- ex moms. Inkluderer forplejning hele dagen.

Betaling ved tilmelding (hæves over din Shoporama shop).

Tilmelding ved at sende mail til vadskaer@shoporama.dk

Samtidigt bliver du smidt i en Facebook gruppe med de øvrige deltagere, hvor man kan dele viden og succeshistorier.

Lav lynhurtigt mails til kunder

Dagens yderst brugbare tip er leveret af Lars Holmgaard (vi siger mange tak):

Det ville være enormt uprofessionelt at komme til at linke til en anden kundes ordre i en mail, så jeg checker og dobbeltchecker altid at det er den rigtige url jeg paster ind.

Det kunne være en mail jeg sender til en kunde, hvis jeg kan se de ikke har gennemført betalingen eller det kunne være, der var noget jeg havde brug for at spørge kunden om.

Nu har jeg lavet det så der ikke kan ske manuelle fejl, så slut med copy-paste af ordre-link og email.

● På selve /ordre-siden hvor kunden kan se sin ordre, har jeg lavet et link allernederst. Når jeg klikker på det, så er email-feltet udfyldt med kundens email, der står “Hej <kundens navn>” inde i mailen og nedenunder står linket til kundens ordre-side.

Så slipper jeg for at huske, hvad kunden nu hed, om det er den rigtige mail og url og kan i stedet for koncentrere mig om at formulere indholdet af mailen.

Det er ikke svært – du kan selv fixe det i din order.html template.

Brug denne kodelinie til linket:

<{if $cookie.user_token}>
<a href="mailto:<{$order->getEmail()|escape}>?subject=Din%20bestilling%20hos%20os&amp;body=Hej%20<{$order->getOrderName()|escape}>,%0D%0A%0D%0A<{$order->getPublicUrl()|escape:'url'}>%0D%0A">Kontakt kunde</a>
<{/if}>

blog2 Link til kunde på order-siden

Hvordan opsætter man EAN betaling

Shoporama kan ikke selv oprette en EAN faktura for dig. Så den del må du stadig selv stå for. Men du kan lave en betalingsmulighed, der hedder EAN faktura. Her er en kort guide til hvordan:

1) Gå ind i Shoporama og opret en betalingsmulighed, der hedder EAN betaling under “betalingsgateways”. Du skal vælge “Andet” under dropdown i Type.

2) Vi anbefaler, du vælger “Marker automatisk nye ordrer som betalte”, så du ikke overser dem blandt dine ordrer.

Det er alt!
Bemærk du selv kan lave noget JavaScript validering (eller html5 validering) af at der er indtastet et 13-cifret tal.