Elimină <div class="textwidget"> din widget-ul de text
OK, încercarea de a elimina cu jQuery este contraintuitivă.
Modificarea acestuia prin intermediul output buffering este ineficientă.
Și nu ar trebui să edităm codul actual al widget-ului, deoarece acesta se va întoarce la starea inițială la următoarea actualizare WordPress.
Aș sugera fie crearea propriului tău widget de text, fie simpla extindere și modificare a widget-ului existent WordPress după cum urmează (introduceți următorul cod în fișierul functions.php):
add_action( 'widgets_init', 'register_my_widgets' );
function register_my_widgets() {
...
register_widget( 'My_Text_Widget' );
}
class My_Text_Widget extends WP_Widget_Text {
function widget( $args, $instance ) {
extract($args);
$title = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance, $this->id_base );
$text = apply_filters( 'widget_text', empty( $instance['text'] ) ? '' : $instance['text'], $instance );
echo $before_widget;
if ( !empty( $title ) ) { echo $before_title . $title . $after_title; } ?>
<?php echo !empty( $instance['filter'] ) ? wpautop( $text ) : $text; ?>
<?php
echo $after_widget;
}
}

Conform comentariului, în acest caz este probabil mai bine să eliminăm sau să înlocuim numele clasei folosind jQuery decât o funcție PHP, deoarece acea clasă este oricum hardcodată.
Pentru a o elimina:
jQuery('.textwidget').remove();
Pentru a seta CSS-ul pentru a o ascunde:
jQuery('.textwidget').css('display', 'none');
Pentru a schimba numele clasei:
jQuery('.textwidget').attr('class', 'newName');

Puteți folosi bufferizarea ieșirii (http://php.net/manual/ro/book.outcontrol.php) pentru a obține întreaga pagină generată într-o variabilă și a elimina div-ul problematic înainte de a o afișa.
Dar pare exagerat de complicat pentru acest caz. Puteți pur și simplu să copiați tot codul widget-ului și să creați un widget nou (într-un plugin sau în functions.php) fără acel div hardcodat. Nu este chiar atât de mult cod.
De asemenea, există vreun motiv pentru a elimina acel div care nu poate fi rezolvat prin CSS?
