আমি ভাবছি এটি আমার পিএইচপিগুলির সাথে আমার সেটিংস এপিআই ব্যবহারের চেয়ে আরও বেশি সমস্যা হতে পারে তবে আমি মাল্টি-সিলেক্ট বাক্সের জন্য ডেটার অ্যারের সংরক্ষণ করতে ওয়ার্ডপ্রেস পেতে পারি না।
মাল্টি-সিলেক্ট বক্সটি একটি কাস্টম মেটা ক্ষেত্রের সাথে সামঞ্জস্য করে এবং নির্বাচন বিকল্পগুলি হ'ল কাস্টম পোস্ট প্রকার যা সেই মেটা ক্ষেত্রটি প্রদর্শন করবে।
এখানে প্রদর্শন কোডটি রয়েছে:
case 'select2':
echo "<select id='$id' style='width:15em;height:10em;' class='select$field_class' name='" . $buddha_option_name . "[$id]' multiple>";
foreach($choices as $item) {
$item = explode("|",$item);
$item[0] = esc_html($item[0], 'buddha_textdomain');
$selected = ($options[$id]==$item[1]) ? 'selected="selected"' : '';
echo "<option value='$item[1]' $selected>$item[0]</option>";
}
echo "</select>";
echo ($desc != '') ? "<br /><span class='description'>$desc</span>" : "";
break;
$choices
এখানে 'পছন্দ' হিসাবে সংজ্ঞায়িত করা হয়েছে:
$options[] = array(
"section" => "custom_meta",
"id" => BUDDHA_SHORTNAME . "_meta_email",
"title" => __( 'Email Meta Box', 'buddha_textdomain' ),
"desc" => __( 'Select post types to have custom email meta box.', 'buddha_textdomain' ),
"type" => "select2",
"std" => print_r($buddha_option_name[$id]),
"choices" => array( __('Posts','buddha_textdomain') . "|post", __('Pages','buddha_textdomain') . "|page", __('Faculty/Staff','buddha_textdomain') . "|staff", __('FAQ','buddha_textdomain') . "|faq", __('Documents','buddha_textdomain') . "|docs", __('Courses','buddha_textdomain') . "|courses" )
);
এবং বৈধতা কোড:
case 'select2':
// process $select_values
$select_values = array();
foreach ($option['choices'] as $k => $v) {
// explode the connective
$pieces = explode("|", $v);
$select_values[] = $pieces[1];
}
// check to see if selected value is in our approved array of values!
$valid_input[$option['id']] = (in_array( $input[$option['id']], $select_values) ? $input[$option['id']] : '' );
break;
বর্তমানে, আমি একাধিক-নির্বাচন ক্ষেত্র থেকে একাধিক মান নির্বাচন করি, ডব্লিউপি কেবলমাত্র একটি মান (সাধারণত প্রথম বর্ণানুক্রমিক মান) সংরক্ষণ করবে। অ্যারেতে একাধিক মান সংরক্ষণ করার জন্য আমার এটি দরকার।
আমি ভেবেছিলাম []
শেষ পর্যন্ত যোগ [$id]
সাহায্য করতে পারে, কিন্তু না।
$id
একই হিসাবে "id" => BUDDHA_SHORTNAME . "_meta_email"
এটি অন্য ফাংশনে সংজ্ঞায়িত করা হয়। এবং আমি সত্যিই জানি না কেন আমি print_r
সেখানে ছিলাম, তা বোঝায় না?
[]
শেষে অ্যাডিন name
আমাকে সাহায্য করেছিল। নামের গুণটি ডাবল চেক করুন। আপনি কি মাইএসকিউএল ডিবি পরীক্ষা করে থাকেন যে কোন সেটিংস সংরক্ষণ করা হয়?
esc_html()
এবং esc_html__()
আপনার ডিসপ্লে কোডে। প্রাক্তন কেবল একটি যুক্তি গ্রহণ করে; পরেরটি দ্বিতীয় যুক্তি, পাঠ্য ডোমেন গ্রহণ করে।
$id
? এবং কেনprint_r
একটি নির্ধারিত প্রসঙ্গে ব্যবহার করছেন ?