Cómo mostrar el widget de publicaciones recientes en WordPress


/ *

Nombre del complemento: widget de publicaciones recientes extendido

Descripción: inserte una descripción con la ayuda del escritor de contenido.

Versión: 1.X

Autor: Widget de publicaciones recientes de WordPress

* /

clase RecentPostsWithExcerpts extiende WP_Widget {

función __construir() {

$ widget_ops = formación('nombre de la clase' => 'reciente_con_excerpt', 'descripción' => __( 'Tus publicaciones más recientes, con extractos opcionales', 'Recent_posts_with_excerpts') );

padre::__construir('RecentPostsWithExcerpts', __('Publicaciones recientes con extractos', 'Recent_posts_with_excerpts'), $ widget_ops);

}

función widget( $ args, $ instancia ) {

global $ before_widget,$ intance;

extraer( $ args );

$ título = aplicar_filtros('widget_title', $ instancia['title']);

eco $ before_widget,$ título;

$ ul_classes = 'Recent_posts_with_excerpts';

$ ul_classes = aplicar_filtros('Recent_posts_with_excerpts_list_classes', $ ul_classes);

Si ( !vacío( $ ul_classes ) )

$ ul_classes = 'clase = "'.$ ul_classes.'"';

$ li_classes = '';

$ li_classes = aplicar_filtros('Recent_posts_with_excerpts_item_classes', $ li_classes);

Si ( !vacío( $ li_classes ) )

$ li_classes = 'clase = "'.$ li_classes.'"';

$ h2_classes = 'Recent_posts_with_excerpts';

$ h2_classes = aplicar_filtros('Recent_posts_with_excerpts_heading_classes', $ h2_classes);

Si ( !vacío( $ h2_classes ) )

$ h2_classes = 'clase = "'.$ h2_classes.'"';

do_action('Recent_posts_with_excerpts_begin');

eco '.$ ul_classes.'>';

// recuperar las últimas n publicaciones del blog

$ q = formación('publicaciones por página' => $ instancia['numposts']);

Si (!vacío($ instancia['tag']))

$ q['tag'] = $ instancia['tag'];

$ q = aplicar_filtros('Recent_posts_with_excerpts_query', $ q, $ intance);

$ rpwe = nuevo wp_query($ q);

// el lazo

Si ($ rpwe->have_posts()) :

mientras ($ rpwe->have_posts()) : $ rpwe->el cargo();

eco '.$ li_classes.'>';

eco '.$ h2_classes.'> .get_permalink().'">'.get_the_title().'

';

Si (!vacío($ fecha))

eco '

'.get_the_time($ fecha).'

';

{ // muestra el extracto

?>

<blockquote>

Si (function_exists('the_excerpt_reloaded'))

the_excerpt_reloaded($ instancia['words'], $ instancia['tags'], 'contenido', FALSO, '', '', '1', '');

más

el extracto();

Si (!vacío($ instancia['more_text'])) { ?><pags clase="alinear a la derecha"><pequeña><un href=" the_permalink(); ?>"> eco $ instancia['more_text']; } ?></un></pequeña></pags>

</blockquote>

}?></li>

terminar mientras; terminara si; ?>

</ul>

do_action('Recent_posts_with_excerpts_end');

wp_reset_query();

}

función actualizar( $ nueva_instancia, $ old_instance ) {

$ instancia = $ old_instance;

$ instancia['title'] = sanitize_text_field($ nueva_instancia['title']);

$ instancia['numposts'] = intval($ nueva_instancia['numposts']);

$ instancia['more_text'] = sanitize_text_field($ nueva_instancia['more_text']);

$ instancia['date'] = sanitize_text_field($ nueva_instancia['date']);

$ instancia['words'] = intval($ nueva_instancia['words']);

$ instancia['tags'] = $ nueva_instancia['tags'];

$ instancia['tag'] = sanitize_text_field($ nueva_instancia['tag']);

regreso $ instancia;

}

función formar( $ instancia ) {

Si (get_option('show_on_front') == 'página')

$ enlace = get_permalink(get_option('page_for_posts'));

más

$ enlace = home_url();

// Valores predeterminados

$ instancia = wp_parse_args( (formación) $ instancia, formación(

'título' => __('Mensajes recientes', 'Recent_posts_with_excerpts'),

'numposts' => 5,

'numexcerpts' => 5,

'fecha' => get_option('formato de fecha'),

'more_text' => __('Lee mas', 'Recent_posts_with_excerpts'),

'palabras' => '25',

'etiqueta' => '',

));

?>

<pags><etiqueta para=" eco $ esto->get_field_id('título'); ?>"> _mi('Título:', 'Recent_posts_with_excerpts'); ?></etiqueta>

<entrada clase="grasa ancha" carné de identidad=" eco $ esto->get_field_id('título'); ?>" nombre=" eco $ esto->get_field_name('título'); ?>" tipo="texto" valor=" eco $ instancia['title']; ?>" /></pags>

<pags><etiqueta para=" eco $ esto->get_field_id('numposts'); ?>"> _mi('Número de publicaciones para mostrar:', 'Recent_posts_with_excerpts'); ?></etiqueta>

<entrada clase="grasa ancha" carné de identidad=" eco $ esto->get_field_id('numposts'); ?>" nombre=" eco $ esto->get_field_name('numposts'); ?>" tipo="texto" valor=" eco $ instancia['numposts']; ?>" /></pags>

<pags>

<etiqueta para=" eco $ esto->get_field_id('more_text'); ?>"> _mi('Texto del vínculo "Más":', 'Recent_posts_with_excerpts'); ?></etiqueta>

<entrada clase="grasa ancha" carné de identidad=" eco $ esto->get_field_id('more_text'); ?>" nombre=" eco $ esto->get_field_name('more_text'); ?>" tipo="texto" valor=" eco $ instancia['more_text']; ?>" />

<br />

</pags>

Si (function_exists('the_excerpt_reloaded')) { ?>

<pags>

<etiqueta para=" eco $ esto->get_field_id('palabras'); ?>"> _mi('¿Limitar el extracto a cuántas palabras?', 'Recent_posts_with_excerpts'); ?></etiqueta>

<entrada clase="grasa ancha" carné de identidad=" eco $ esto->get_field_id('palabras'); ?>" nombre=" eco $ esto->get_field_name('palabras'); ?>" tipo="texto" valor=" eco $ instancia['words']; ?>" />

</pags>

<pags>

<etiqueta para=" eco $ esto->get_field_id('etiquetas'); ?>"> _mi('Etiquetas HTML permitidas:', 'Recent_posts_with_excerpts'); ?></etiqueta>

<entrada clase="grasa ancha" carné de identidad=" eco $ esto->get_field_id('etiquetas'); ?>" nombre=" eco $ esto->get_field_name('etiquetas'); ?>" tipo="texto" valor=" eco htmlspecialchars($ instancia['tags'], ENT_QUOTES); ?>" />

<br /><pequeña>

printf( __('Por ejemplo:% s', 'Recent_posts_with_excerpts'));

?>

</pequeña></pags>

} ?>

<?php

}

}

función Recent_posts_with_excerpts_init() {

register_widget('RecentPostsWithExcerpts');

}

add_action('widgets_init', 'Recent_posts_with_excerpts_init');

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Go up