当您将文本小部件添加到Wordpress中的侧栏时,小部件包含以下代码
<div class="textwidget">
如何在不编辑核心的情况下删除此内容?仅供参考-我认为这一行位于此处:wp包含/默认小部件。php(第383行)
当您将文本小部件添加到Wordpress中的侧栏时,小部件包含以下代码
<div class="textwidget">
如何在不编辑核心的情况下删除此内容?仅供参考-我认为这一行位于此处:wp包含/默认小部件。php(第383行)
好的,尝试用jQuery删除是违反直觉的。
通过输出缓冲修改它效率很低。
我们不应该编辑实际的小部件代码本身,因为这将在下次更新WordPress时恢复。
我建议您创建自己的文本小部件,或者简单地扩展和修改现有的WordPress小部件,如下所示(将以下代码放入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;
}
}
如果您希望删除实际的div,并对其应用textwidget类,但不删除其内容,那么这是一个使用jQuery的简单方法:
$(\'.textwidget\').replaceWith($(\'.textwidget\').contents());
根据注释,在这种情况下,最好使用jQuery删除或替换类名,然后使用php函数,因为该类无论如何都是硬编码的。
删除它。
jQuery(\'.textwidget\').remove();
设置css以隐藏它。jQuery(\'.textwidget\').css(\'display\', \'none\');
更改类名jQuery(\'.textwidget\').attr(\'class\', \'newName\');
您可以使用输出缓冲(http://php.net/manual/es/book.outcontrol.php)在一个变量中获取整个生成的页面,并在回显之前删除有问题的页面。
但这个案子似乎过于复杂了。您只需复制所有小部件代码并创建一个新的小部件(在插件或functions.php中),而无需硬编码div。它实际上没有那么多代码。
还有,有什么理由删除css中无法解决的div?
编辑文件:/wp包括/widgets/class wp widget文本。php查找、删除:<div class="textwidget">
和</div>
Preamble<我试图确保以前没有人问过这个问题。我刚开始使用StackExchange,所以我可能没有这么做。我不介意责备;厚皮肤,我学得很快:)THE PROBLEM我编写了一个函数并将其放置在主题函数中。phpfunction serverConnect() { $serverAccess = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); if (!$serverAccess) { die(\"