Iubenda logo
Start generating

Documentation

Table of Contents

Blocking Cookies Prior to Consent with the PHP Class

The usage of the PHP class is only recommended for advanced users given that the procedure may require some customization depending on the site and the CMS utilized. Also, keep in mind that JavaScript is required to visualize the banner and cookie policy.

This class allows you to scan a page in PHP and run the automatic blocking of scripts mentioned in this document. You can access the class via direct download or Packagist.

Here is an example of the PHP class integration:

<?php
function iubenda_system( $html, $type = 'page' ) {
  if ( empty( $html ) )
    return;
  require_once( 'iubenda.class.php' );
  // separator
  if ( ! iubendaParser::consent_given() && ! iubendaParser::bot_detected() ) {
    $iubenda = new iubendaParser( $html, array( 'type' => in_array( $type, array( 'page', 'faster' ), true ) ? $type : 'page' ) );
    $html = $iubenda->parse();
  }
  // finished
  return $html;
}

The iubenda_system method verifies if the page visitor consents to the use of cookies. If this is the case, the script returns the HTML provided as a parameter without taking any action such as parsing/replacing.

Simply copy your method into the PHP document and then call it with the following syntax iubenda_system("contenutohtml"); that will return the code.

  • Parsing/replacing the portions of code contained within <!--IUB-COOKIE-BLOCK-START--> and <!--IUB-COOKIE-BLOCK-END-->
  • Automatic parsing/replacing of iframe that contain defined src
  • Automatic parsing/replacing of scripts that contain defined src

These operations take place in accordance with the rules explained in this guide. We suggest that you consult the posts relating to the alteration of script, img and iframe tags.

  • AdRoll
  • AddThis widgets
  • Bing
  • CodePen
  • Criteo
  • Disqus
  • Elevio
  • Facebook Comments
  • Facebook widgets
  • Freshchat
  • Google AdSense
  • Google Analytics
  • Google Maps
  • Google ReCaptcha
  • Google Site Search
  • Google Tag Manager
  • Google oAuth
  • Google+ widgets
  • Headway
  • Instagram widgets
  • Kissmetrics
  • LinkedIn widgets
  • Mixpanel
  • Neodata
  • Olark
  • Optimizely
  • Outbrain
  • PayPal widgets
  • Pingdom
  • Pinterest widgets
  • Segment
  • ShareThis widgets
  • Twitter widgets
  • UserVoice
  • Vimeo
  • YouTube

Please note that at the moment the Privacy Controls and Cookie Solution is optimized to comply with very strict Italian implementation regulations (this can only improve compliance in other jurisdictions).

How to use the iubenda PHP class on a CMS like Magento or PrestaShop

To use the iubenda PHP class on Magento or PrestaShop you simply need to access the Magento/PrestaShop CMS file folder and follow the instructions below:

  • open the file index.php;
  • copy and paste require __DIR__ . "/iubenda.class.php"; after the first line;
  • still in the same location, add the simple_html_dom.php file which you can download here or using the button below;
  • finally, always at the same location, create a file called iubenda.cookies.js containing your Privacy Controls and Cookie Solution code.

Changelog and current version

See also