Плагин для wordpress - обработчик формы

cajka

Новичок
Пишу свой плагин для wordpress-а и возникла одна проблема, как именно обратится к обработчику формы.
Попробую по порядку рассказать. Есть код, который вставляет на страницу сайта форму для отправки данных, есть обработчик, который должен их принять, обработать и записать в базу данных. Но как все это связать я не знаю, вернее не выходит wordpress-е это сделать, не удаётся обратится правильно к обработчику.

Вот код плагина:

PHP:
<?php
function dl_add_form(){
	$form = "<form action='".get_permalink()."' enctype='multipart/form-data' method='post'>
			<input type=hidden value=process name='wpcf_stage'/>
		    <p>Ваше имя:<br/>
		       <input name='author_name' type='text'/>
		    </p><p>Текст рецепта:<br/>
		       <textarea name='text_recipe' cols='45' rows='10'></textarea>
		    </p><p>Ваш E-mail:<br/>
		       <input name='e_mail' type='text'/>
		    </p><p>Ваш номер кошелька <br/>
		       <input name='num_webmony' type='text'/>
		    </p><p>
		       <input name='ADD_RECIPE' type='submit' value='Отправить'/>
		    </p>
		   </form>";
	return $form;
}

function dl_print_form($content){
	if (isset($_POST["ADD_RECIPE"])){
			global $wpdb;
			$dl_recipes = $wpdb->prefix.dl_recipes;

			$msg_text = "";
			$author_name = (isset($_POST["author_name"])) ? data_type($_POST["author_name"], "string") : "";
			$text_recipe = (isset($_POST["text_recipe"])) ? data_type($_POST["text_recipe"], "string") : "";
			$e_mail =      (isset($_POST["e_mail"]))      ? data_type($_POST["e_mail"], "string")      : "";
			$num_webmony = (isset($_POST["num_webmony"])) ? data_type($_POST["num_webmony"], "string") : "";
			
			if ($author_name or $text_recipe or $e_mail or $num_webmony)
				$msg_text .= "<p>Вы заполнили не все поля.</p>";
				
			if (!preg_match("/(^R[0-9]$)|(^Z[0-9]$)/i", $num_webmony) )
				$msg_text .= "<p>Номер кошелька не верный.</p>";
				
			if (!$msg_text){
				$wpdb->insert(
					$dl_recipes,  
					array( 'author_name' => $author_name, 'text_recipe' => $text_recipe, 'photo_name' => $photo_name, 'e_mail' => $e_mail, 'num_webmony' => $num_webmony),  
					array( '%s', '%s', '%s', '%s', '%s'));
				$msg_text = "<p>Рецепт отправлен.</p>";
			}
		
	}

	$form = dl_add_form();
	$content = str_replace("<!--forms_print-->", $form, $content);
	return $content;
}


add_action('admin_menu','dl_add__admin_page');
add_filter('the_content', 'dl_print_form');
?>
Функция data_type();, это пользовательская функция, которая просто обрабатывает данные и приводи их к нужному типу.

Главная проблема, как обратится к обработчику.
Использовала функцию wordpress get_permalink();, которая возвращает адрес поста (страницы), но не работает, данные не отправляются, выдает ошибки.

Ошибки:
К сожалению, по вашему запросу ничего не найдено.

Warning: include(T:\home\virtual\worpress/wp-content/themes/car-theme/searchform.php) [function.include]: failed to open stream: No such file or directory in T:\home\virtual\worpress\wp-content\themes\car-theme\index.php on line 86

Warning: include() [function.include]: Failed opening 'T:\home\virtual\worpress/wp-content/themes/car-theme/searchform.php' for inclusion (include_path='.;/usr/local/PHP/PEAR;/usr/local/PHP/Smarty') in T:\home\virtual\worpress\wp-content\themes\car-theme\index.php on line 86
 

thunder-spb

Новичок
тык ошибка говорит. что не может найти файл
PHP:
T:\home\virtual\worpress/wp-content/themes/car-theme/searchform.php
....
 
Сверху