در قسمت افزودن محصول یک تب اضافه کردم که یک چک باکس داخل آن تب هست اگه چک تیکش خورده باشه اطلاعات گفنه شده نمایش داده میشه و اگر نه نمایش داده نمیشه
مشکل اینجاست که فعال یا غیر فعال بودن تیک رو نمیتونم تو پایگاه داده ذخیره کنم
سلام با همین کدی که بهتون دادم از طریق هوک
save_post_product و تابع update_post_meta میتونید داخل دیتابیس ذخیرش کنید و مقدار رو باید از طریق تابع get_post_meta بگیرید و بالای چک باکس وارد کنید که مثلا وقتی مقدارش فلان بود چک باکس فعال باشه یا نه
الان این خروجی هست گرفتید داخل پنل my Custom tab رو میگم شما اومدی از طریق ی Callback یک چک باکس رو داخل پنلی که ساختی نوشتی درسته؟
add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
function woo_new_product_tab( $tabs ) {
$tabs['new_tab'] = array(
'title' => __( 'New Tab', 'woocommerce' ),
'priority' => 50,
'callback' => 'woo_new_product_tab_content' );
return $tabs; }
function woo_new_product_tab_content() {
global $product;
$product_id = $product->get_ID();
// اینجا شما اومدی ی فیلد ساختی
$feild___data ="";
$feild___data = get_post_meta($product_id,'feild_key',true);
if ($feild___data== "on") {
<input name="feild_key" checked type="checkbox">
}else {
<input name="feild_key" type="checkbox">
}
}
خب اومدیم ی فیلد ساختیم و مقدار رو گرفتیم و گفتیم اگه مقدار on بود فیلم رو checked کن الان ما باید مقدار رو داخل دیتابیس ذخیره کنیم
add_action('save_post_product',function($product_id,$product_object){
update_post_meta($product_id ,sanitize_text_field($_REQUEST['feild_key']))
}, 10,2)
updatepostmeta تابع
update_post_meta('my post id',sanitize_text_field($_REQUEST['option primary key']))
getpostmeta تابع
get_post_meta('my post id','meta key',true)
savepost اکشن
add_action('save_post_product',function($product_id,$product_object){
if ( isset( $_REQUEST['_wpnonce'] ) && wp_verify_nonce( $_REQUEST['_wpnonce'], 'Security-action' ) ) {
update_post_meta($product_id ,sanitize_text_field($_REQUEST['option primary key']))
} else {
wp_die('خطای امنیتی')
}
}, 10,2)
خیلی ممنون کدتون خیلی خوبه ولی به پایگاه دا ده متصل نمیشه من برای فعال یا غیر فعال بودن آن تیک باید تو پایگاه داده ذخیرش کنم
سلام با همین کدی که بهتون دادم از طریق هوک
save_post_product و تابع update_post_meta میتونید داخل دیتابیس ذخیرش کنید و مقدار رو باید از طریق تابع get_post_meta بگیرید و بالای چک باکس وارد کنید که مثلا وقتی مقدارش فلان بود چک باکس فعال باشه یا نه
الان این خروجی هست گرفتید داخل پنل my Custom tab رو میگم شما اومدی از طریق ی Callback یک چک باکس رو داخل پنلی که ساختی نوشتی درسته؟
add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
function woo_new_product_tab( $tabs ) {
$tabs['new_tab'] = array(
'title' => __( 'New Tab', 'woocommerce' ),
'priority' => 50,
'callback' => 'woo_new_product_tab_content' );
return $tabs; }
function woo_new_product_tab_content() {
global $product;
$product_id = $product->get_ID();
// اینجا شما اومدی ی فیلد ساختی
$feild___data ="";
$feild___data = get_post_meta($product_id,'feild_key',true);
if ($feild___data== "on") {
<input name="feild_key" checked type="checkbox">
}else {
<input name="feild_key" type="checkbox">
}
}
خب اومدیم ی فیلد ساختیم و مقدار رو گرفتیم و گفتیم اگه مقدار on بود فیلم رو checked کن الان ما باید مقدار رو داخل دیتابیس ذخیره کنیم
add_action('save_post_product',function($product_id,$product_object){
update_post_meta($product_id ,sanitize_text_field($_REQUEST['feild_key']))
}, 10,2)
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟