رفتن به مطلب

مشکل در ذخیره سازی متاباکس در دیتابیس


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

سلام خدمت همگی

من یه مشکلی دارم

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

یه مثالی که عملی انجام دادم به این صورته که :

من متن زیر رو تو فیلد نوشتم و ذخیره کردم

Mmm M Mm Mm Mm Mm Mmmm

اما متنی که در دیتابیس ذخیره شد به این صورته

Mmm M MM mm Mm mM mmmm

اگه ممکنه راهنماییم کنید که مشکل حل بشه

متاباکسمم داخل فایل فانکشن ساختم تمامی کد هاشم بدین صورته


//# Start >> Create custom music meta box and add it to custom post
// 1. Create a function for call add_meta_box function

add_action( 'add_meta_boxes', 'add_metabox_to_music' );
function add_metabox_to_music() {
//create a custom meta box
add_meta_box( 'music-meta', __( '<span style="color:#21759B;font:bold 9pt/14px Tahoma;" class="ms-meta-title">اضافه کردن توضيحات به موزيک پست</span>', 'Music Site' ), 'music_callback', 'music','normal', 'high' );
}

// 2. Create Callback function for add_meta_box

function music_callback( $post ) {
//retrieve the metadata values if they exist
$mp3_details = get_post_meta( $post->ID, "_mp3_details", true );
$mp3_details = unserialize($mp3_details);
$mp3_details = soft_output_text( stripslashes_deep( $mp3_details ) );
?>
<p class="dir-ltr" > MP3 320 URL : <input style="width:340px" type="text" name="mp3_320_url" value="<?php echo $mp3_details['mp3_320_url'] ; ?> " /><span class="mp3-logo" style="background:url(<?php echo MS_DIR_IMAGES; ?>mp3-320.png) no-repeat scroll 0 0 transparent" >mp3-320</span> </p>
<p class="dir-ltr" > MP3 128 URL : <input style="width:340px" type="text" name="mp3_128_url" value="<?php echo $mp3_details['mp3_128_url'] ; ?> " /><span class="mp3-logo" style="background:url(<?php echo MS_DIR_IMAGES; ?>mp3-128.png) no-repeat scroll 0 0 transparent" >mp3-128</span> </p>
<hr class="dir-ltr" style="border-top:1px solid #eee;border-bottom:1px solid white;border-left:medium transparent;border-right:medium transparent" />
<p class="dir-ltr" style="font:bold 15px/18px Tahoma;color:gray" >MP3 Details </p>
<p class="dir-ltr" > Artist Name : <input style="width:175px;margin-left:20px;color:#4a4a4a" type="text" name="mp3_artist_name" value="<?php echo $mp3_details['mp3_artist_name']; ?> " /></p>
<p class="dir-ltr" > Lyrics : <input style="width:175px;margin-left:57px;color:#4a4a4a" type="text" name="mp3_lyrics" value="<?php echo $mp3_details['mp3_lyrics']; ?> " /></p>
<p class="dir-ltr" > Arrangement : <input style="width:175px;margin-left:12px;color:#4a4a4a" type="text" name="mp3_arrangement" value="<?php echo $mp3_details['mp3_arrangement']; ?> " /></p>

<?php } // End callback function

// 3. Create a function for save data

//hook to save the meta box data
add_action( 'save_post', 'save_meta_music' );
function save_meta_music( $post_id ) {
global $wpdb;
//verify the metadata is set
if ( isset( $_POST['mp3_320_url'] ) || isset( $_POST['mp3_128_url']) || isset( $_POST['mp3_artist_name']) || isset( $_POST['mp3_lyrics']) || isset( $_POST['mp3_arrangement']) ) {

$mp3_details ['mp3_320_url'] = str_replace('"', "'", trim($_POST['mp3_320_url']) );
$mp3_details ['mp3_128_url'] = str_replace('"', "'", trim($_POST['mp3_128_url']) );
$mp3_details ['mp3_artist_name']= (trim($_POST['mp3_artist_name']))? str_replace('"', "'", $_POST['mp3_artist_name'] ):"no artist name" ;
$mp3_details ['mp3_lyrics'] = ( trim($_POST['mp3_lyrics']) )? str_replace('"', "'", $_POST['mp3_lyrics'] ):"no lyrics" ;
$mp3_details ['mp3_arrangement']= (trim($_POST['mp3_arrangement']))? str_replace('"', "'", $_POST['mp3_arrangement'] ):"no arrangment" ;
$mp3_details = serialize($mp3_details);
//save the metadata
update_post_meta( $post_id, '_mp3_details', esc_sql( $mp3_details ) );

}
}
//# End

البته فقط دو فیلد اول برام مهمه یعنی

mp3_320_url

mp3_128_url

سپاس از همگی

لینک به ارسال

فکر کنم موقع تایپ کلید کپستون فعال بوده وگرنه چیزی که می گید را نه دیدم نه شنیدم

در هر صورت استفاده از فاصله در لینک اشتباهه و لی اینطور نیست که باعث جابجایی حروف کوچک و بزرگ بشه بجای فاصله نوشته خواهد شد 20%

لینک به ارسال

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

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

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

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

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

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

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

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

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