Changeset 3320735
- Timestamp:
- 07/01/2025 03:37:52 PM (8 months ago)
- Location:
- proteccion-datos-rgpd
- Files:
-
- 1 deleted
- 3 edited
- 13 copied
-
tags/0.68 (copied) (copied from proteccion-datos-rgpd/trunk)
-
tags/0.68/admin/options.php (copied) (copied from proteccion-datos-rgpd/trunk/admin/options.php)
-
tags/0.68/aviso-legal.php (copied) (copied from proteccion-datos-rgpd/trunk/aviso-legal.php) (19 diffs)
-
tags/0.68/formularios.php (copied) (copied from proteccion-datos-rgpd/trunk/formularios.php)
-
tags/0.68/insercion-cookies.php (copied) (copied from proteccion-datos-rgpd/trunk/insercion-cookies.php)
-
tags/0.68/jetpack-suscripcion.php (copied) (copied from proteccion-datos-rgpd/trunk/jetpack-suscripcion.php)
-
tags/0.68/languages (deleted)
-
tags/0.68/lista-opciones.php (copied) (copied from proteccion-datos-rgpd/trunk/lista-opciones.php)
-
tags/0.68/pie.php (copied) (copied from proteccion-datos-rgpd/trunk/pie.php)
-
tags/0.68/politica-cookies.php (copied) (copied from proteccion-datos-rgpd/trunk/politica-cookies.php)
-
tags/0.68/politica-privacidad.php (copied) (copied from proteccion-datos-rgpd/trunk/politica-privacidad.php)
-
tags/0.68/proteccion-datos-rgpd.php (copied) (copied from proteccion-datos-rgpd/trunk/proteccion-datos-rgpd.php) (1 diff)
-
tags/0.68/readme.txt (copied) (copied from proteccion-datos-rgpd/trunk/readme.txt) (2 diffs)
-
tags/0.68/uninstall.php (copied) (copied from proteccion-datos-rgpd/trunk/uninstall.php)
-
trunk/aviso-legal.php (modified) (19 diffs)
-
trunk/proteccion-datos-rgpd.php (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
proteccion-datos-rgpd/tags/0.68/aviso-legal.php
r3063809 r3320735 13 13 // Shortcodes. 14 14 15 add_shortcode( 'pdrgpd-aviso-legal', 'pdrgpd_aviso_legal' ); 16 /** 17 * Com pone el contenido completo de [pdrgpd-aviso-legal]18 * para crear la página del aviso legal aplicando la lista19 * de shortcodes de menor entidad.15 /** 16 * Shortcode principal que compone el Aviso Legal completo. 17 * Combina todos los shortcodes de secciones menores. 18 * 19 * @return string HTML generado por los shortcodes combinados. 20 20 */ 21 21 function pdrgpd_aviso_legal() { … … 31 31 return do_shortcode( $html ); 32 32 } 33 34 add_shortcode( 'pdrgpd-aviso-legal-identificacion-titular', 'pdrgpd_aviso_legal_identificacion_titular' ); 33 add_shortcode( 'pdrgpd-aviso-legal', 'pdrgpd_aviso_legal' ); 34 35 /** 36 * Genera la sección de identificación del titular del sitio web. 37 * 38 * @return string HTML con los datos identificativos del titular. 39 * 40 * @internal 41 * Nota: La estructura HTML varía según el idioma (ca/es) y campos configurados. 42 */ 35 43 function pdrgpd_aviso_legal_identificacion_titular() { 36 44 $locale = get_locale(); … … 48 56 $html .= ', codi postal [pdrgpd-cp]'; 49 57 } 50 $html .= ' de [pdrgpd-poblacion]'; 58 // Si se pone "de", puede requerir apostrofarlo. 59 $html .= ' a [pdrgpd-poblacion]'; 51 60 if ( pdrgpd_conf_provincia() && pdrgpd_conf_provincia() !== pdrgpd_conf_poblacion() ) { 52 61 $html .= ', [pdrgpd-provincia]'; … … 75 84 $html .= ', código postal [pdrgpd-cp]'; 76 85 } 77 // Si se pone "de", puede requerir apostrofarlo. 78 $html .= ' a [pdrgpd-poblacion]'; 86 $html .= ' en [pdrgpd-poblacion]'; 79 87 if ( pdrgpd_conf_provincia() && pdrgpd_conf_provincia() !== pdrgpd_conf_poblacion() ) { 80 88 $html .= ', [pdrgpd-provincia]'; … … 93 101 return do_shortcode( $html ); 94 102 } 95 96 add_shortcode( 'pdrgpd-aviso-legal-condiciones', 'pdrgpd_aviso_legal_condiciones' ); 103 add_shortcode( 'pdrgpd-aviso-legal-identificacion-titular', 'pdrgpd_aviso_legal_identificacion_titular' ); 104 105 /** 106 * Genera la sección de condiciones de uso del sitio web. 107 * 108 * @return string HTML con las condiciones de uso. 109 */ 97 110 function pdrgpd_aviso_legal_condiciones() { 98 111 $locale = get_locale(); … … 128 141 return do_shortcode( $html ); 129 142 } 130 131 add_shortcode( 'pdrgpd-aviso-legal-propiedad-intelectual', 'pdrgpd_aviso_legal_propiedad_intelectual' ); 143 add_shortcode( 'pdrgpd-aviso-legal-condiciones', 'pdrgpd_aviso_legal_condiciones' ); 144 145 /** 146 * Genera la sección sobre propiedad intelectual del contenido. 147 * 148 * @return string HTML sobre derechos de propiedad intelectual. 149 */ 132 150 function pdrgpd_aviso_legal_propiedad_intelectual() { 133 151 $locale = get_locale(); … … 141 159 return do_shortcode( $html ); 142 160 } 143 144 add_shortcode( 'pdrgpd-aviso-legal-disponibilidad', 'pdrgpd_aviso_legal_disponibilidad' ); 161 add_shortcode( 'pdrgpd-aviso-legal-propiedad-intelectual', 'pdrgpd_aviso_legal_propiedad_intelectual' ); 162 163 /** 164 * Genera la sección sobre disponibilidad del sitio web. 165 * 166 * @return string HTML sobre garantías de disponibilidad. 167 */ 145 168 function pdrgpd_aviso_legal_disponibilidad() { 146 169 $locale = get_locale(); … … 174 197 return do_shortcode( $html ); 175 198 } 176 177 add_shortcode( 'pdrgpd-aviso-legal-calidad', 'pdrgpd_aviso_legal_calidad' ); 199 add_shortcode( 'pdrgpd-aviso-legal-disponibilidad', 'pdrgpd_aviso_legal_disponibilidad' ); 200 201 /** 202 * Genera la sección sobre calidad del contenido. 203 * 204 * @return string HTML sobre garantías de calidad. 205 */ 178 206 function pdrgpd_aviso_legal_calidad() { 179 207 $locale = get_locale(); … … 187 215 return do_shortcode( $html ); 188 216 } 189 190 add_shortcode( 'pdrgpd-aviso-legal-limitacion-responsabilidad', 'pdrgpd_aviso_legal_limitacion_responsabilidad' ); 217 add_shortcode( 'pdrgpd-aviso-legal-calidad', 'pdrgpd_aviso_legal_calidad' ); 218 219 /** 220 * Genera la sección de limitación de responsabilidad. 221 * 222 * @return string HTML sobre exclusiones de responsabilidad. 223 */ 191 224 function pdrgpd_aviso_legal_limitacion_responsabilidad() { 192 225 $locale = get_locale(); … … 200 233 return do_shortcode( $html ); 201 234 } 202 203 add_shortcode( 'pdrgpd-aviso-legal-notificaciones', 'pdrgpd_aviso_legal_notificaciones' ); 235 add_shortcode( 'pdrgpd-aviso-legal-limitacion-responsabilidad', 'pdrgpd_aviso_legal_limitacion_responsabilidad' ); 236 237 /** 238 * Genera la sección sobre notificaciones legales. 239 * 240 * @return string HTML sobre eficacia de notificaciones. 241 */ 204 242 function pdrgpd_aviso_legal_notificaciones() { 205 243 $locale = get_locale(); … … 213 251 return do_shortcode( $html ); 214 252 } 215 216 add_shortcode( 'pdrgpd-aviso-legal-jurisdiccion', 'pdrgpd_aviso_legal_jurisdiccion' ); 253 add_shortcode( 'pdrgpd-aviso-legal-notificaciones', 'pdrgpd_aviso_legal_notificaciones' ); 254 255 /** 256 * Genera la sección de jurisdicción aplicable. 257 * Solo se muestra si está definida una provincia. 258 * 259 * @return string|null HTML sobre jurisdicción o null si no aplica. 260 */ 217 261 function pdrgpd_aviso_legal_jurisdiccion() { 218 262 // Para fijar la jurisdicción, ha de estar definida la provincia. … … 229 273 } 230 274 } 231 232 add_shortcode( 'pdrgpd-aviso-legal-legislacion', 'pdrgpd_aviso_legal_legislacion' ); 275 add_shortcode( 'pdrgpd-aviso-legal-jurisdiccion', 'pdrgpd_aviso_legal_jurisdiccion' ); 276 277 /** 278 * Genera la sección sobre legislación aplicable. 279 * 280 * @return string HTML sobre normativa legal. 281 */ 233 282 function pdrgpd_aviso_legal_legislacion() { 234 283 $locale = get_locale(); … … 242 291 return do_shortcode( $html ); 243 292 } 293 add_shortcode( 'pdrgpd-aviso-legal-legislacion', 'pdrgpd_aviso_legal_legislacion' ); 244 294 245 295 // Lectura de valores configurados o por defecto. 246 add_shortcode( 'pdrgpd-titular', 'pdrgpd_conf_titular' ); 296 297 /** 298 * Shortcode para obtener el titular del sitio. 299 * 300 * @return string Nombre del titular (escapado). 301 */ 247 302 function pdrgpd_conf_titular() { 248 303 return esc_html( get_option( 'pdrgpd_titular', 'Perico de los Palotes' ) ); 249 304 } 250 251 add_shortcode( 'pdrgpd-nif', 'pdrgpd_conf_nif' ); 305 add_shortcode( 'pdrgpd-titular', 'pdrgpd_conf_titular' ); 306 307 /** 308 * Shortcode para obtener el NIF/CIF del titular. 309 * 310 * @return string NIF/CIF (escapado). 311 */ 252 312 function pdrgpd_conf_nif() { 253 313 return esc_html( get_option( 'pdrgpd_nif', 'X00000000T' ) ); 254 314 } 255 315 add_shortcode( 'pdrgpd-nif', 'pdrgpd_conf_nif' ); 316 317 /** 318 * Obtiene el número de inscripción VIES. 319 * 320 * @return string Valor VIES (escapado). 321 */ 256 322 function pdrgpd_conf_vies() { 257 323 return esc_html( get_option( 'pdrgpd_vies', '' ) ); 258 324 } 259 325 260 add_shortcode( 'pdrgpd-direccion', 'pdrgpd_conf_direccion' ); 326 /** 327 * Shortcode para obtener la dirección del titular. 328 * 329 * @return string Dirección (escapada). 330 */ 261 331 function pdrgpd_conf_direccion() { 262 332 return esc_html( get_option( 'pdrgpd_direccion', '13, Rue del Percebe' ) ); 263 333 } 264 265 add_shortcode( 'pdrgpd-cp', 'pdrgpd_conf_cp' ); 334 add_shortcode( 'pdrgpd-direccion', 'pdrgpd_conf_direccion' ); 335 336 /** 337 * Shortcode para obtener el código postal. 338 * 339 * @return string Código postal (escapado). 340 */ 266 341 function pdrgpd_conf_cp() { 267 342 return esc_html( get_option( 'pdrgpd_cp', '' ) ); 268 343 } 269 270 add_shortcode( 'pdrgpd-poblacion', 'pdrgpd_conf_poblacion' ); 344 add_shortcode( 'pdrgpd-cp', 'pdrgpd_conf_cp' ); 345 346 /** 347 * Shortcode para obtener la población. 348 * 349 * @return string Población (escapada). 350 */ 271 351 function pdrgpd_conf_poblacion() { 272 352 return esc_html( get_option( 'pdrgpd_poblacion', 'Villaconejos de Arriba' ) ); 273 353 } 274 275 add_shortcode( 'pdrgpd-provincia', 'pdrgpd_conf_provincia' ); 354 add_shortcode( 'pdrgpd-poblacion', 'pdrgpd_conf_poblacion' ); 355 356 /** 357 * Shortcode para obtener la provincia. 358 * 359 * @return string Provincia (escapada). 360 */ 276 361 function pdrgpd_conf_provincia() { 277 362 return esc_html( get_option( 'pdrgpd_provincia', '' ) ); 278 363 } 279 364 add_shortcode( 'pdrgpd-provincia', 'pdrgpd_conf_provincia' ); 365 366 /** 367 * Obtiene el país configurado (siempre España). 368 * 369 * @return string "España". 370 */ 280 371 function pdrgpd_conf_pais() { 281 372 return esc_html( 'España' ); 282 373 } 283 374 284 add_shortcode( 'pdrgpd-telefono', 'pdrgpd_html_telefono' ); 375 /** 376 * Shortcode para mostrar el teléfono como enlace clickable. 377 * 378 * @return string HTML del teléfono (enlace si es válido). 379 */ 285 380 function pdrgpd_html_telefono() { 286 381 $telefono_conf = pdrgpd_conf_telefono(); … … 297 392 return $html; 298 393 } 299 394 add_shortcode( 'pdrgpd-telefono', 'pdrgpd_html_telefono' ); 395 396 /** 397 * Obtiene el teléfono configurado para el aviso legal 398 * 399 * - Valor por defecto: cadena vacía 400 * - El valor se escapa con esc_html() 401 * - Formato recomendado: [+][prefijo][número] (ej: +34123456789) 402 * 403 * @return string Teléfono en formato válido o cadena vacía 404 */ 300 405 function pdrgpd_conf_telefono() { 301 406 return esc_html( get_option( 'pdrgpd_telefono', '' ) ); 302 407 } 303 408 304 add_shortcode( 'pdrgpd-email', 'pdrgpd_html_email' ); 409 /** 410 * Shortcode para mostrar el email como enlace con protección antispam. 411 * 412 * @return string HTML del email (enlace protegido). 413 */ 305 414 function pdrgpd_html_email() { 306 415 $html = '<a href="mailto:'; … … 311 420 return $html; 312 421 } 313 422 add_shortcode( 'pdrgpd-email', 'pdrgpd_html_email' ); 423 424 /** 425 * Obtiene el email configurado (o el del admin). 426 * 427 * @return string Email (escapado). 428 */ 314 429 function pdrgpd_conf_email() { 315 430 return esc_html( get_option( 'pdrgpd_email', get_bloginfo( 'admin_email' ) ) ); 316 431 } 317 432 433 /** 434 * Genera texto de inscripción VIES si está configurado. 435 * 436 * @return string Texto HTML o vacío. 437 */ 318 438 function pdrgpd_inscripcion_vies() { 319 439 if ( pdrgpd_conf_vies() ) { … … 326 446 } 327 447 448 /** 449 * Formatea el NIF-IVA según país 450 * 451 * @param string $pais Nombre completo del país (ej: "España"). 452 * @param string $iva NIF/CIF sin prefijo de país. 453 * @return string NIF-IVA formateado (ej: "ESX00000000T"). 454 * @throws InvalidArgumentException Si el país no está soportado. 455 */ 328 456 function pdrgpd_nif_iva( $pais, $iva ) { 329 457 $vat = pdrgpd_codigo_pais( $pais ) . $iva; … … 331 459 } 332 460 461 /** 462 * Obtiene el código de país ISO para VIES. 463 * 464 * @param string $pais Nombre del país. 465 * @return string Código ISO de 2 letras. 466 */ 333 467 function pdrgpd_codigo_pais( $pais ) { 334 468 switch ( $pais ) { … … 421 555 } 422 556 423 /** Inscripción en el Registro Mercantil 424 // add_shortcode( 'pdrgpd-inscripcion-registro-mercantil' , 'pdrgpd_inscripcion_registro_mercantil' ); */ 557 558 /** 559 * Genera texto de inscripción en Registro Mercantil si está configurado. 560 * 561 * @return string Texto HTML o vacío. 562 */ 425 563 function pdrgpd_inscripcion_registro_mercantil() { 426 564 $locale = get_locale(); … … 461 599 } 462 600 601 // Funciones de configuración del Registro Mercantil (todas devuelven strings escapados). 602 603 /** 604 * Obtiene la población de inscripción en el Registro Mercantil. 605 * 606 * @return string Población de registro (escapada). 607 */ 463 608 function pdrgpd_conf_rmercant_poblacion() { 464 609 return esc_html( get_option( 'pdrgpd_rmercant_poblacion', '' ) ); 465 610 } 466 611 612 /** 613 * Obtiene la provincia de inscripción en el Registro Mercantil. 614 * 615 * @return string Provincia de registro (escapada). 616 */ 467 617 function pdrgpd_conf_rmercant_provincia() { 468 618 return esc_html( get_option( 'pdrgpd_rmercant_provincia', '' ) ); 469 619 } 470 620 621 /** 622 * Obtiene la fecha de inscripción en el Registro Mercantil. 623 * 624 * @return string Fecha de registro (escapada). 625 */ 471 626 function pdrgpd_conf_rmercant_fecha() { 472 627 return esc_html( get_option( 'pdrgpd_rmercant_fecha', '' ) ); 473 628 } 474 629 630 /** 631 * Obtiene el número de presentación en el Registro Mercantil. 632 * 633 * @return string Número de presentación (escapado). 634 */ 475 635 function pdrgpd_conf_rmercant_presentacion() { 476 636 return esc_html( get_option( 'pdrgpd_rmercant_presentacion', '' ) ); 477 637 } 478 638 639 /** 640 * Obtiene la sección de inscripción en el Registro Mercantil. 641 * 642 * @return string Sección de registro (escapada). 643 */ 479 644 function pdrgpd_conf_rmercant_seccion() { 480 645 return esc_html( get_option( 'pdrgpd_rmercant_seccion', '' ) ); 481 646 } 482 647 648 /** 649 * Obtiene el libro de inscripción en el Registro Mercantil. 650 * 651 * @return string Libro de registro (escapado). 652 */ 483 653 function pdrgpd_conf_rmercant_libro() { 484 654 return esc_html( get_option( 'pdrgpd_rmercant_libro', '' ) ); 485 655 } 486 656 657 /** 658 * Obtiene el tomo de inscripción en el Registro Mercantil. 659 * 660 * @return string Tomo de registro (escapado). 661 */ 487 662 function pdrgpd_conf_rmercant_tomo() { 488 663 return esc_html( get_option( 'pdrgpd_rmercant_tomo', '' ) ); 489 664 } 490 665 666 /** 667 * Obtiene el folio de inscripción en el Registro Mercantil. 668 * 669 * @return string Folio de registro (escapado). 670 */ 491 671 function pdrgpd_conf_rmercant_folio() { 492 672 return esc_html( get_option( 'pdrgpd_rmercant_folio', '' ) ); 493 673 } 494 674 675 /** 676 * Obtiene la hoja de inscripción en el Registro Mercantil. 677 * 678 * @return string Hoja de registro (escapada). 679 */ 495 680 function pdrgpd_conf_rmercant_hoja() { 496 681 return esc_html( get_option( 'pdrgpd_rmercant_hoja', '' ) ); 497 682 } 498 683 684 /** 685 * Obtiene el protocolo de inscripción en el Registro Mercantil. 686 * 687 * @return string Protocolo de registro (escapado). 688 */ 499 689 function pdrgpd_conf_rmercant_protocolo() { 500 690 return esc_html( get_option( 'pdrgpd_rmercant_protocolo', '' ) ); 501 691 } 502 692 693 /** 694 * Obtiene el número de inscripción en el Registro Mercantil. 695 * 696 * @return string Número de registro (escapado). 697 */ 503 698 function pdrgpd_conf_rmercant_num() { 504 699 return esc_html( get_option( 'pdrgpd_rmercant_num', '' ) ); 505 700 } 506 701 507 add_shortcode( 'pdrgpd-sitio', 'pdrgpd_conf_sitio' ); 702 /** 703 * Shortcode para obtener el nombre del sitio. 704 * 705 * @return string Nombre del sitio (escapado). 706 */ 508 707 function pdrgpd_conf_sitio() { 509 708 return esc_html( get_option( 'pdrgpd_sitio', get_bloginfo( 'name' ) ) ); 510 709 } 511 512 add_shortcode( 'pdrgpd-dominio', 'pdrgpd_conf_dominio' ); 710 add_shortcode( 'pdrgpd-sitio', 'pdrgpd_conf_sitio' ); 711 712 /** 713 * Shortcode para obtener el dominio del sitio. 714 * 715 * @return string Dominio (escapado). 716 */ 513 717 function pdrgpd_conf_dominio() { 514 718 // Quitamos el protocolo al valor por defecto de la home. 515 719 return esc_html( get_option( 'pdrgpd_dominio', explode( '//', get_bloginfo( 'url' ) )[1] ) ); 516 720 } 517 add_shortcode( 'pdrgpd-uri-aviso', 'pdrgpd_conf_uri_aviso' ); 721 add_shortcode( 'pdrgpd-dominio', 'pdrgpd_conf_dominio' ); 722 723 /** 724 * Shortcode para obtener la URL del Aviso Legal. 725 * 726 * @return string URL completa (escapada). 727 */ 518 728 function pdrgpd_conf_uri_aviso() { 519 729 return esc_url( get_option( 'pdrgpd_uri_aviso', get_bloginfo( 'wpurl' ) . '/aviso-legal/' ) ); 520 730 } 521 522 add_shortcode( 'pdrgpd-uri-privacidad', 'pdrgpd_conf_uri_privacidad' ); 731 add_shortcode( 'pdrgpd-uri-aviso', 'pdrgpd_conf_uri_aviso' ); 732 733 /** 734 * Shortcode para obtener la URL de la Política de Privacidad. 735 * 736 * @return string URL completa (escapada). 737 */ 523 738 function pdrgpd_conf_uri_privacidad() { 524 739 return esc_url( get_option( 'pdrgpd_uri_privacidad', get_bloginfo( 'wpurl' ) . '/privacidad/' ) ); 525 740 } 526 527 add_shortcode( 'pdrgpd-uri-cookies', 'pdrgpd_conf_uri_cookies' ); 741 add_shortcode( 'pdrgpd-uri-privacidad', 'pdrgpd_conf_uri_privacidad' ); 742 743 /** 744 * Shortcode para obtener la URL de la Política de Cookies. 745 * 746 * @return string URL completa (escapada). 747 */ 528 748 function pdrgpd_conf_uri_cookies() { 529 749 return esc_url( get_option( 'pdrgpd_uri_cookies', get_bloginfo( 'wpurl' ) . '/cookies/' ) ); 530 750 } 751 add_shortcode( 'pdrgpd-uri-cookies', 'pdrgpd_conf_uri_cookies' ); -
proteccion-datos-rgpd/tags/0.68/proteccion-datos-rgpd.php
r3190618 r3320735 4 4 * Plugin URI: https://taller.abcdatos.net/plugin-rgpd-wordpress/ 5 5 * Description: Arrange your site to GDPR (General Data Protection Regulation) and LSSICE as well as other required tasks based on required configurations ettings. 6 * Version: 0.68 -dev6 * Version: 0.68 7 7 * Author: ABCdatos 8 8 * Author URI: https://taller.abcdatos.net/ -
proteccion-datos-rgpd/tags/0.68/readme.txt
r3190618 r3320735 4 4 Requires at least: 4.2 5 5 Tested up to: 6.7 6 Stable tag: 0.6 76 Stable tag: 0.68 7 7 Requires PHP: 5.3 8 8 License: GPLv2 … … 178 178 179 179 = 0.68-dev = 180 **** ** 202 4*180 **** ** 2025* 181 181 * Improved handling for non-existent pages specified in control panel options. 182 * Minor corrections to legal advice. 182 183 * WordPress 6.7 basic compatibility checked. 183 184 -
proteccion-datos-rgpd/trunk/aviso-legal.php
r3063809 r3320735 13 13 // Shortcodes. 14 14 15 add_shortcode( 'pdrgpd-aviso-legal', 'pdrgpd_aviso_legal' ); 16 /** 17 * Com pone el contenido completo de [pdrgpd-aviso-legal]18 * para crear la página del aviso legal aplicando la lista19 * de shortcodes de menor entidad.15 /** 16 * Shortcode principal que compone el Aviso Legal completo. 17 * Combina todos los shortcodes de secciones menores. 18 * 19 * @return string HTML generado por los shortcodes combinados. 20 20 */ 21 21 function pdrgpd_aviso_legal() { … … 31 31 return do_shortcode( $html ); 32 32 } 33 34 add_shortcode( 'pdrgpd-aviso-legal-identificacion-titular', 'pdrgpd_aviso_legal_identificacion_titular' ); 33 add_shortcode( 'pdrgpd-aviso-legal', 'pdrgpd_aviso_legal' ); 34 35 /** 36 * Genera la sección de identificación del titular del sitio web. 37 * 38 * @return string HTML con los datos identificativos del titular. 39 * 40 * @internal 41 * Nota: La estructura HTML varía según el idioma (ca/es) y campos configurados. 42 */ 35 43 function pdrgpd_aviso_legal_identificacion_titular() { 36 44 $locale = get_locale(); … … 48 56 $html .= ', codi postal [pdrgpd-cp]'; 49 57 } 50 $html .= ' de [pdrgpd-poblacion]'; 58 // Si se pone "de", puede requerir apostrofarlo. 59 $html .= ' a [pdrgpd-poblacion]'; 51 60 if ( pdrgpd_conf_provincia() && pdrgpd_conf_provincia() !== pdrgpd_conf_poblacion() ) { 52 61 $html .= ', [pdrgpd-provincia]'; … … 75 84 $html .= ', código postal [pdrgpd-cp]'; 76 85 } 77 // Si se pone "de", puede requerir apostrofarlo. 78 $html .= ' a [pdrgpd-poblacion]'; 86 $html .= ' en [pdrgpd-poblacion]'; 79 87 if ( pdrgpd_conf_provincia() && pdrgpd_conf_provincia() !== pdrgpd_conf_poblacion() ) { 80 88 $html .= ', [pdrgpd-provincia]'; … … 93 101 return do_shortcode( $html ); 94 102 } 95 96 add_shortcode( 'pdrgpd-aviso-legal-condiciones', 'pdrgpd_aviso_legal_condiciones' ); 103 add_shortcode( 'pdrgpd-aviso-legal-identificacion-titular', 'pdrgpd_aviso_legal_identificacion_titular' ); 104 105 /** 106 * Genera la sección de condiciones de uso del sitio web. 107 * 108 * @return string HTML con las condiciones de uso. 109 */ 97 110 function pdrgpd_aviso_legal_condiciones() { 98 111 $locale = get_locale(); … … 128 141 return do_shortcode( $html ); 129 142 } 130 131 add_shortcode( 'pdrgpd-aviso-legal-propiedad-intelectual', 'pdrgpd_aviso_legal_propiedad_intelectual' ); 143 add_shortcode( 'pdrgpd-aviso-legal-condiciones', 'pdrgpd_aviso_legal_condiciones' ); 144 145 /** 146 * Genera la sección sobre propiedad intelectual del contenido. 147 * 148 * @return string HTML sobre derechos de propiedad intelectual. 149 */ 132 150 function pdrgpd_aviso_legal_propiedad_intelectual() { 133 151 $locale = get_locale(); … … 141 159 return do_shortcode( $html ); 142 160 } 143 144 add_shortcode( 'pdrgpd-aviso-legal-disponibilidad', 'pdrgpd_aviso_legal_disponibilidad' ); 161 add_shortcode( 'pdrgpd-aviso-legal-propiedad-intelectual', 'pdrgpd_aviso_legal_propiedad_intelectual' ); 162 163 /** 164 * Genera la sección sobre disponibilidad del sitio web. 165 * 166 * @return string HTML sobre garantías de disponibilidad. 167 */ 145 168 function pdrgpd_aviso_legal_disponibilidad() { 146 169 $locale = get_locale(); … … 174 197 return do_shortcode( $html ); 175 198 } 176 177 add_shortcode( 'pdrgpd-aviso-legal-calidad', 'pdrgpd_aviso_legal_calidad' ); 199 add_shortcode( 'pdrgpd-aviso-legal-disponibilidad', 'pdrgpd_aviso_legal_disponibilidad' ); 200 201 /** 202 * Genera la sección sobre calidad del contenido. 203 * 204 * @return string HTML sobre garantías de calidad. 205 */ 178 206 function pdrgpd_aviso_legal_calidad() { 179 207 $locale = get_locale(); … … 187 215 return do_shortcode( $html ); 188 216 } 189 190 add_shortcode( 'pdrgpd-aviso-legal-limitacion-responsabilidad', 'pdrgpd_aviso_legal_limitacion_responsabilidad' ); 217 add_shortcode( 'pdrgpd-aviso-legal-calidad', 'pdrgpd_aviso_legal_calidad' ); 218 219 /** 220 * Genera la sección de limitación de responsabilidad. 221 * 222 * @return string HTML sobre exclusiones de responsabilidad. 223 */ 191 224 function pdrgpd_aviso_legal_limitacion_responsabilidad() { 192 225 $locale = get_locale(); … … 200 233 return do_shortcode( $html ); 201 234 } 202 203 add_shortcode( 'pdrgpd-aviso-legal-notificaciones', 'pdrgpd_aviso_legal_notificaciones' ); 235 add_shortcode( 'pdrgpd-aviso-legal-limitacion-responsabilidad', 'pdrgpd_aviso_legal_limitacion_responsabilidad' ); 236 237 /** 238 * Genera la sección sobre notificaciones legales. 239 * 240 * @return string HTML sobre eficacia de notificaciones. 241 */ 204 242 function pdrgpd_aviso_legal_notificaciones() { 205 243 $locale = get_locale(); … … 213 251 return do_shortcode( $html ); 214 252 } 215 216 add_shortcode( 'pdrgpd-aviso-legal-jurisdiccion', 'pdrgpd_aviso_legal_jurisdiccion' ); 253 add_shortcode( 'pdrgpd-aviso-legal-notificaciones', 'pdrgpd_aviso_legal_notificaciones' ); 254 255 /** 256 * Genera la sección de jurisdicción aplicable. 257 * Solo se muestra si está definida una provincia. 258 * 259 * @return string|null HTML sobre jurisdicción o null si no aplica. 260 */ 217 261 function pdrgpd_aviso_legal_jurisdiccion() { 218 262 // Para fijar la jurisdicción, ha de estar definida la provincia. … … 229 273 } 230 274 } 231 232 add_shortcode( 'pdrgpd-aviso-legal-legislacion', 'pdrgpd_aviso_legal_legislacion' ); 275 add_shortcode( 'pdrgpd-aviso-legal-jurisdiccion', 'pdrgpd_aviso_legal_jurisdiccion' ); 276 277 /** 278 * Genera la sección sobre legislación aplicable. 279 * 280 * @return string HTML sobre normativa legal. 281 */ 233 282 function pdrgpd_aviso_legal_legislacion() { 234 283 $locale = get_locale(); … … 242 291 return do_shortcode( $html ); 243 292 } 293 add_shortcode( 'pdrgpd-aviso-legal-legislacion', 'pdrgpd_aviso_legal_legislacion' ); 244 294 245 295 // Lectura de valores configurados o por defecto. 246 add_shortcode( 'pdrgpd-titular', 'pdrgpd_conf_titular' ); 296 297 /** 298 * Shortcode para obtener el titular del sitio. 299 * 300 * @return string Nombre del titular (escapado). 301 */ 247 302 function pdrgpd_conf_titular() { 248 303 return esc_html( get_option( 'pdrgpd_titular', 'Perico de los Palotes' ) ); 249 304 } 250 251 add_shortcode( 'pdrgpd-nif', 'pdrgpd_conf_nif' ); 305 add_shortcode( 'pdrgpd-titular', 'pdrgpd_conf_titular' ); 306 307 /** 308 * Shortcode para obtener el NIF/CIF del titular. 309 * 310 * @return string NIF/CIF (escapado). 311 */ 252 312 function pdrgpd_conf_nif() { 253 313 return esc_html( get_option( 'pdrgpd_nif', 'X00000000T' ) ); 254 314 } 255 315 add_shortcode( 'pdrgpd-nif', 'pdrgpd_conf_nif' ); 316 317 /** 318 * Obtiene el número de inscripción VIES. 319 * 320 * @return string Valor VIES (escapado). 321 */ 256 322 function pdrgpd_conf_vies() { 257 323 return esc_html( get_option( 'pdrgpd_vies', '' ) ); 258 324 } 259 325 260 add_shortcode( 'pdrgpd-direccion', 'pdrgpd_conf_direccion' ); 326 /** 327 * Shortcode para obtener la dirección del titular. 328 * 329 * @return string Dirección (escapada). 330 */ 261 331 function pdrgpd_conf_direccion() { 262 332 return esc_html( get_option( 'pdrgpd_direccion', '13, Rue del Percebe' ) ); 263 333 } 264 265 add_shortcode( 'pdrgpd-cp', 'pdrgpd_conf_cp' ); 334 add_shortcode( 'pdrgpd-direccion', 'pdrgpd_conf_direccion' ); 335 336 /** 337 * Shortcode para obtener el código postal. 338 * 339 * @return string Código postal (escapado). 340 */ 266 341 function pdrgpd_conf_cp() { 267 342 return esc_html( get_option( 'pdrgpd_cp', '' ) ); 268 343 } 269 270 add_shortcode( 'pdrgpd-poblacion', 'pdrgpd_conf_poblacion' ); 344 add_shortcode( 'pdrgpd-cp', 'pdrgpd_conf_cp' ); 345 346 /** 347 * Shortcode para obtener la población. 348 * 349 * @return string Población (escapada). 350 */ 271 351 function pdrgpd_conf_poblacion() { 272 352 return esc_html( get_option( 'pdrgpd_poblacion', 'Villaconejos de Arriba' ) ); 273 353 } 274 275 add_shortcode( 'pdrgpd-provincia', 'pdrgpd_conf_provincia' ); 354 add_shortcode( 'pdrgpd-poblacion', 'pdrgpd_conf_poblacion' ); 355 356 /** 357 * Shortcode para obtener la provincia. 358 * 359 * @return string Provincia (escapada). 360 */ 276 361 function pdrgpd_conf_provincia() { 277 362 return esc_html( get_option( 'pdrgpd_provincia', '' ) ); 278 363 } 279 364 add_shortcode( 'pdrgpd-provincia', 'pdrgpd_conf_provincia' ); 365 366 /** 367 * Obtiene el país configurado (siempre España). 368 * 369 * @return string "España". 370 */ 280 371 function pdrgpd_conf_pais() { 281 372 return esc_html( 'España' ); 282 373 } 283 374 284 add_shortcode( 'pdrgpd-telefono', 'pdrgpd_html_telefono' ); 375 /** 376 * Shortcode para mostrar el teléfono como enlace clickable. 377 * 378 * @return string HTML del teléfono (enlace si es válido). 379 */ 285 380 function pdrgpd_html_telefono() { 286 381 $telefono_conf = pdrgpd_conf_telefono(); … … 297 392 return $html; 298 393 } 299 394 add_shortcode( 'pdrgpd-telefono', 'pdrgpd_html_telefono' ); 395 396 /** 397 * Obtiene el teléfono configurado para el aviso legal 398 * 399 * - Valor por defecto: cadena vacía 400 * - El valor se escapa con esc_html() 401 * - Formato recomendado: [+][prefijo][número] (ej: +34123456789) 402 * 403 * @return string Teléfono en formato válido o cadena vacía 404 */ 300 405 function pdrgpd_conf_telefono() { 301 406 return esc_html( get_option( 'pdrgpd_telefono', '' ) ); 302 407 } 303 408 304 add_shortcode( 'pdrgpd-email', 'pdrgpd_html_email' ); 409 /** 410 * Shortcode para mostrar el email como enlace con protección antispam. 411 * 412 * @return string HTML del email (enlace protegido). 413 */ 305 414 function pdrgpd_html_email() { 306 415 $html = '<a href="mailto:'; … … 311 420 return $html; 312 421 } 313 422 add_shortcode( 'pdrgpd-email', 'pdrgpd_html_email' ); 423 424 /** 425 * Obtiene el email configurado (o el del admin). 426 * 427 * @return string Email (escapado). 428 */ 314 429 function pdrgpd_conf_email() { 315 430 return esc_html( get_option( 'pdrgpd_email', get_bloginfo( 'admin_email' ) ) ); 316 431 } 317 432 433 /** 434 * Genera texto de inscripción VIES si está configurado. 435 * 436 * @return string Texto HTML o vacío. 437 */ 318 438 function pdrgpd_inscripcion_vies() { 319 439 if ( pdrgpd_conf_vies() ) { … … 326 446 } 327 447 448 /** 449 * Formatea el NIF-IVA según país 450 * 451 * @param string $pais Nombre completo del país (ej: "España"). 452 * @param string $iva NIF/CIF sin prefijo de país. 453 * @return string NIF-IVA formateado (ej: "ESX00000000T"). 454 * @throws InvalidArgumentException Si el país no está soportado. 455 */ 328 456 function pdrgpd_nif_iva( $pais, $iva ) { 329 457 $vat = pdrgpd_codigo_pais( $pais ) . $iva; … … 331 459 } 332 460 461 /** 462 * Obtiene el código de país ISO para VIES. 463 * 464 * @param string $pais Nombre del país. 465 * @return string Código ISO de 2 letras. 466 */ 333 467 function pdrgpd_codigo_pais( $pais ) { 334 468 switch ( $pais ) { … … 421 555 } 422 556 423 /** Inscripción en el Registro Mercantil 424 // add_shortcode( 'pdrgpd-inscripcion-registro-mercantil' , 'pdrgpd_inscripcion_registro_mercantil' ); */ 557 558 /** 559 * Genera texto de inscripción en Registro Mercantil si está configurado. 560 * 561 * @return string Texto HTML o vacío. 562 */ 425 563 function pdrgpd_inscripcion_registro_mercantil() { 426 564 $locale = get_locale(); … … 461 599 } 462 600 601 // Funciones de configuración del Registro Mercantil (todas devuelven strings escapados). 602 603 /** 604 * Obtiene la población de inscripción en el Registro Mercantil. 605 * 606 * @return string Población de registro (escapada). 607 */ 463 608 function pdrgpd_conf_rmercant_poblacion() { 464 609 return esc_html( get_option( 'pdrgpd_rmercant_poblacion', '' ) ); 465 610 } 466 611 612 /** 613 * Obtiene la provincia de inscripción en el Registro Mercantil. 614 * 615 * @return string Provincia de registro (escapada). 616 */ 467 617 function pdrgpd_conf_rmercant_provincia() { 468 618 return esc_html( get_option( 'pdrgpd_rmercant_provincia', '' ) ); 469 619 } 470 620 621 /** 622 * Obtiene la fecha de inscripción en el Registro Mercantil. 623 * 624 * @return string Fecha de registro (escapada). 625 */ 471 626 function pdrgpd_conf_rmercant_fecha() { 472 627 return esc_html( get_option( 'pdrgpd_rmercant_fecha', '' ) ); 473 628 } 474 629 630 /** 631 * Obtiene el número de presentación en el Registro Mercantil. 632 * 633 * @return string Número de presentación (escapado). 634 */ 475 635 function pdrgpd_conf_rmercant_presentacion() { 476 636 return esc_html( get_option( 'pdrgpd_rmercant_presentacion', '' ) ); 477 637 } 478 638 639 /** 640 * Obtiene la sección de inscripción en el Registro Mercantil. 641 * 642 * @return string Sección de registro (escapada). 643 */ 479 644 function pdrgpd_conf_rmercant_seccion() { 480 645 return esc_html( get_option( 'pdrgpd_rmercant_seccion', '' ) ); 481 646 } 482 647 648 /** 649 * Obtiene el libro de inscripción en el Registro Mercantil. 650 * 651 * @return string Libro de registro (escapado). 652 */ 483 653 function pdrgpd_conf_rmercant_libro() { 484 654 return esc_html( get_option( 'pdrgpd_rmercant_libro', '' ) ); 485 655 } 486 656 657 /** 658 * Obtiene el tomo de inscripción en el Registro Mercantil. 659 * 660 * @return string Tomo de registro (escapado). 661 */ 487 662 function pdrgpd_conf_rmercant_tomo() { 488 663 return esc_html( get_option( 'pdrgpd_rmercant_tomo', '' ) ); 489 664 } 490 665 666 /** 667 * Obtiene el folio de inscripción en el Registro Mercantil. 668 * 669 * @return string Folio de registro (escapado). 670 */ 491 671 function pdrgpd_conf_rmercant_folio() { 492 672 return esc_html( get_option( 'pdrgpd_rmercant_folio', '' ) ); 493 673 } 494 674 675 /** 676 * Obtiene la hoja de inscripción en el Registro Mercantil. 677 * 678 * @return string Hoja de registro (escapada). 679 */ 495 680 function pdrgpd_conf_rmercant_hoja() { 496 681 return esc_html( get_option( 'pdrgpd_rmercant_hoja', '' ) ); 497 682 } 498 683 684 /** 685 * Obtiene el protocolo de inscripción en el Registro Mercantil. 686 * 687 * @return string Protocolo de registro (escapado). 688 */ 499 689 function pdrgpd_conf_rmercant_protocolo() { 500 690 return esc_html( get_option( 'pdrgpd_rmercant_protocolo', '' ) ); 501 691 } 502 692 693 /** 694 * Obtiene el número de inscripción en el Registro Mercantil. 695 * 696 * @return string Número de registro (escapado). 697 */ 503 698 function pdrgpd_conf_rmercant_num() { 504 699 return esc_html( get_option( 'pdrgpd_rmercant_num', '' ) ); 505 700 } 506 701 507 add_shortcode( 'pdrgpd-sitio', 'pdrgpd_conf_sitio' ); 702 /** 703 * Shortcode para obtener el nombre del sitio. 704 * 705 * @return string Nombre del sitio (escapado). 706 */ 508 707 function pdrgpd_conf_sitio() { 509 708 return esc_html( get_option( 'pdrgpd_sitio', get_bloginfo( 'name' ) ) ); 510 709 } 511 512 add_shortcode( 'pdrgpd-dominio', 'pdrgpd_conf_dominio' ); 710 add_shortcode( 'pdrgpd-sitio', 'pdrgpd_conf_sitio' ); 711 712 /** 713 * Shortcode para obtener el dominio del sitio. 714 * 715 * @return string Dominio (escapado). 716 */ 513 717 function pdrgpd_conf_dominio() { 514 718 // Quitamos el protocolo al valor por defecto de la home. 515 719 return esc_html( get_option( 'pdrgpd_dominio', explode( '//', get_bloginfo( 'url' ) )[1] ) ); 516 720 } 517 add_shortcode( 'pdrgpd-uri-aviso', 'pdrgpd_conf_uri_aviso' ); 721 add_shortcode( 'pdrgpd-dominio', 'pdrgpd_conf_dominio' ); 722 723 /** 724 * Shortcode para obtener la URL del Aviso Legal. 725 * 726 * @return string URL completa (escapada). 727 */ 518 728 function pdrgpd_conf_uri_aviso() { 519 729 return esc_url( get_option( 'pdrgpd_uri_aviso', get_bloginfo( 'wpurl' ) . '/aviso-legal/' ) ); 520 730 } 521 522 add_shortcode( 'pdrgpd-uri-privacidad', 'pdrgpd_conf_uri_privacidad' ); 731 add_shortcode( 'pdrgpd-uri-aviso', 'pdrgpd_conf_uri_aviso' ); 732 733 /** 734 * Shortcode para obtener la URL de la Política de Privacidad. 735 * 736 * @return string URL completa (escapada). 737 */ 523 738 function pdrgpd_conf_uri_privacidad() { 524 739 return esc_url( get_option( 'pdrgpd_uri_privacidad', get_bloginfo( 'wpurl' ) . '/privacidad/' ) ); 525 740 } 526 527 add_shortcode( 'pdrgpd-uri-cookies', 'pdrgpd_conf_uri_cookies' ); 741 add_shortcode( 'pdrgpd-uri-privacidad', 'pdrgpd_conf_uri_privacidad' ); 742 743 /** 744 * Shortcode para obtener la URL de la Política de Cookies. 745 * 746 * @return string URL completa (escapada). 747 */ 528 748 function pdrgpd_conf_uri_cookies() { 529 749 return esc_url( get_option( 'pdrgpd_uri_cookies', get_bloginfo( 'wpurl' ) . '/cookies/' ) ); 530 750 } 751 add_shortcode( 'pdrgpd-uri-cookies', 'pdrgpd_conf_uri_cookies' ); -
proteccion-datos-rgpd/trunk/proteccion-datos-rgpd.php
r3190618 r3320735 4 4 * Plugin URI: https://taller.abcdatos.net/plugin-rgpd-wordpress/ 5 5 * Description: Arrange your site to GDPR (General Data Protection Regulation) and LSSICE as well as other required tasks based on required configurations ettings. 6 * Version: 0.68 -dev6 * Version: 0.68 7 7 * Author: ABCdatos 8 8 * Author URI: https://taller.abcdatos.net/ -
proteccion-datos-rgpd/trunk/readme.txt
r3190618 r3320735 4 4 Requires at least: 4.2 5 5 Tested up to: 6.7 6 Stable tag: 0.6 76 Stable tag: 0.68 7 7 Requires PHP: 5.3 8 8 License: GPLv2 … … 178 178 179 179 = 0.68-dev = 180 **** ** 202 4*180 **** ** 2025* 181 181 * Improved handling for non-existent pages specified in control panel options. 182 * Minor corrections to legal advice. 182 183 * WordPress 6.7 basic compatibility checked. 183 184
Note: See TracChangeset
for help on using the changeset viewer.