Домой Wp-Recall WP-Recall: Пишем свое дополнение и кастомизация Свое дополнение wp-recall требуется помощь
65ответ(ов) в теме
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
31
11:35

Да вроде как отправляються

Вы не можете просматривать опубликованные ссылки
0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
32
12:26

Попробуйте php свой закомментировать из аменить на это:

add_action( 'wp_ajax_my_php_function', 'my_php_function' ); 
add_action( 'wp_ajax_nopriv_my_php_function', 'my_php_function' ); 
   
function my_php_function(){
    
		//Если поступили данные..
		if( isset($_POST['name'], $_POST['phone'])){
			
			echo "Все ок данные пришли. Имя: ".$_POST['name']."Телефон: ".$_POST['phone'];
	
			wp_die();
		
		}
	echo "Данные не поступили";
	
	wp_die();
}

0
Андрей CS
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
33
12:38

если данные на сервер отправляются но упорно возвращается ноль, значит php функция не была найдена, скорее всего не определена, где вы ее вообще размещаете?

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
34
12:41

Preci сказал(а)

Попробуйте php свой закомментировать из аменить на это:

add_action( 'wp_ajax_my_php_function', 'my_php_function' ); 
add_action( 'wp_ajax_nopriv_my_php_function', 'my_php_function' ); 
   
function my_php_function(){
    
		//Если поступили данные..
		if( isset($_POST['name'], $_POST['phone'])){
			
			echo "Все ок данные пришли. Имя: ".$_POST['name']."Телефон: ".$_POST['phone'];
	
			wp_die();
		
		}
	echo "Данные не поступили";
	
	wp_die();
}

Да ничего не изменилось, такое чувство как будто от этого файла ничего не зависит и ошибка где то на уровне хука, может не правильные данные поступают на обработку и обработчик wp просто не понимает что от него хотят вот и шлет в ответ 0

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
35
12:44

Андрей CS сказал(а)

если данные на сервер отправляются но упорно возвращается ноль, значит php функция не была найдена, скорее всего не определена, где вы ее вообще размещаете?

Вообще он в папке с дополнением лежит C:OpenServerdomainstest2.ruwp-contentpluginswp-recalladd-onquick order, но пробовал данный код размещять и в functions.php в кодексе вроде говоритя что можно в плагинах размещать или в functions.php

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
36
12:51

Вру сейчас разместил в functions.php и сработало в ответ пришло

Array
(
    [action] => my_php_function
    [name] => вапвапв
    [phone] => 4545645645
)

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
37
12:52

Это видимо в ответ на эту команду

print_r($_POST); 

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
38
12:54

Если код был в add-onquick orderindex.php и плагин quick order был активирован, то должно было работать и так

0
Андрей CS
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
39
12:58

доп видимо деактивирован

1
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
40
13:03

Preci сказал(а)

Если код был в add-onquick orderindex.php и плагин quick order был активирован, то должно было работать и так

Да естественно был активирован, вес код находиться в этом дополнении, если не активировать то и форма не будет выводиться, через functions.php срабатывает и возвращает отправленные данные этим кодом print_r($_POST); , но письмо не отправляется, может нужно использовать wp-mail и конечно хотелось бы понять как сделать что бы срабатывало из папки дополнения.

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
41
13:06

Вот код основного файла может в порядке подключения дело?

add_action('rcl_enqueue_scripts','rcl_custom_scripts',10);
function rcl_custom_scripts(){
    rcl_enqueue_style('quick_order',rcl_addon_url('style.css', __FILE__));
	rcl_enqueue_script( 'quick_order', rcl_addon_url('callback.js', __FILE__) );
}

add_filter('the_content','quick_order', 80);
function quick_order($content){

	$test = '
  <p id="callback">Заказать обратный звонок</p>
 
    <div id="callback_form">
         
        Имя: <input id="name">
        Телефон: <input id="phone">
        <p id="send">Заказать</p>
        <p id="close">Скрыть форму</p>
     
    </div>
  ';
	
   $out = $content . $test ;
   
if( get_post_type() == 'products' ) 
    return $out;

else 
    return $content;

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
42
13:09

Так вы верните в этот файл код который перенесли в functions.php иначе не понятно

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
43
13:10

Письма скриптами отправляются нормально, видимо в коде отправки нужно искать ошибку

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
44
13:12

Preci сказал(а)

Так вы верните в этот файл код который перенесли в functions.php иначе не понятно

Он там и лежит я его не убирал, из functions.php удаляю код и все снова 0 возвращает

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
45
13:13

Может его как то регистрировать надо?

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
46
13:14

Kirill Zzz сказал(а)

Preci сказал(а)

Так вы верните в этот файл код который перенесли в functions.php иначе не понятно

Он там и лежит я его не убирал, из functions.php удаляю код и все снова 0 возвращает

Ну так я то не вижу где он конкретно лежит, нужен весь index.php плагина полностью, а не отдельные функции

0
Андрей CS
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
47
13:17

название папки дополнения - "quick order"? т.е. два слова через пробел?

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
48
13:19

Это весь код который в index.php остальной код лежит в отельном файле в этой же папке, Я конечно думал что его может нужно вывести на страницу или не надо?

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
49
13:20

Андрей CS сказал(а)

название папки дополнения - "quick order"? т.е. два слова через пробел?

Так он говорит что сама форма работает, т.е. фильтр the_content срабатывает, значит скорее всего он экш аякса засунул внутрь функции quick_order, вот он и не отрабаывает

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
50
13:21

Андрей CS сказал(а)

название папки дополнения - "quick order"? т.е. два слова через пробел?

Да именно так через пробел, это недопустимо?

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
51
13:21

Kirill Zzz сказал(а)

Это весь код который в index.php остальной код лежит в отельном файле в этой же папке, Я конечно думал что его может нужно вывести на страницу или не надо?

Ну так плагин по умолчанию только index.php подключает, надо код обработки ajax в него же кидать, или файл в котором обработка ajax инклудить в index.php

1
Андрей CS
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
52
13:26

Kirill Zzz сказал(а)

Андрей CS сказал(а)

название папки дополнения - "quick order"? т.е. два слова через пробел?

Да именно так через пробел, это недопустимо?

хм, первый раз вижу, чтобы по своей воле создавали папки с пробелом, дефис поставьте что ли.
Ну если ничего не работает, то надо полный код смотреть.

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
53
13:28

Preci сказал(а)

Kirill Zzz сказал(а)

Это весь код который в index.php остальной код лежит в отельном файле в этой же папке, Я конечно думал что его может нужно вывести на страницу или не надо?

Ну так плагин по умолчанию только index.php подключает, надо код обработки ajax в него же кидать, или файл в котором обработка ajax инклудить в index.php

Инклюд стандартный ? я не нашел в апи recall функции для инклюда php ? для js css есть а для php вроде как нет

0
Андрей CS
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16928
54
13:29

блин, ну если инклюдить файлы не умеете, то зачем код распихивать по разным файлам?

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
55
13:29

Kirill Zzz сказал(а)

Preci сказал(а)

Kirill Zzz сказал(а)

Это весь код который в index.php остальной код лежит в отельном файле в этой же папке, Я конечно думал что его может нужно вывести на страницу или не надо?

Ну так плагин по умолчанию только index.php подключает, надо код обработки ajax в него же кидать, или файл в котором обработка ajax инклудить в index.php

Инклюд стандартный ? я не нашел в апи recall функции для инклюда php ? для js css есть а для php вроде как нет

Да стандартный php подойдет include 'file.php'; (если он не в под-папке, а в папке где и index.php)

А вообще как сказали выше не понятно зачем разбиваете на несколько файлов, там кода то 2 строчки, в этом смысла никакого нет.

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
56
13:33

Андрей CS сказал(а)

Kirill Zzz сказал(а)

Андрей CS сказал(а)

название папки дополнения - "quick order"? т.е. два слова через пробел?

Да именно так через пробел, это недопустимо?

хм, первый раз вижу, чтобы по своей воле создавали папки с пробелом, дефис поставьте что ли.
Ну если ничего не работает, то надо полный код смотреть.

Ну Андрей не вгоняйте меня в краску, да я начинающий в программировании, могу и нелепые косяки делать, спасибо что подсказали. Да я вроде весь код выложил, там больше ничего и нет.

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
57
13:35

Preci сказал(а)

Kirill Zzz сказал(а)

Preci сказал(а)

Kirill Zzz сказал(а)

Это весь код который в index.php остальной код лежит в отельном файле в этой же папке, Я конечно думал что его может нужно вывести на страницу или не надо?

Ну так плагин по умолчанию только index.php подключает, надо код обработки ajax в него же кидать, или файл в котором обработка ajax инклудить в index.php

Инклюд стандартный ? я не нашел в апи recall функции для инклюда php ? для js css есть а для php вроде как нет

Да стандартный php подойдет include 'file.php'; (если он не в под-папке, а в папке где и index.php)

А вообще как сказали выше не понятно зачем разбиваете на несколько файлов, там кода то 2 строчки, в этом смысла никакого нет.

Я просто не пойму его просто туда добавить или он должен на страницу подгружаться?

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
58
13:38

Ну да просто перенес код внутрь index.php и все отрабатывает теперь print_r($_POST);

0
Preci
не в сети 2 месяца
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1644
59
13:39

Кого добавить? Если в один файл то да, тупо весь код для ajax вставить в конце или в начале index.php

0
Kirill Zzz
не в сети 2 года
На сайте с 27.03.2015
Участник
Тем 23
Сообщения 134
60
13:44

Preci сказал(а)

Кого добавить? Если в один файл то да, тупо весь код для ajax вставить в конце или в начале index.php

Да уже перенес и запрос теперь возвращает на команду print_r($_POST);

Array
(
    [action] => my_php_function
    [name] => апрапр
    [phone] => 567567
)
0

0
Тема закрыта. Публикация новых сообщений запрещена.