1

I'm to implement a theme in wordpress.

Is possible modify a output (html) of widget in wordpress?

For example, the "recent comments widget"?

2 Answers 2

1

I would copy the widget from the core as needed, put it in the theme or plugin, but you should also unregister the core widget you are replacing.

That can be done like this:

// unregister all default WP Widgets
function unregister_default_wp_widgets() {
    unregister_widget('WP_Widget_Pages');
    unregister_widget('WP_Widget_Calendar');
    unregister_widget('WP_Widget_Archives');
    unregister_widget('WP_Widget_Links');
    unregister_widget('WP_Widget_Meta');
    unregister_widget('WP_Widget_Search');
    unregister_widget('WP_Widget_Text');
    unregister_widget('WP_Widget_Categories');
    unregister_widget('WP_Widget_Recent_Posts');
    unregister_widget('WP_Widget_Recent_Comments');
    unregister_widget('WP_Widget_RSS');
    unregister_widget('WP_Widget_Tag_Cloud');
}
add_action('widgets_init', 'unregister_default_wp_widgets', 1);

Then register your new widget and you should be all set.


If you just need to change the aesthetics of a widget and not the functionality - you could try using Javascript to manipulate the elements as needed.

0

Yes, you can modify the output of the widget, but not by modifying core files. What I would do is, go into the wp-includes/default-widgets.php and copy the entire widget code and rewrite it as you need it. I would also then paste the following into your functions.php file. That way the WP default one doesn't show up in the admin. Also, make sure to use a different class name for the new widget.

wp_unregister_sidebar_widget( 'recent-posts' );

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.