1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Cookie Plugin über JQuery

Dieses Thema im Forum "Plugins und Widgets" wurde erstellt von alhai, 16. November 2021.

Schlagworte:
  1. alhai

    alhai Well-Known Member

    Registriert seit:
    11. Oktober 2014
    Beiträge:
    107
    Zustimmungen:
    1
    Hallo allerseits,

    würde gerne einen Cookiebanner ausknipsen, der über JOuery läuft. Müsste doch eigentlich gehen den Code der das auf den Weg bringt einfach auszukommentieren /* ... */. Irgendwelche Fehlfunktionen dürfte es da doch nicht geben!? Danke schon mal. VG alias alhai

    < Hier mal der Code >

    /*!
    * jQuery Cookie Plugin v1.4.1
    * https://github.com/carhartl/jquery-cookie
    *
    * Copyright 2013 Klaus Hartl
    * Released under the MIT license
    */
    (function (factory) {
    if (typeof define === 'function' && define.amd) {
    // AMD
    define(['jquery'], factory);
    } else if (typeof exports === 'object') {
    // CommonJS
    factory(require('jquery'));
    } else {
    // Browser globals
    factory(jQuery);
    }
    }(function ($) {
    var pluses = /\+/g;
    function encode(s) {
    return config.raw ? s : encodeURIComponent(s);
    }
    function decode(s) {
    return config.raw ? s : decodeURIComponent(s);
    }
    function stringifyCookieValue(value) {
    return encode(config.json ? JSON.stringify(value) : String(value));
    }
    function parseCookieValue(s) {
    if (s.indexOf('"') === 0) {
    // This is a quoted cookie as according to RFC2068, unescape...
    s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
    }
    try {
    // Replace server-side written pluses with spaces.
    // If we can't decode the cookie, ignore it, it's unusable.
    // If we can't parse the cookie, ignore it, it's unusable.
    s = decodeURIComponent(s.replace(pluses, ' '));
    return config.json ? JSON.parse(s) : s;
    } catch(e) {}
    }
    function read(s, converter) {
    var value = config.raw ? s : parseCookieValue(s);
    return $.isFunction(converter) ? converter(value) : value;
    }
    var config = $.cookie = function (key, value, options) {
    // Write
    if (value !== undefined && !$.isFunction(value)) {
    options = $.extend({}, config.defaults, options);
    if (typeof options.expires === 'number') {
    var days = options.expires, t = options.expires = new Date();
    t.setTime(+t + days * 864e+5);
    }
    return (document.cookie = [
    encode(key), '=', stringifyCookieValue(value),
    options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
    options.path ? '; path=' + options.path : '',
    options.domain ? '; domain=' + options.domain : '',
    options.secure ? '; secure' : ''
    ].join(''));
    }
    // Read
    var result = key ? undefined : {};
    // To prevent the for loop in the first place assign an empty array
    // in case there are no cookies at all. Also prevents odd result when
    // calling $.cookie().
    var cookies = document.cookie ? document.cookie.split('; ') : [];
    for (var i = 0, l = cookies.length; i < l; i++) {
    var parts = cookies.split('=');
    var name = decode(parts.shift());
    var cookie = parts.join('=');
    if (key && key === name) {
    // If second argument (value) is a function it's a converter...
    result = read(cookie, value);
    break;
    }
    // Prevent storing a cookie that we couldn't decode.
    if (!key && (cookie = read(cookie)) !== undefined) {
    result[name] = cookie;
    }
    }
    return result;
    };
    config.defaults = {};
    $.removeCookie = function (key, options) {
    if ($.cookie(key) === undefined) {
    return false;
    }
    // Must not alter options, thus extending a fresh object...
    $.cookie(key, '', $.extend({}, options, { expires: -1 }));
    return !$.cookie(key);
    };
    }));
     
  2. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    7.346
    Zustimmungen:
    587
    Eigentlich kannst du das Licht.. ähm... den Cookiebanner ausknipsen. Aber warum hast du dies erst ein geknipst. und ist nicht löschen per se sinnvoller?

    Das geknipste ist auf GitHub schon längst im Archiv verschwunden https://github.com/carhartl/jquery-cookie ... da es aus der Steinzeit stammt... Die Verwendung könnte bereits Probleme bereiten.. Wenn der Schrott läuft, könntest du weitere Probleme haben...
     
  3. alhai

    alhai Well-Known Member

    Registriert seit:
    11. Oktober 2014
    Beiträge:
    107
    Zustimmungen:
    1
    ja danke für Deine Antwort. Ja wie ich schon sagte, ich habe das jetzt erst kürzlich übernommen, der alte Programmierer steht eben nicht mehr zur Verfügung. Um das Alter des Ganzen sind wir uns bewusst. Okay "LÖSCHEN" ist natürlich eine Alternative. Will aber keinen Fehler machen, bin noch in der Einarbeitung des Ganzen. Ich werde das aber dann löschen am Server, wenn das so keine Probleme ergeben sollte.
     
  4. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.660
    Zustimmungen:
    1.783
    Der gepostete Code hat nichts mit einem Cookie Banner zu tun.

    Er dient lediglich als Vereinfachung, um per JavaScript einzelne Cookies aus document.cookie lesen/schreiben/löschen zu können. Das steht eigentlich auch sehr klar in dem Link, der im geposteten Code angegeben ist:
    Würde sehr empfehlen, auf diesem Server gar nichts anzufassen, sondern sich eine Person zu suchen, die wenigstens ansatzweise Programmiererfahrung hat.

    Wird der o.g. Code einfach vom Server entfernt, werden danach Scriptfehler wie diese auftreten:
     
    danielgoehr gefällt das.
  5. r23

    r23 Well-Known Member

    Registriert seit:
    9. Dezember 2006
    Beiträge:
    7.346
    Zustimmungen:
    587
    Wenn die Seite funktioniert, lass es einfach drin. Bei sehr alten jQuery Versionen verwendete man dies um Cookies zu verwalten. Dies machen aber aktuelle jQuery Versionen augenscheinlich jetzt selber. Der Entwickler hat irgendwo auch eine Begründung, warum er dies seit x Jahren nicht mehr pflegt und in das Archive verschoben hat.

    Bei einer Migration von einer alten WordPress Version auf eine aktuelle WordPress Version hast du in der Regel bei alten Themes, die nicht gepflegt wurden - ein jQuery Problem.

    WordPress stellt dafür ein Plugin zur Verfügung
    https://wordpress.org/plugins/enable-jquery-migrate-helper/


    Es ist in der Regel günstiger ein neues Theme zu erstellen, als in einer alten Umgebung sich von Fehlermeldungen überraschen zu lassen.
     
  6. alhai

    alhai Well-Known Member

    Registriert seit:
    11. Oktober 2014
    Beiträge:
    107
    Zustimmungen:
    1
    Danke Dir für Deine Antwort, aber woher kann der Cookie-Banner kommen ??, den wir raus nehmen wollen. Er taucht oben auf, der untere ist über ein Plugin eingebaut, dieser bleibt natürlich drinnen. Was auch augenfällig ist, dass der obere Cookiebanner nur auftaucht bei Andoid, Linux in Verbindung mit Firefox aber nicht unter Windows mit G.Chrome?? Ich lade mal zusätzlich einen Screenshot mit hoch. Ein neues Projekt ist angedacht, jetzt soll das mal als Übergang erträglich gemacht werden.
    VG
     

    Anhänge:

  7. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.660
    Zustimmungen:
    1.783
    Link zur Seite mit diesem Banner?

    Vermutlich werden beim Testen der verschiedenen Browser deren Cookies usw. nicht gelöscht oder es verhindern z.B. nur in bestimmten Browsern auftretende Scriptfehler das Erscheinen oder es werden Cache-Plugins verwendet, die nicht richtig eingerichtet sind oder ein Theme/Plugin, das nicht mit Cache-Plugins kompatibel ist, da gibt es viele Möglichkeiten...
    Hättest Du einen Link, wo eine eingebaute Cookie Verwaltung in aktuellen jQuery Versionen beschrieben ist?
     
    #7 b3317133, 16. November 2021
    Zuletzt bearbeitet: 16. November 2021
  8. alhai

    alhai Well-Known Member

    Registriert seit:
    11. Oktober 2014
    Beiträge:
    107
    Zustimmungen:
    1
    Nochmals danke für Deine Bemühungen, könnte es das sein, was noch dazu gehört!? Ich könnte es mir vorstellen, weil hier auch Buttons angesprochen werden!? VG

    jQuery('#option_btn').click(
    function() {
    if(jQuery('#option_wrapper').css('left') != '0px')
    {
    jQuery('#option_wrapper').animate({"left": "0px"}, { duration: 500 });
    jQuery(this).animate({"left": "250px"}, { duration: 500 });
    }
    else
    {
    var isOpenOption = jQuery.cookie("proxima_demo");
    if(jQuery.type(isOpenOption) === "undefined")
    {
    jQuery.cookie("proxima_demo", 1, { expires : 1 });
    }
    jQuery('#option_wrapper').animate({"left": "-260px"}, { duration: 500 });
    jQuery('#option_btn').animate({"left": "-2px"}, { duration: 500 });
    }
    }
    );

    var isOpenOption = jQuery.cookie("proxima_demo");
    if(jQuery.type(isOpenOption) === "undefined")
    {
    jQuery('#option_btn').trigger('click');
    }
     
    #8 alhai, 16. November 2021
    Zuletzt von einem Moderator bearbeitet: 20. November 2021
  9. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.660
    Zustimmungen:
    1.783
    Alles andere ist ein Ratespiel. Siehe auch Forenregeln, Punkt II.
     
  10. alhai

    alhai Well-Known Member

    Registriert seit:
    11. Oktober 2014
    Beiträge:
    107
    Zustimmungen:
    1
    Noch kurz zur Sache, danke nochmls für Deine Mühe.

    Also einen Link gebe ich nicht raus. Ich hatte hier schon mal eine schlechte Erfahrung gemacht, wo ich Hilfestellung dann als Eigenmarketing erkennen musste. Übrigens bin ich nicht ganz kalt in der Programmierung, ich habe schon viele gute Programme in JavaScript geschrieben, bin ein solider Webdesigner mit bereits gut 100 abgewickelten Projekten. Bin aber auch darüber hinaus mit Wordpress, SEO, HTML, CSS ... insgesamt gut vertraut, sonst hätte ich ja den fragwürdigen Code auch gar nicht finden können.

    Deine Darstellung ( durch die Blume ) ich sei ein absoluter Laie trifft demnach nicht so ganz den Nagel auf den Kopf. Auch werde ich sicher, wenn es um Cookies geht, den Browser erst mal um die Cookies bereinigen, um auch einschätzen zu können, was das Ding denn dann so macht ? ......................................

    Ich bin aber immer offen für alles, ich suche auch einen standfesten Programmierer für JS, PHP ... ( für's Web halt ) mit dem ich zuverlässig bei diversen Projekten zusammen arbeiten könnte.
    VG
     
  11. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.660
    Zustimmungen:
    1.783
    In diesem Forum bieten freiwillige Helfer in ihrer Freizeit öffentliche Hilfe bei Problemen, so dass a) der Fragesteller und b) spätere andere Besucher daraus lernen können.

    Wenn Du keinen Link nennen willst bzw. Programmierer suchst, die direkt für Dich arbeiten, poste Deine Anfrage im Bereich Jobbörse im Forum.
     
    danielgoehr gefällt das.
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden