Intereting Posts
Пользовательский стиль меню Показать все термины в пользовательской таксономии со всеми дочерними терминами, завернутыми в ul WordPress wp-admin / network / plugin-install Показать категорию и ссылку тега как подменю под подменю пользовательского типа сообщения Довольно URL-адреса и переписать Woocommerce – Как получить продукты, которые продаются от 20% до 40%? Предоставить пользователям доступ к администратору для одного сообщения или настроить сеть WP? Does is_user_logged_in () блокировать поисковые боты? Как извлечь переменные из функции «add_shortcode»? Пользовательский тип сообщения вызывает php-ошибку в версии php 5.2.17 Можно ли настроить параметры настройки темы из wp.customize с помощью jquery? $ GLOBALS массив для wordpress Как удалить стили аудиоплеера, добавленные mediaelement.js JavaScript? Панель администратора ниже нижнего колонтитула в виде незакрепленного списка ссылок Зачем нужны поля адреса пользователя

Обнаружение, если плагин был включен в определенную страницу

Я разрабатываю тему, которая включает плагины. Один из этих плагинов – это контактная форма. И этот плагин имеет асоциальный код для проверки входных данных. Потому что я не знаю, на каких страницах была добавлена ​​контактная форма … Я хочу найти правильный способ определить, включен ли плагин на текущей странице.

Пример: page.php

<?php get_header(); ?> <?php if( is contact form included ) : ?> //include php form valdiation... <?php endif; ?> //page content code ... <?php get_footer(); ?> 

Примечание . Я не хочу проверять, активирован ли плагин. Плагин включен в тему, поэтому он активен. Я хочу определить, используется ли текущее значение, например, в page.php. Эта проблема должна включать проверку формы php только в том случае, если страница содержит контактную форму.

Любое предложение или совет приветствуются 🙂

Благодарю.

Если я правильно понял, вы хотите включить php-файл, который проверяет ввод формы, но только тогда, когда вам нужно действительно что-то подтвердить?

В этом случае вам не нужно проверять, существует ли контактная форма на какой-либо странице – вам просто нужно проверить, были ли данные формы размещены. Все, что вам нужно сделать, это добавить скрытое поле в форму с уникальным идентификатором:

  <input type="hidden" name="my_plugin_contact_form" value="true"/> 

Это просто, чтобы мы могли узнать, когда были опубликованы данные из вашей плагиновой формы:

 <?php if(!empty($_REQUEST['my_plugin_contact_form'])) : ?> //perform validation <?php endif; ?> 

Я заметил, что вы хотите включить проверку проверки внутри шаблона страницы. Вместо этого я рекомендовал бы, чтобы вы завернули проверку внутри функции и подключили ее к чему-то вроде init .

Последнее замечание: это не замена для использования nonces. Вышеуказанная проверка заключается только в том, что мы знаем, что требуется проверка правильности – вы все равно должны проверить:

  1. Nonces: данные пришли из нашей формы?
  2. Разрешения: имеет ли пользователь разрешение на отправку этих данных

No.2, вероятно, менее уместен здесь.

Вы можете использовать get shortcode regex если ваш плагин использует короткие коды, но, честно говоря, это хакерское решение, обнаружение должно быть в самом плагине или с помощью предложения Стивена Харриса.