Plugin Directory

Changeset 3672526


Ignore:
Timestamp:
08/30/2026 12:48:08 PM (8 weeks ago)
Author:
bibliatodo
Message:

Release 2.3: fix PHP 8 fatal error and CDN widget loading

Location:
ultimas-noticias
Files:
3 added
2 edited

Legend:

Unmodified
Added
Removed
  • ultimas-noticias/trunk/readme.txt

    r3625439 r3672526  
    55Requires at least: 4.6
    66Tested up to: 7.0
    7 Stable tag: trunk
     7Stable tag: 2.3
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
    … …  
    2929 
    3030   - Widget: Se puede añadir un widget de Últimas Noticias en la barra lateral de tu sitio de wordpress, vaya a apariencia - widget "Últimas Noticias"
    31    - Template: en cualquier lugar de su plantilla inserte este codigo `<script type="text/javascript" language="javascript" src="https://www.bibliatodo.com/assets/js/wordpress/es/widget-news.js"></script>` .
     31   - Template: en cualquier lugar de su plantilla inserte este codigo `<script type="text/javascript" src="https://cdn.bibliatodo.com/assets/js/wordpress/es/widget-news.js"></script>` .
    3232 
    3333
    … …  
    4141== Changelog ==
    4242
     43= 2.3 =
     44* Corrige el error fatal al activar el plugin en servidores con PHP 8 o superior.
     45* Mejora la compatibilidad del widget con las versiones actuales de WordPress.
     46* Carga el JavaScript desde el CDN para evitar bloqueos de Cloudflare.
     47
     48= 2.2 =
     49* Actualiza la compatibilidad declarada con WordPress.
    4350
    4451= 1.0 =
    … …  
    4754== Upgrade Notice ==
    4855
     56= 2.3 =
     57* Actualizacion necesaria para instalaciones que usan PHP 8 o superior.
     58
    4959= 1.1 =
    5060* Minor corrections.
  • ultimas-noticias/trunk/unb-ultimas-noticias.php

    r3625439 r3672526  
    44Plugin Name: Ultimas Noticias
    55Plugin URI: https://wordpress.org/plugins/ultimas-noticias/
    6 Description: Muestra las Ultimas Noticias en el hambito internacional, para manternet tu sitio web o blog actualizado
    7 Version: 2.2
     6Description: Muestra las ultimas noticias del ambito internacional para mantener tu sitio web o blog actualizado.
     7Version: 2.3
    88Author: Bibliatodo.com
    99Author URI: https://www.bibliatodo.com
    … …  
    2222*/
    2323
    24 function unb_ultimas_funcion_noticias($showlink, $language) {
    25         if($language == 'en'){
    26                 $languageUrl = 'https://www.bibliatodo.com/assets/js/wordpress/es/widget-news.js';
    27         }
    28         else{
    29                 $languageUrl = 'https://www.bibliatodo.com/assets/js/wordpress/es/widget-news.js';
    30         }
    31        
    32         $html = '<div>';
    33         $html .= '<script type="text/javascript" language="javascript" src="'.$languageUrl.'"></script>';
    34         /*if ($showlink == 1){
    35                 $html .= '<p style="text-align: center;"><a href="https://www.bibliatodo.com" target="_blank">Bibliatodo.com</a></p>';
    36         }*/
     24function unb_ultimas_funcion_noticias( $showlink = '1', $language = 'es' ) {
     25        $language_url = 'https://cdn.bibliatodo.com/assets/js/wordpress/es/widget-news.js';
     26
     27        $html  = '<div>';
     28        $html .= '<script type="text/javascript" src="' . esc_url( $language_url ) . '"></script>';
    3729        $html .= '</div>';
     30
    3831        return $html;
    3932}
    4033
    41 add_shortcode('unb_ultimas_noticias', 'unb_ultimas_funcion_noticias');
     34add_shortcode( 'unb_ultimas_noticias', 'unb_ultimas_funcion_noticias' );
    4235
    43 class unb_ultimas_noticiasWidget extends WP_Widget
    44 {
    45         function __construct()
    46         {
    47                 parent::__construct('unb_ultimas_noticiasWidget', __('Ultimas Noticias', 'unb_ultimas_noticias' ), array ('description' => __( 'Este plugin muestra en tu sitio web las ultimas noticias en el hambito internacional, todos los dias nuestros editores publican las mejores noticias para mantener tu sitio actualizado.', 'unb_ultimas_noticias')));
     36class unb_ultimas_noticiasWidget extends WP_Widget {
     37        public function __construct() {
     38                parent::__construct(
     39                        'unb_ultimas_noticiasWidget',
     40                        __( 'Ultimas Noticias', 'unb_ultimas_noticias' ),
     41                        array(
     42                                'description' => __( 'Este plugin muestra en tu sitio web las ultimas noticias del ambito internacional. Todos los dias nuestros editores publican las mejores noticias para mantener tu sitio actualizado.', 'unb_ultimas_noticias' ),
     43                        )
     44                );
    4845        }
    49         function form($instance)
    50         {
    51                 $instance = wp_parse_args( (array) $instance, array( 'title' => 'Ultimas Noticias', 'showlink' => '1', 'language' => 'es' ) );
    52                 $title = $instance['title'];
    53                 $showlink = $instance['showlink'];
    54                 $language = $instance['language'];
    55 ?>
    5646
    57 <p><label for="<?php echo $this->get_field_id('title'); ?>">Title: <input class="vdd_widefat" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo
    58 $this->get_field_name('title'); ?>" type="text" value="<?php echo esc_attr($title); ?>" /></label></p>
     47        public function form( $instance ) {
     48                $instance = wp_parse_args(
     49                        (array) $instance,
     50                        array(
     51                                'title'    => 'Ultimas Noticias',
     52                                'showlink' => '1',
     53                                'language' => 'es',
     54                        )
     55                );
     56                ?>
    5957
    60 <p><select id="<?php echo $this->get_field_id('language'); ?>" name="<?php echo $this->get_field_name('language'); ?>">
     58                <p>
     59                        <label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>">
     60                                <?php esc_html_e( 'Titulo:', 'unb_ultimas_noticias' ); ?>
     61                                <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>" type="text" value="<?php echo esc_attr( $instance['title'] ); ?>" />
     62                        </label>
     63                </p>
    6164
    62 <option value="es" <?php _e($language == '' || $language == 'es' ? 'selected' : ''); ?>>Español</option>
    63 <!--<option value="en" <?php _e($language == 'en' ? 'selected' : ''); ?>>Ingles</option>-->
     65                <p>
     66                        <label for="<?php echo esc_attr( $this->get_field_id( 'language' ) ); ?>">
     67                                <?php esc_html_e( 'Idioma:', 'unb_ultimas_noticias' ); ?>
     68                                <select id="<?php echo esc_attr( $this->get_field_id( 'language' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'language' ) ); ?>">
     69                                        <option value="es" <?php selected( $instance['language'], 'es' ); ?>>Espanol</option>
     70                                </select>
     71                        </label>
     72                </p>
    6473
    65 </select></p>
     74                <p>
     75                        <input id="<?php echo esc_attr( $this->get_field_id( 'showlink' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'showlink' ) ); ?>" type="checkbox" value="1" <?php checked( '1', $instance['showlink'] ); ?> />
     76                        <label for="<?php echo esc_attr( $this->get_field_id( 'showlink' ) ); ?>"><?php esc_html_e( 'Mostrar enlace a BibliaTodo.com', 'unb_ultimas_noticias' ); ?></label>
     77                </p>
    6678
    67 <p><input id="<?php echo $this->get_field_id('showlink'); ?>" name="<?php echo $this->get_field_name('showlink'); ?>" type="checkbox" value="1" <?php checked( '1',
    68 $showlink ); ?>/><label for="<?php echo $this->get_field_id('showlink'); ?>"><?php _e('&nbsp;Show link to BibliaTodo.com (thank you!)'); ?></label></p>
     79                <?php
     80        }
    6981
    70 <?php
    71         }
    72         function update($new_instance, $old_instance)
    73         {
    74                 $instance = $old_instance;
    75                 $instance['title'] = $new_instance['title'];
    76                 if($new_instance['showlink'] == '1')
    77                 {
    78                         $instance['showlink'] = '1';
    79                 }
    80                 else
    81                 {
    82                         $instance['showlink'] = '0';
    83                 }
    84                 $instance['language'] = $new_instance['language'];
     82        public function update( $new_instance, $old_instance ) {
     83                $instance             = (array) $old_instance;
     84                $instance['title']    = isset( $new_instance['title'] ) ? sanitize_text_field( $new_instance['title'] ) : '';
     85                $instance['showlink'] = ! empty( $new_instance['showlink'] ) ? '1' : '0';
     86                $instance['language'] = 'es';
     87
    8588                return $instance;
    8689        }
    87         function widget($args, $instance)
    88         {
    89                 extract($args, EXTR_SKIP);
    90                 echo $before_widget;
    91                 $title = empty($instance['title']) ? ' ' : apply_filters('widget_title', $instance['title']);
    92                 if (!empty($title))
    93                         echo $before_title . $title . $after_title;;
    94                 $showlink = $instance['showlink'];
    95                 $language = $instance['language'];
    96                 echo unb_ultimas_funcion_noticias($showlink, $language);
    97                 echo $after_widget;
     90
     91        public function widget( $args, $instance ) {
     92                $args = wp_parse_args(
     93                        $args,
     94                        array(
     95                                'before_widget' => '',
     96                                'after_widget'  => '',
     97                                'before_title'  => '',
     98                                'after_title'   => '',
     99                        )
     100                );
     101
     102                $title    = isset( $instance['title'] ) ? apply_filters( 'widget_title', $instance['title'] ) : '';
     103                $showlink = isset( $instance['showlink'] ) ? $instance['showlink'] : '1';
     104                $language = isset( $instance['language'] ) ? $instance['language'] : 'es';
     105
     106                echo $args['before_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     107                if ( ! empty( $title ) ) {
     108                        echo $args['before_title'] . esc_html( $title ) . $args['after_title']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     109                }
     110                echo unb_ultimas_funcion_noticias( $showlink, $language ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
     111                echo $args['after_widget']; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
    98112        }
    99113}
    100114
    101 add_action( 'widgets_init', create_function('', 'return register_widget("unb_ultimas_noticiasWidget");') );
     115function unb_registrar_widget_ultimas_noticias() {
     116        register_widget( 'unb_ultimas_noticiasWidget' );
     117}
    102118
    103 ?>
     119add_action( 'widgets_init', 'unb_registrar_widget_ultimas_noticias' );
Note: See TracChangeset for help on using the changeset viewer.