Remove_action ile yardıma ihtiyacı ()

4 Cevap php

I <STYLE> Benim <HEAD> olarak yerleşik Son Yorumlar Widget koyar etiketlemek gömülü çirkin çıkarmak için çalışıyorum, ama ben sözdizimi doğru almak gibi olamaz. Başlangıçta aramalar

add_action( 'wp_head', array(&$this, 'recent_comments_style') );

({[) 0 (]} olarak) eklemek için, ve ben onu geri almak için çalışıyorum.

Ben böyle bir şey olması gerektiğini düşünüyorum:

remove_action('wp_head', 'WP_Widget_Recent_Comments::recent_comments_style');

ama ben denedim tüm varyasyonları ile ben yine de doğru alınamıyor. Herkes bunu başarmak için nasıl biliyor mu?

Possibly Helpful:

4 Cevap

Bu doğru kod:

add_action('wp_head', 'remove_widget_action', 1);
function remove_widget_action() {
    global $wp_widget_factory;

    remove_action( 'wp_head', array($wp_widget_factory->widgets['WP_Widget_Recent_Comments'], 'recent_comments_style') );
}

Ancak, çünkü this bug içinde çalışmıyor.

remove_action('wp_head', array(&$this, 'recent_comments_style'));

Wordpress bunu kaldırmak veya eklemek ister benzersiz kimlikler oluşturmak için aynı işlevleri kullanır, çünkü bu çalışması gerekir.

// remove old recentcomments inline style

add_action( 'widgets_init', 'my_remove_recent_comments_style' );
function my_remove_recent_comments_style() {
    global $wp_widget_factory;
    remove_action( 'wp_head', array( $wp_widget_factory->widgets['WP_Widget_Recent_Comments'], 'recent_comments_style'  ) );
}

test edilmiştir. eserler

Şimdi sadece:

// Remove Recent Comments Default Style
add_filter( 'show_recent_comments_widget_style', '__return_false' ); // Temp hack #14876