Prefácio
Instalei os formulários de gravidade, criei um formulário e os usuários estão enviando dados para o meu site. O que eu quero fazer é mostrar os dados que os usuários estão enviando para o meu site em uma das minhas páginas.
Eu sei que tem o plugin Gravity Forms Directory . Mas isso fornece apenas uma apresentação de dados fixa.
Questão
Existe algo nas formas de gravidade que possa fazer algo assim? (pseudo código) :
<?php gforms_get_field( $form_id, $entry_id, 'user_name_field' ); ?>
plugins
database
plugin-gravity-forms
hitautodestruct
fonte
fonte
Respostas:
Você pode olhar para os documentos, mas você provavelmente vai acabar lendo o verdadeiro documentação : o código-fonte.
Se fizer isso, você encontrará que:
GFFormsModel::get_leads($form_id)
retorna uma lista de entradas para um formulário (talvez você já o saiba), em que cada item da matriz é uma matriz, um " objeto de Entrada "GFFormsModel::get_form_meta($form_id)
retorna uma lista de meta-elementos de campo (isto é, descreve nome, tipo, regras etc.) no formulário, onde cada item na matriz é um " objeto de campo "Depois de ter um objeto Entry, você pode acessar os campos como elementos, pelo número do campo. Se você precisar encontrar um campo por nome ou tipo, precisará percorrer a lista de campos no formulário para obter uma correspondência e acessar o campo da entrada pelo ID do campo.
NB: é melhor determinar o tipo de um campo passando o elemento elemento do campo para
GFFormsModel::get_input_type($field)
Editar: observe também que apenas os 200 primeiros caracteres de cada campo são retornados no objeto Entry. Se você possui campos que armazenam mais informações, precisará solicitá-las, por exemplo, ligando
GFFormsModel::get_field_value_long($lead, $field_number, $form)
.fonte
Obrigado a webaware por sua resposta.
Aqui estão algumas cópias / massas para quem procura um início rápido. Isso pega um ID de entrada e recupera o lead e o formulário a partir dele. Nesse caso, estou usando o URL para passar o valor. por exemplo, somedomain.com?entry=123.
fonte
Advanced fields
como oaddress
ou afirst name/last name
uma vez que eles estão usando.
para dividir sua IDVocê poderia usar um
gform_after_submission
gancho para escrever tudo o que precisa em um tipo de postagem personalizado, que pode ser mais fácil de manipular "fora do campo" e estará protegido contra, por exemplo, alguém excluindo um único campo e obliterando todos os dados associados a ele .http://www.gravityhelp.com/documentation/page/Gform_after_submission
O Yoast possui um excelente registro ao gravar em campos personalizados, sem usar o gancho. http://yoast.com/gravity-forms-custom-post-types/
Boa sorte!
fonte