2010-06-20 2 views
4

Я использовал функцию remove_action в Wordpress, прежде чем удалить мусор из впрыскивается wp_head но мне кажется, что с версии 3.0 некоторые теги не удаляются, как показано ниже:wp_head remove_action не работает в WP3.0

remove_action('wp_head', 'parent_post_rel_link', 10, 0); 

Это должно удалить тег prev prev, но это не так. Кто-нибудь знает причину?

+3

Каталога 'WP-включает/по умолчанию фильтров .php' из строки '181', чтобы увидеть все действия по умолчанию, прикрепленные к' wp_head' - это может быть 'start_post_rel_link'? – TheDeadMedic

+0

Спасибо за указатель! Я нашел исправление, см. Ниже. – UXTE

ответ

10

Благодаря TheDeadMedic я нашел решение в «wp-includes/default-filters.php». Далее удаляет следующую и ПРЕД ссылку из wp_head:

remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0); 

Это полный скрипт для удаления всех «ненужных» мета-тегов из <head>:

//remove_action('wp_head',    'wp_enqueue_scripts',   1 ); 
remove_action('wp_head',    'feed_links',     2 ); 
remove_action('wp_head',    'feed_links_extra',    3 ); 
remove_action('wp_head',    'rsd_link'       ); 
remove_action('wp_head',    'wlwmanifest_link'     ); 
remove_action('wp_head',    'index_rel_link'      ); 
remove_action('wp_head',    'parent_post_rel_link',   10, 0); 
remove_action('wp_head',    'start_post_rel_link',   10, 0); 
remove_action('wp_head',    'adjacent_posts_rel_link_wp_head', 10, 0); 
remove_action('wp_head',    'locale_stylesheet'     ); 
remove_action('publish_future_post', 'check_and_publish_future_post', 10, 1); 
//remove_action('wp_head',    'noindex',      1 ); 
remove_action('wp_head',    'wp_print_styles',    8 ); 
remove_action('wp_head',    'wp_print_head_scripts',   9 ); 
remove_action('wp_head',    'wp_generator'      ); 
//remove_action('wp_head',    'rel_canonical'      ); 
remove_action('wp_footer',   'wp_print_footer_scripts'    ); 
remove_action('wp_head',    'wp_shortlink_wp_head',   10, 0); 
remove_action('template_redirect', 'wp_shortlink_header',   11, 0); 

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')); 
} 
+1

У вас есть ссылка на все, что есть в wp_head? «лишний» немного зловещий. Кроме того, к какой версии Wordpress это относится? – LeRoy

Смежные вопросы