Получение 2 URL-адресов из гравитационных форм и размещение их отдельно в 2 разных столбца

Я делаю небольшой проект, где я получу информацию из плагина гравитационных форм в WordPress, а затем разобрать эту информацию в листах Google.
Пока я могу сделать это без проблем. Проблема возникает, когда одно из полей является полем загрузки файла (максимальное количество загружаемых файлов — 2). Ссылки составляются следующим образом, например: «www.example.org/wp-content-uploads/gravityforms/image1.jpg»,»www.example.org/wp-content-uploads/gravityforms/image1.jpg».

То, что я хотел бы сделать это
! (http://imgur.com/a/BUXvn)!

Где он отобразит полную строку в столбце источника доктора (столбец 3), а затем разделит ее на 2, используя запятую в качестве разделителя, и покажет ее в формате доктор image1 и доктор image2.

Вот код, который я использовал для анализа в php.

add_action('gform_after_submission_1', 'add_to_google_spreadsheet', 10,        2);
function add_to_google_spreadsheet($entry, $form) {
// This is the web app URL of your Google Script create in previous step
$post_url =  'https://script.google.com/macros/s/AKfycbwFTe3H0w8bp_2yviORAGhNZzIwvmKmdaCHf KEOdORwjO6pJPQ/exec';
// Put all the form fields (names and values) in this array
$doctor=('doctor source => rgar($entry,3)');
$doctorimage= explode(",",$doctor);
$body = array('first name' => rgar($entry, '1'), 'last name' =>  rgar($entry, '2'),'doctor source' => rgar($entry, '3'),'doctor image1' =>  rgar($doctorimage[0], '4'),'doctor image2' => rgar($doctorimage[1], '5'),);
// Send the data to Google Spreadsheet via HTTP POST request
$request = new WP_Http();
$response = $request->request($post_url, array('method' => 'POST',   'sslverify' => false, 'body' => $body));
}

rgar: использование гравитационных форм
Возвращает значение в массиве
использование
rgar ($ массив, $ имя);

Для тех, кто хочет сделать то же самое, вот руководство, которое я использовал: https://ctrlq.org/code/20047-gravity-forms-to-google-spreadsheet

1

Решение

Я считаю, что есть некоторые незначительные проблемы форматирования / логики, чтобы разобраться.

Вот моя лучшая попытка на данный момент, учитывая информацию, которую вы предоставили. Есть несколько вопросов, которые могут изменить ответ:

// Adjust this line to simply GET the field for the doctor images
$doctor =rgar( $entry, 3 );
// Now, given the revision above, this line should properly explode the images
$doctorimage = explode( ',', $doctor );
// Adjust the below to put the images in (no need for rgar for them here)
$body = array(
'first name'    => rgar( $entry, '1' ),
'last name'     => rgar( $entry, '2' ),
'doctor source' => rgar( $entry, '3' ),
'doctor image1' => $doctorimage[0],
'doctor image2' => $doctorimage[1]
);
// Send the data to Google Spreadsheet via HTTP POST request
//....

Вопросы, которые могут иметь значение:
1. Что такое поле 3 в вашей форме? Исходя из вашего кода, это два URL для изображений — это правильно?
2. Есть ли в вашей форме поле 4 (и поле 5)? Что они содержат?
3. Какое поле в вашей форме должно быть «источником врача»?

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]