رفتن به مطلب

مشکل با متاباکس


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

سلام.

من برای یکی از دوستان یه متاباکس زدم که برای زمینه های دلخواه هستش وقتی خودم گزینه هاش رو وارد میکنم و ذخیره میکنم گزینه ها هست، ولی وقتی دوستم وارد میکنه و ذخیره میکنه گزینه ها میپره

کدی که گذاشتم:


<?php
add_action( 'add_meta_boxes', 'adding_meta_box' );
function adding_meta_box()
{
add_meta_box( 'meta_box_id', 'اطلاعات برنامه ها و بازی ها', 'last_meta_box', 'post', 'normal', 'high' );
}
function last_meta_box( $post )
{
$value = get_post_custom( $post->ID );
$ویندوزفون = isset( $value['winphone'] ) ? esc_attr( $value['winphone'][0] ) : '';
$حجم = isset( $value['hajm'] ) ? esc_attr( $value['hajm'][0] ) : '';
$نسخه = isset( $value['version'] ) ? esc_attr( $value['version'][0] ) : '';
$ویندوزیها = isset( $value['windowsiha'] ) ? esc_attr( $value['windowsiha'][0] ) : '';
$دانلود = isset( $value['download'] ) ? esc_attr( $value['download'][0] ) : '';
$زمان = isset( $value['zaman'] ) ? esc_attr( $value['zaman'][0] ) : '';
$ویدئو = isset( $value['video'] ) ? esc_attr( $value['video'][0] ) : '';
$فرمت = isset( $value['format'] ) ? esc_attr( $value['format'][0] ) : '';
wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );
?>
<p>
<label for="winphone" style="width:35%;float:right;">لینک اپلیکیشن و بازی در ویندوز فون استور</label>
<input type="text" name="winphone" id="winphone" value="<?php echo $ویندوزفون; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="hajm" style="width:35%;float:right;">حجم نرم افزار یا بازی:</label>
<input type="text" name="hajm" id="hajm" value="<?php echo $حجم; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="version" style="width:35%;float:right;">نسخه نرم افزار یا بازی:</label>
<input type="text" name="version" id="version" value="<?php echo $نسخه; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="windowsiha" style="width:35%;float:right;">دریافت از سرور ویندوزیها:</label>
<input type="text" name="windowsiha" id="windowsiha" value="<?php echo $ویندوزیها; ?>" style="width:60%;float:left;" />
</p>
<br /><br /><hr />
<p>
<label for="download" style="width:35%;float:right;">دانلود</label>
<input type="text" name="download" id="download" value="<?php echo $دانلود; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="zaman" style="width:35%;float:right;">زمان:</label>
<input type="text" name="zaman" id="zaman" value="<?php echo $زمان; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="video" style="width:35%;float:right;">ویدئو:</label>
<input type="text" name="video" id="video" value="<?php echo $ویدئو; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="format" style="width:35%;float:right;">فرمت:</label>
<input type="text" name="format" id="format" value="<?php echo $فرمت; ?>" style="width:60%;float:left;" />
</p>
<br /><br />
<?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['winphone'] ) )
update_post_meta( $post_id, 'winphone', wp_kses( $_POST['winphone'], $accepted_field ) );
if( isset( $_POST['hajm'] ) )
update_post_meta( $post_id, 'hajm', wp_kses( $_POST['hajm'], $accepted_field ) );
if( isset( $_POST['version'] ) )
update_post_meta( $post_id, 'version', wp_kses( $_POST['version'], $accepted_field ) );
if( isset( $_POST['windowsiha'] ) )
update_post_meta( $post_id, 'windowsiha', wp_kses( $_POST['windowsiha'], $accepted_field ) );
if( isset( $_POST['download'] ) )
update_post_meta( $post_id, 'download', wp_kses( $_POST['download'], $accepted_field ) );
if( isset( $_POST['zaman'] ) )
update_post_meta( $post_id, 'zaman', wp_kses( $_POST['zaman'], $accepted_field ) );
if( isset( $_POST['video'] ) )
update_post_meta( $post_id, 'video', wp_kses( $_POST['video'], $accepted_field ) );
if( isset( $_POST['format'] ) )
update_post_meta( $post_id, 'format', wp_kses( $_POST['format'], $accepted_field ) );
}
?>

مشکل از کد هستش با چیزه دیگه ؟

پیشاپیش تشکر

ویرایش شده توسط U3F
لینک به ارسال

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

سلام.

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

لینک به ارسال

در این مورد مطمئنید؟

وقتی خودم گزینه هاش رو وارد میکنم و ذخیره میکنم گزینه ها هست، ولی وقتی دوستم وارد میکنه و ذخیره میکنه گزینه ها میپره

این تکه از کدها را تغییر بدید


function adding_meta_box()
{
add_meta_box( 'meta_box_id', 'اطلاعات برنامه ها و بازی ها', 'last_meta_box', 'post', 'normal', 'high' );
}
function last_meta_box( $post_id )
{
$winphone= get_post_meta($post_id, 'winphone', true);
$hajm = get_post_meta($post_id, 'hajm', true);
$version = get_post_meta($post_id, 'version', true);
$windowsiha = get_post_meta($post_id, 'windowsiha', true);
$download = get_post_meta($post_id, 'download', true);
$zaman = get_post_meta($post_id, 'zaman', true);
$video = get_post_meta($post_id, 'video', true);
$format = get_post_meta($post_id, 'format', true);
wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );
?>
<p>
<label for="winphone" style="width:35%;float:right;">لینک اپلیکیشن و بازی در ویندوز فون استور</label>
<input type="text" name="winphone" id="winphone" value="<?php echo $winphone; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="hajm" style="width:35%;float:right;">حجم نرم افزار یا بازی:</label>
<input type="text" name="hajm" id="hajm" value="<?php echo $hajm; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="version" style="width:35%;float:right;">نسخه نرم افزار یا بازی:</label>
<input type="text" name="version" id="version" value="<?php echo $version; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="windowsiha" style="width:35%;float:right;">دریافت از سرور ویندوزیها:</label>
<input type="text" name="windowsiha" id="windowsiha" value="<?php echo $windowsiha; ?>" style="width:60%;float:left;" />
</p>
<br /><br /><hr />
<p>
<label for="download" style="width:35%;float:right;">دانلود</label>
<input type="text" name="download" id="download" value="<?php echo $download; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="zaman" style="width:35%;float:right;">زمان:</label>
<input type="text" name="zaman" id="zaman" value="<?php echo $zaman; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="video" style="width:35%;float:right;">ویدئو:</label>
<input type="text" name="video" id="video" value="<?php echo $video; ?>" style="width:60%;float:left;" />
</p><br />
<p>
<label for="format" style="width:35%;float:right;">فرمت:</label>
<input type="text" name="format" id="format" value="<?php echo $format; ?>" style="width:60%;float:left;" />

مجدد چک کنید هر دو با بروسر فایر فاکس و نتیجه را بگید

لینک به ارسال

کی می پره؟

منظورتون اگر اینه که ارور بر می گردونه ارور لوگش را بگذارید

در ضمن این کد رو باید جای همین مقدار از کد قبلیتون بگذارید نه اینکه کد اول را کاملا حذف کنید

لینک به ارسال

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

اروری نمیده

جای مقدار مشابه تو کدها گذاشتم

ویرایش شده توسط U3F
لینک به ارسال

اینطوری تست کنید


function last_meta_box( $post )
{
$winphone= get_post_meta($post->ID, 'winphone', true);
$hajm = get_post_meta($post->ID, 'hajm', true);
$version = get_post_meta($post->ID, 'version', true);
$windowsiha = get_post_meta($post->ID, 'windowsiha', true);
$download = get_post_meta($post->ID, 'download', true);
$zaman = get_post_meta($post->ID, 'zaman', true);
$video = get_post_meta($post->ID, 'video', true);
$format = get_post_meta($post->ID, 'format', true);
wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );

و اینکه یکبار هم این کدها را در داخل حلقه single.php بگذارید تا مشخص بشه مشکل در ذخیره کردنه یا تو خواندن


$output = get_post_meta($post->ID, 'winphone', true);
$output .= get_post_meta($post->ID, 'hajm', true);
$output .= get_post_meta($post->ID, 'version', true);
$output .= get_post_meta($post->ID, 'windowsiha', true);
$output .= get_post_meta($post->ID, 'download', true);
$output .= get_post_meta($post->ID, 'zaman', true);
$output .= get_post_meta($post->ID, 'video', true);
$output .= get_post_meta($post->ID, 'format', true);
echo $output;

لینک به ارسال

ایمان جان این کد رو گذاشتم برای خودم درست شد باز اون میگفت برای من ذخیره نمیشه با افزونه هم براش گذاشتم گفت نمیشه بیخیالش شدم...

ممنون

لینک به ارسال

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

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

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

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

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

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

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

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

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