Guest User

Aceptación después de los formularios de contacto

a guest
May 28th, 2018
122
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //* ---------- ACEPTACIÓN DESPUÉS DEL FORMULARIO DE COMENTARIOS
  2.  
  3. //Añadir checkbox despues del campo Comentario
  4. add_filter( 'comment_form_field_comment', 'mi_campo_de_privacidad_en_comentarios' );
  5. function mi_campo_de_privacidad_en_comentarios( $comment_field ) {
  6.     return $comment_field.'<p class="pprivacy"><input type="checkbox" name="privacy" value="privacy-key" class="privacyBox" aria-req="true">&nbsp;&nbsp;Acepto la <a target="blank" href="https://tusitio.com/wp-content/uploads/Aviso-legal.pdf">política de privacidad</a>.<p>';
  7. }
  8. //javascript validation
  9. add_action('wp_footer','valdate_privacy_comment_javascript');
  10. function valdate_privacy_comment_javascript(){
  11. if (! is_admin() && is_single() && comments_open() ){
  12. wp_enqueue_script('jquery');
  13. ?>
  14. <script type="text/javascript">
  15. jQuery(document).ready(function($){
  16. $("#submit").click(function(e)){
  17. if (!$('.privacyBox').prop('checked')){
  18. e.preventDefault();
  19. alert('Debes confirmar que estás de acuerdo con nuestra política de privacidad <p><a href="javascript:history.back()">' . __('&laquo; Volver') . '</a></p>');
  20. return false;
  21. }
  22. }
  23. });
  24. </script>
  25. <?php
  26. }
  27. }
  28.  
  29. //no js fallback validation
  30. add_filter( 'preprocess_comment', 'verify_comment_privacy' );
  31. function verify_comment_privacy( $commentdata ) {
  32. if ( ! isset( $_POST['privacy'] ) && ! is_admin() )
  33. wp_die( __( 'Error: Debes confirmar que estás de acuerdo con nuestra política de privacidad<p><a href="javascript:history.back()">' . __('&laquo; Volver') . '</a></p>' ) );
  34.  
  35. return $commentdata;
  36. }
  37.  
  38. // Guardamos el valor aceptado en la tabla comment metadata
  39. function save_comment_meta_data ( $post_id ) {
  40. $privacy_comment = $_POST['privacy'];
  41. if ( $privacy_comment ) {
  42. add_comment_meta( $post_id, 'privacy', $privacy_comment, true );
  43. }}
  44.  
  45. add_action( 'comment_post', 'save_comment_meta_data', 1 );
  46.  
  47. // Mostramos el valor del metadato en la página de administración de comentarios
  48. if ( is_admin() ) {
  49. function show_commeta() {
  50.    echo get_comment_text(), '<br><br><strong>', get_comment_meta(get_comment_ID(), 'privacy',1), '<strong>';
  51.    }
  52. add_action('comment_text', 'show_commeta');
  53. }
  54.  
  55. /** Primera capa privacidad en comentarios **/
  56. $acceptance = '<table class=" aligncenter" width="504">
  57. <tbody>
  58. <tr>
  59. <td><strong><em>RESPONSABLE</em></strong></td>
  60. <td>Tu nombre</td>
  61. </tr>
  62. <tr>
  63. <td><strong><em>FINALIDAD</em></strong></td>
  64. <td>Gestionar los comentarios.</td>
  65. </tr>
  66. <tr>
  67. <td><strong><em>LEGITIMACIÓN</em></strong></td>
  68. <td>Consentimiento del interesado.</td>
  69. </tr>
  70. <tr>
  71. <td><strong><em>DESTINARIOS</em></strong></td>
  72. <td>Empresas proveedoras nacionales e internaciones y encargados del tratamiento acogidos a <em>Privacy Shield</em>.</td>
  73. </tr>
  74. <tr>
  75. <td><strong><em>DERECHOS</em></strong></td>
  76. <td>Acceder, rectificar y suprimir los datos, así como otros derechos, como se explica en la información adicional.</td>
  77. </tr>
  78. <tr>
  79. <td><strong><em>INFORMACIÓN ADICIONAL</em></strong></td>
  80. <td>Puedes consultar la información adicional y detallada sobre protección de datos <a href="https://tusitio.com/wp-content/uploads/Aviso-legal.pdf">en este enlace</a>.</td>
  81. </tr>
  82. </tbody>
  83. </table>';
  84. function ft_acceptance_comments( $form ) {
  85.     global $acceptance;
  86.    
  87.     return $form . $acceptance;
  88. }
  89.     add_action( 'comment_form_field_comment', 'ft_acceptance_comments' );
RAW Paste Data