رفتن به مطلب

متاباکس داینامیک


پست های پیشنهاد شده

سلام

خسته نباشید

من توی سایتم یه قسمت محصولات دارم که میخوام براش یه متاباکس درست کنم که مشخصات محصول رو از اونجا وارد کنم

بعد حالا میخوام بدونم که چجوری میشه که هنگام پست گذاشتن بشه متاباکس جدید ساخت یعنی از قبل متاباکس ها رو نساخته باشیم!!

چون مثلا مشخص نیست که یه محصول چه مشخصاتی داره و موقع قرار دادن محصول در سایت مشخص میشه

آیا راهی داره؟؟

لینک به ارسال

خب میتونید از افزونه Advanced Custom Fields برای این کارتون استفاده کنید.

یه متاباکس بسازید ولی چیزی پیشفرض بهش ندید و موقع پست دادن بهش مشخصات محصولتون رو بدید.

لینک به ارسال

یعنی کلا از افزونه ای که گفتین استفاده کنم؟؟

من الان متاباکسم رو با کدهای زیر درست میکنم !!


<?php
add_action( 'add_meta_boxes', 'adding_meta_box' );
function adding_meta_box()
{
add_meta_box( 'meta_box_id', 'مضخصات محصول', 'frst_meta_box', 'product', 'normal', 'high' );
}
function frst_meta_box( $post )
{
$value = get_post_custom( $post->ID );
$price = isset( $value['meta_box_price'] ) ? esc_attr( $value['meta_box_price'][0] ) : '';
$Ingredient = isset( $value['meta_box_Ingredient'] ) ? esc_attr( $value['meta_box_Ingredient'][0] ) : '';
$expire_date = isset( $value['meta_box_expire_date'] ) ? esc_attr( $value['meta_box_expire_date'][0] ) : '';
wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );
?>
<p>
<label for="meta_box_price">قیمت محصول</label>
<input type="text" name="meta_box_price" style="width: 100%;" id="meta_box_price" value="<?php echo $price; ?>" />
</p>
<p>
<label for="meta_box_Ingredient">مواد تشکیل دهنده محصول</label>
<input type="text" name="meta_box_Ingredient" style="width: 100%;" id="meta_box_Ingredient" value="<?php echo $Ingredient; ?>" />
</p>
<p>
<label for="meta_box_expire_date">تاریخ انقضا</label>
<input type="text" name="meta_box_expire_date" style="width: 100%;" id="meta_box_expire_date" value="<?php echo $expire_date; ?>" />
</p>
<?php
}
add_action( 'save_post', 'saving_meta_box' );
function saving_meta_box( $post_id )
{
if( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
if( !isset( $_POST['meta_box_nonce'] ) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce' ) ) return;
if( !current_user_can( 'edit_post' ) ) return;
$accepted_field = array(
'a' => array('href' => array() )
);
if( isset( $_POST['meta_box_price'] ) )
update_post_meta( $post_id, 'meta_box_price', wp_kses( $_POST['meta_box_price'], $accepted_field ) );
if( isset( $_POST['meta_box_Ingredient'] ) )
update_post_meta( $post_id, 'meta_box_Ingredient', wp_kses( $_POST['meta_box_Ingredient'], $accepted_field ) );
if( isset( $_POST['meta_box_expire_date'] ) )
update_post_meta( $post_id, 'meta_box_expire_date', wp_kses( $_POST['meta_box_expire_date'], $accepted_field ) );
}
?>

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...