function custom_form_node_form_alter(&$form, &$form_state, $form_id) {
if ($form['#node']->type == 'custom') {
$form['actions']['submit']['#value'] = t('Add Entry');
$form['field_custom_email']['und'][0]['value']['#element_validate'] = array('_custom_form_validate_email');
$form['#submit'][] = 'custom_node_submit';
}
}
function custom_node_submit($form, &$form_state) {
$form_state['redirect'] = 'choose/your/path';
}
ফর্মটি জমা দেওয়ার জন্য ক্লিক করা বোতামটি থেকে কোডটি ফর্মটি স্বতন্ত্রভাবে পুনঃনির্দেশ করে। আপনি যদি কোনও নির্দিষ্ট জমা দেওয়ার বোতামটি ক্লিক করা হয় কেবল তখনই কোনও ফর্ম পুনর্নির্দেশ করতে চান, তবে আপনার নিম্নলিখিত কোডটি ব্যবহার করা উচিত।
function custom_form_node_form_alter(&$form, &$form_state, $form_id) {
if ($form['#node']->type == 'custom') {
$form['actions']['submit']['#value'] = t('Add Entry');
$form['field_custom_email']['und'][0]['value']['#element_validate'] = array('_custom_form_validate_email');
$form['actions']['submit']['#submit'][] = 'custom_node_submit';
}
}
function custom_node_submit($form, &$form_state) {
$form_state['redirect'] = 'choose/your/path';
}
- ফর্ম আইডিতে হাইফেন নেই। ফর্ম আইডি হ'ল পিএইচপি ফাংশনটির নাম যা ফর্মটি জেনারেট করে (ওরফে ফর্ম নির্মাতা) এবং পিএইচপি ফাংশনটির নামে হাইফেন থাকতে পারে না।
- ফর্ম আইডি হুক_ফর্ম_ল্টার () , হুক_ফর্ম_বিএএসএফএএমএম_আইডি_এল্টার () এবং হুক_ফর্ম_এফএআরএম_আইডি_এলটার () এর প্রয়োগে পাস করা হয়েছে ।
hook_form_FORM_ID_alter()
এটি সত্যিকারের প্রয়োজন নেই, যেমন এটি একটি নির্দিষ্ট ফর্মের জন্য বলা হয়, অন্য দুটি হুকের একাধিক ফর্মের জন্য অনুরোধ করা হয়।
- প্রথম ফাংশন হুক_ফর্ম_বিএএসএফআরএম_আইডি_এলটার () প্রয়োগকরণ ; এই ক্ষেত্রে, বেস ফর্ম আইডি হ'ল "নোড_ফর্ম" যা নোড সম্পাদনা ফর্মের জন্য বেস ফর্ম।
- নোড সম্পাদনা ফর্মটিতে
$form['#node']
যা বস্তু সম্পাদনা করার জন্য নোড অবজেক্ট; "কাস্টম" হ'ল আপনি যে কোনও নোড সম্পাদনা করলে ব্যবহারকারীদের পুনর্নির্দেশ করতে চান এমন সামগ্রীর ধরণের সংক্ষিপ্ত আইডি।
$form_state['redirect']
থেকে পরিবর্তনের hook_form_alter()
কোনও প্রভাব নেই; এটি জমা দেওয়ার হ্যান্ডলার থেকে সেট করা দরকার।