2010-12-07 13 views
7

Я нахожусь в реальной потере этой проблемы. Я только что создал плагин, и протоколировать действия в плагине (так как я не могу видеть вывод обработки), я добавил крюк INIT как так:Wordpress: почему крюк инициализации вызывается несколько раз?

add_action('init', 'test_hook'); 

function test_hook() 
{ 

    global $wpdb; 
    $message = "Some informational message here"; 
    $wpdb->insert("pq_logs", array("message"=>$message), array("%s")); 

} 

Что привезет я вставляю, что вместо того, чтобы получать одну строку ввода на каждую страницу, я получаю от 1 до 8 записей строки того же журнала, с разными отметками времени. Количество введенных записей противоречиво и кажется совершенно случайным (иногда я думаю, что это зависит от текущих погодных условий или индекса фондовой биржи).

Я выполнил стандартные проверки, отключил все другие плагины, но безуспешно. Я искал код для чего-то, что делает do_action('init'), но я только указал один звонок по телефону wp-settings.php.

Вы также столкнулись? Что ты сделал?

ответ

16

У вас есть какие-либо ссылки на сайте (изображения, скрипты, таблицы стилей и т. Д.), Которые являются 404'ing? Если это так, на странице 404 по умолчанию будет отображаться страница «Вы ищете что-то, чего не здесь» в теме сайта по умолчанию, так что вы в конечном итоге получите вызов init, вызванный один раз для запроса начальной страницы, плюс один раз для каждого плохая ссылка.

Двойной чехол с Firebug и проверьте, не вызвано ли что-либо неправильно.

+0

Хорошо, я пойду проверю и посмотрим, все ли. – 2010-12-09 02:47:26

1

После ответа Роба Уильямса я прочитал этот пост:

http://www.tastyplacement.com/how-to-remove-link-relprev-and-link-relnext-from-wordpress-head

И понял, что ссылка метки с отн = „следующий“ и отн = „пред“ был запущен мой инициализации крюк для второй раз на моем веб-сайте WordPress 3.5.1. Эти теги можно удалить, добавив это в файл functions.php темы:

remove_filter('wp_head','adjacent_posts_rel_link_wp_head',10); 
Смежные вопросы