Cookie consent for developers

0

This plugin is intended primarily for developers, although any WordPress user with knowledge of HTML and JavaScript can use it. The plugin implements the logic of dealing with cookies a

Version
Last updated
Active installations
WordPress Version
Tested up to
PHP Version
Rating
Total ratings
Tags
This plugin is outdated and might not be supported anymore.

Description

This plugin is intended primarily for developers, although any WordPress user with knowledge of HTML and JavaScript can use it. The plugin implements the logic of dealing with cookies as required by EU regulation and explained here. There is also This European Union page and this European Comission page which explain basic things about cookies and legislation which regulates their usage.

v1.7.1
Popup with question does not show on learn more page.

!NEW!

v1.6.0
Added decline button, of same importance as accept button. It is only active if some text is added to respective field in the admin part. The same is true for “learn more” link.

Added javascript event cookiesAnswered, when cookie status is resolved, either on pressing ‘Accept’ or ‘Decline’ button – this event is fired on document object.

Added Multilingual capabilities, compatible with each and every multilingual plugin. Simply wrap messages in language tags (check lang attribute of html tag, however, use _ instead of -). For example, Italian language sentence should be: [it_IT]Il nostro sito web utilizza cookie per garantire…[/it_IT] The language shortcodes have the same syntax like regular WordPress shortcodes, each opening tag with language attribute inside should have a closing tag. >ou can put language tags in first four upper fields of plugin regarding texts and page ID. Other fields do not accept language shortcodes.

The plugin is also updated to use SameSite cookie directive with default setting SameSite=Lax.

With proper use, you can make your website GDPR and PECR compliant. The basic principles are that user must be clearly informed about cookies that you use on a webpage (even from external services – web pages), and that user should be given a choice to decide if he wants to accept these cookies. The exception are cookies that do not identify computer (without unique identificator) and which are necessary for proper page functioning, like remembering shopping basket in an online store.

Why should I use this particular plugin?

Because it is free from bloatware, no additional CSS, JavaScript or other files are used in frontend. It offers smooth integration with minimal footprint; all code and HTML is placed inline in HTML of the page.

Plugin is particularly crafted to not allow any unwanted cookie placement before user consents, you control that by placing proper code in designated form fields in background.

The stress of the plugin is on simplicity, which also gives developers open hands to do customizations as preferred and needed. It is made to be cache – friendly; it means that it offers the same version of the page each time, no matter if user chose to opt-out of cookie usage, accepted cookies or has not yet decided. Plugin has been tested on “Cache Enabler” plugin, but it should work with other caching plugins and technologies as well. Only exception is YouTube videos which URL’s are replaced in situ in the backend, effectively making it a little different page for the caching plugin. However, this is necessary, since this YouTube code should not place any cookies if user has decided to opt-out, therefore URL exchange could not be done after the page loads.

How to use

There is a setup page titled “Cookie consent for developers” on admin panel in standard menu item ‘Settings’. It is important to understand how plugin works, and that you should divide JavaScript that places cookies into “working horse” part, which places cookies and does other things and part which starts that “working horse”.

On the plugin settings page, you should give short information about cookies or other similar technologies (from now on I will refer simple as “cookies”, although that also refers to local storage, session storage, …) used and ID of the page which tells user more about use of such technologies. This info shows as info window and is customizable via CSS. Two examples, css_example1.css and css_example2.css are given to show different styling of this info window (or ribbon). The “learn more” page (whose ID is given) should also provide mechanism to choose between allowing only necessary cookies or allowing all cookies. More about this page later.

Then you have to enter code in the header and footer, which places cookies and the code that calls that code, separately. In this way, the code that places cookies is executed only when user allows.

Finally, you can enter opt-out code, which will block functions which place cookies if user decides not to use them.

There is also possibility to enter custom code which will run on window load event (when page fully loads) which you can use to add special effects to info window or anything else you wish.

Learn more page

On learn more page (you have to build it yourself) you should explain about the cookies and their usage in simple and understandable way to general public. The information about all cookies on your web and their purpose should be given (including third-party).

Important: Two buttons (or links) should also be given on this page, with id’s: btnAcceptCookies and btnRefuseCookies (without apostrophes). These buttons shall be used to enable user to choose if cookies will be used or not (except necessary ones).

Styling

You can use two provided styles, or (very likely) do your own styling. If you choose option “Not used” in the settings, you should put custom CSS in theme or other styling CSS file, while if you choose “Custom CSS file”, you should provide separate CSS file.

This separate CSS file should be named ccfd_custom.css and should be placed in the root of your theme directory, or you can use filter named ccfd_custom_css_name to provide custom string for your CSS file. The same full path, like for wp_enqueue_style should be given.

Live examples of two given styles you can see on pages Topomatika or Blog školskog muzeja.

Ideally, you should put styling in your main theme stylesheet, or however you find more appropriate.

YouTube

The plugin has special function for YouTube. If user decides to opt-out from cookies, all YouTube URL-s will be replaced with youtube-nocookie versions. This will also work for shortened URL’s like https://youtu.be. In this way, YouTube videos will still function, but they will not use cookies.

Languages

English and Croatian so far.