আমি কীভাবে আমার টেমপ্লেটে মাধ্যাকর্ষণ ফর্মগুলি থেকে ডেটা দেখাব? [বন্ধ]


21

মুখবন্ধ

আমি মাধ্যাকর্ষণ ফর্ম ইনস্টল করেছি, একটি ফর্ম তৈরি করেছি এবং ব্যবহারকারীরা আমার সাইটে ডেটা জমা দিচ্ছেন। আমি যা করতে চাই তা হ'ল ডেটা ব্যবহারকারীরা আমার পৃষ্ঠাগুলির একটিতে আমার সাইটে জমা দিচ্ছেন।

আমি জানি মহাকর্ষ ফর্ম ডিরেক্টরি প্লাগইন আছে। তবে এটি কেবল একটি নির্দিষ্ট ডেটা উপস্থাপনা দেয়।

প্রশ্ন

মহাকর্ষ আকারে এমন কিছু আছে যা এরকম কিছু করতে পারে? (সিউডো কোড) :

<?php gforms_get_field( $form_id, $entry_id, 'user_name_field' ); ?>


2
@ গুস্টটোস্ট আমাকে বিশ্বাস করুন আমি ডক্সকে পুরোপুরি ঝুঁকিয়েছি এবং কীভাবে এটি অর্জন করা যায় সে সম্পর্কে কোনও তথ্য নেই।
hitautodestruct

1
ভবিষ্যতের থেকে দ্রষ্টব্য: এখানে একটি প্লাগইন রয়েছে যা স্পষ্টভাবে ফ্রন্ট-এ গ্র্যাভিটি ফর্ম ডেটা প্রদর্শনের জন্য রয়েছে: গ্র্যাভিটিভিউ.কম
ডাল্টন

2
আমি বাজি ধরেছি যে আমি যদি এসও-তে এই প্রশ্নটি পোস্ট করি তবে তারা আমাকে এটি এখানে পোস্ট করতে বলবে :-) অন্য প্রশ্নটি নিয়ে ইতিমধ্যে এমন কিছু ঘটেছে যা ..
হিটটোডস্ট্রাক্ট

উত্তর:


25

আপনি দস্তাবেজগুলি দেখতে পারেন, তবে আপনি সম্ভবত আসল ডকুমেন্টেশন: উত্স কোডটি পড়ে শেষ করবেন।

আপনি যদি তা করেন তবে আপনি এটি পাবেন:

  • GFFormsModel::get_leads($form_id)একটি ফর্মের জন্য এন্ট্রিগুলির একটি তালিকা ফেরত দেয় (সম্ভবত আপনি এটি ইতিমধ্যে জানেন যে), যেখানে অ্যারের প্রতিটি আইটেম নিজেই একটি অ্যারে, একটি " এন্ট্রি অবজেক্ট "
  • GFFormsModel::get_form_meta($form_id)ফর্মটিতে ক্ষেত্র মেটা উপাদানগুলির (যেমন নাম, প্রকার, বিধি ইত্যাদি বর্ণনা করে) একটি তালিকা প্রদান করে, যেখানে অ্যারের প্রতিটি আইটেম একটি " ফিল্ড অবজেক্ট "

আপনার একবার এন্ট্রি অবজেক্ট হয়ে গেলে আপনি ক্ষেত্রের নম্বর দ্বারা ক্ষেত্রগুলিকে উপাদান হিসাবে অ্যাক্সেস করতে পারবেন। যদি আপনাকে নাম বা প্রকার অনুসারে কোনও ক্ষেত্র সন্ধান করতে হয় তবে আপনাকে ম্যাচটি পেতে ফর্মের ক্ষেত্রগুলির তালিকাটি নিয়ে পুনরাবৃত্তি করতে হবে এবং তারপরে ফিল্ড আইডি দিয়ে প্রবেশের ক্ষেত্রটি অ্যাক্সেস করতে হবে।

নোট: ক্ষেত্রের ধরণ নির্ধারণ করণীয় ক্ষেত্রের মেটা উপাদানটি পাস করে সবচেয়ে ভাল GFFormsModel::get_input_type($field)

সম্পাদনা: এও নোট করুন যে প্রতিটি ক্ষেত্রের প্রথম প্রথম 200 টি অক্ষর এন্ট্রি অবজেক্টে ফিরে আসে। আপনার যদি এমন ক্ষেত্রগুলি থাকে যা আরও তথ্য সঞ্চয় করে, আপনার কাছে এটি জিজ্ঞাসা করা দরকার, যেমন কল করে GFFormsModel::get_field_value_long($lead, $field_number, $form)


1
এফওয়াইআই, একটি গ্র্যাভিটি ফর্ম অ্যাডমিন একটি শর্টকোড পেস্টবিন . com/kHpaHQvi এর জন্য এই স্নিপেটও পোস্ট করেছে ।
হাইটাটোডস্ট্রাকচার

21

তাদের উত্তরের জন্য ওয়েবওয়ারকে ধন্যবাদ।

দ্রুত প্রারম্ভের জন্য যে কেউ খুঁজছেন তার জন্য এখানে কিছু অনুলিপি / পাস্তা। এটি একটি এন্ট্রি আইডি নেয় এবং সেখান থেকে নেতৃত্ব এবং ফর্মটি পুনরুদ্ধার করে। এই ক্ষেত্রে আমি মানটি পাস করার জন্য URL টি ব্যবহার করছি। যেমন somedomain.com?entry=123।

<?php 
    $lead_id = $_GET['entry'];
    $lead = RGFormsModel::get_lead( $lead_id ); 
    $form = GFFormsModel::get_form_meta( $lead['form_id'] ); 

    $values= array();

    foreach( $form['fields'] as $field ) {

        $values[$field['id']] = array(
            'id'    => $field['id'],
            'label' => $field['label'],
            'value' => $lead[ $field['id'] ],
        );
    }
?>
<pre><?php print_r($values); ?></pre>

1
আপনার কোডটি দুর্দান্ত তবে তারা তাদের আইডি বিভাজন করতে ব্যবহার Advanced fieldsকরছে addressবা first name/last nameযেহেতু তাদের মতো কাজ করবে না.
RPDeshies

চেকবক্সেও কাজ করবে না।
নুমেদিয়াব

এন্ট্রি পোস্টকারী ব্যবহারকারীর তথ্য কীভাবে পাবেন?
জন

1

gform_after_submissionকাস্টম পোস্ট টাইপের আপনার প্রয়োজনীয় সমস্ত কিছু লিখতে আপনি একটি হুক ব্যবহার করতে পারেন , যা "ক্ষেত্রের বাইরে" চালনা করা সহজ হতে পারে এবং এটি থেকে নিরাপদ থাকবেন, বলুন, কেউ একটি একক ক্ষেত্র মুছে ফেলবে এবং এর সাথে যুক্ত সমস্ত ডেটা বিলোপ করবে will ।

http://www.gravityhelp.com/documentation/page/Gform_after_submission

হুক ব্যবহার না করেও কাস্টম ফিল্ডগুলিতে লেখার বিষয়ে ইয়োস্টের বেশ ভাল লেখার ব্যবস্থা রয়েছে। http://yoast.com/gravity-forms-custom-post-types/

শুভকামনা!


1
এর মতো ডুপ্লিকেট করা ডেটাটি কিছুটা বাজে মনে হচ্ছে।
ফেলিক্স ইভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.