Vorschaltseite

Hallo,

 

wie kann man das erstellen im Template ohne Plugin.

Aussehen:

Shop ausgegraut und vorher eine Frage.

Jemand das schonmal umgesetzt?

Und würde seinen Code teilen bzw. sagen wie er es gemacht hat?

Danke :slight_smile:

Huch, biste auf der Tastatur ausgerutscht. Es gibt Shops, die haben ein “Bist du schon 18?” Modalbox vorgeschalten wenn du das meinst. Ich glaub da gab es auch was in den Grundeinstellungen dass man den Shop an 18+ limitieren kann.

Die Frage wäre ist es hier lediglich ein Modal was aufpoppt? Was für ein Frage? Was passiert danach? Was ist wenn man auf eine Artikel Detailseite kommt, wird man dann redirected usw.

Ein simples Modal ist eigentlich relativ easy umgesetzt. Hatte damals was ähnliches gemacht. Cookie setzen mit js-cookie, wenn Cookie nicht da öffnet sich das Modal. War aber sehr simpel.

1 „Gefällt mir“

Man wenn man schreibt und telefoniert passiert sowas liebe Kinder :slight_smile:

Es muss immer auftauchen, egal auf welche Seite man geht, nach wegklicken natürlich nicht mehr.

Aber nur solange Sessioncookie sitzt.

Ist ab 18 Abfrage, mit ja darfst du rein, mit nein geht es zur KIKA Seite :wink:

 

 

Kann man relativ einfach mit dem js-cookie umsetzen.

Und dann eben das Modal öffnen lassen -> shopware/jquery.modal.js at 5.5 · shopware/shopware · GitHub

Ein simples Plugin ( ungetestet ) wäre:

/**
 * Register the Plugin to the Statemanager
 */
StateManager.addPlugin('*[data-hide-price="true"]', 'swAdultModal');

/**
 * Hide Price based on cookie
 */
$.plugin('swAdultModal', {

    defaults: {
        /**
         * The cookie name which will be checked
         * if the cookie is set or not
         *
         * @property cookieName
         * @type {String}
         */
        cookieName: 'yourcookiename'
    },

    /**
     * Initializes the plugin
     *
     * @public
     * @method init
     */
    init: function() {
        var me = this;

        me.applyDataAttributes();

        me.checkCookie();
    },

    /**
     * Check if a cookie is set
     *
     * @public
     * @method checkCookie
     * @returns {jQuery}
     */
    checkCookie: function() {
        var me = this;

        if (Cookies.get(me.opts.cookieName)) {
            $.modal.open('your/url', {
                mode: 'ajax'
            });  
        }
    },


    /**
     * Destroys the plugin and all necessary settings.
     *
     * @public
     * @method destroy
     */
    destroy: function() {
        var me = this;

        Cookies.remove(me.opts.cookieName);

        me._destroy();
    }
});

 

Nur einen kleinen Tip wie?

Verstehe noch Bahnhof.

Das script herunterladen und auf meinen Webspace legen, einbinden mit 

<script src="/path/to/js.cookie.js"></script>

ab wo jetzt genau?

@NurIch schrieb:

Nur einen kleinen Tip wie?

Verstehe noch Bahnhof.

Ich habe doch oben sogar das ganze jQuery Plugin gepostet? ;) 

1 „Gefällt mir“

Mhh sehe ich jetzt erst, beim beantworten war es noch nicht da.

Dann heute abend mal mein Glück probieren ob es klappt :slight_smile:

Bin mir ziemlich sicher dass da noch Fragen auftauchen werden.

Danke dir.

@NurIch schrieb:

Mhh sehe ich jetzt erst, beim beantworten war es noch nicht da.

Wearing-Sunglasses