Поддержка Проблемы и решения Откуда берется страница ошибки при вводе комментария?

  • Добрый день!

    Пользователь (не залогиненный) хочет оставить коммент, но пропускает поле «Имя» (или «Мыло») и жмет «Отправить». Ему, разумеется, «Пожалуйста, введите…» — на отдельной странице. А спрашивается в задаче — какой из .php отвечает за генерацию вот этой самой отдельной страницы с описанием ошибочного ввода?

    Спасибо!

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Функция _default_wp_die_handler() определена в wp-includes/functions.php, однако надеюсь, что вы не будете править файлы ядра 🙂 Тем более что она используется и для всех остальных сообщений об ошибках.

    Корректный способ создать шаблон для сообщения о незаполненных полях — добавить подобный фрагмент в functions.php активной темы:
    http://pastebin.com/qu6CvELY

    В этом случае оформление уже можно менять по-своему. В качестве примера я добавил туда ссылку «Назад».

    Отличный ответ, то что требовалось — СПАСИБО!!

    Небольшое уточнение: в приведенном выше коде строка
    add_filter('wp_die_handler', 'add_comment_post_wp_die_handler');
    отрубает дефолтный «die-обработчик» (тот что ‘_default_wp_die_handler’) и подменяет его нашим? Или дополняет дефолтный нашим, так что оба они работают в паре?

    По идее, как объяснена работа ф-ии add_filter() верен второй посыл — дополнение. Но зачем выполнять лишнюю работу? Если я уж указал движку что беру на себя обработку ошибок — зачем дергать ставший(с этого момента) не нужным дефолтовый обработчик?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Или дополняет дефолтный нашим, так что оба они работают в паре?

    Заменяет нашим, но только для нужной страницы.

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Откуда берется страница ошибки при вводе комментария?» закрыта для новых ответов.