سئو فاکس 27 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 با سلام بنده یک متاباکس ایجاد کردم :<?php/*Plugin Name: Meta Box ExamplePlugin URI: http://wp.tutsplus.com/Description: Adds an example meta box to wordpress.Version: NoneAuthor: Christopher DavisAuthor URI: http://wp.tutsplus.com/License: Public Domain*/add_action( 'add_meta_boxes', 'cd_meta_box_add' );function cd_meta_box_add(){add_meta_box( 'my-meta-box-id', 'My First Meta Box', 'cd_meta_box_cb', 'post', 'normal', 'high' );}function cd_meta_box_cb( $post ){$values = get_post_custom( $post->ID );$text = isset( $values['my_meta_box_text'] ) ? esc_attr( $values['my_meta_box_text'][0] ) : '';$selected = isset( $values['my_meta_box_select'] ) ? esc_attr( $values['my_meta_box_select'][0] ) : '';$check = isset( $values['my_meta_box_check'] ) ? esc_attr( $values['my_meta_box_check'][0] ) : '';wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );?><p> <label for="my_meta_box_text">Film Name :</label> <input type="text" name="my_meta_box_text" id="my_meta_box_text" value="<?php echo $text; ?>" /></p><p> <label for="my_meta_box_select">Quality</label> <select name="my_meta_box_select" id="my_meta_box_select"> <option value="red" <?php selected( $selected, 'red' ); ?>>720p</option> <option value="blue" <?php selected( $selected, 'blue' ); ?>>1080p</option> </select></p><p> <input type="checkbox" name="my_meta_box_check" id="my_meta_box_check" <?php checked( $check, 'on' ); ?> /> <label for="my_meta_box_check">Don't Check This.</label></p><?php}add_action( 'save_post', 'cd_meta_box_save' );function cd_meta_box_save( $post_id ){// Bail if we're doing an auto saveif( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;// if our nonce isn't there, or we can't verify it, bailif( !isset( $_POST['meta_box_nonce'] ) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce' ) ) return;// if our current user can't edit this post, bailif( !current_user_can( 'edit_post' ) ) return;// now we can actually save the data$allowed = array( 'a' => array( // on allow a tags 'href' => array() // and those anchords can only have href attribute ));// Probably a good idea to make sure your data is setif( isset( $_POST['my_meta_box_text'] ) ) update_post_meta( $post_id, 'my_meta_box_text', wp_kses( $_POST['my_meta_box_text'], $allowed ) );if( isset( $_POST['my_meta_box_select'] ) ) update_post_meta( $post_id, 'my_meta_box_select', esc_attr( $_POST['my_meta_box_select'] ) );// This is purely my personal preference for saving checkboxes$chk = ( isset( $_POST['my_meta_box_check'] ) && $_POST['my_meta_box_check'] ) ? 'on' : 'off';update_post_meta( $post_id, 'my_meta_box_check', $chk );}?><?phpحالا چجوری باید my_meta_box_text رو در فایل single قرار بدم که مثلا هنگام پست مطالب , ارسال کننده نام فیلم رو داخل متاباکسFilmname تایپ کنه !مثال : من تصویر شاخص رو اینجوری قرار دادم :<div class="post-image"><?php if ( has_post_thumbnail()) the_post_thumbnail('home-thumb'); ?></div>و اسم فیلم رو اینحوری :<p> FilmName : Spiderman </p>حالا میخوام جای متنی که داخل my_meta_box_textدر متاباکس مینویسم به جای spiderman اکو بشه ! چی کار کنم ؟ لینک به ارسال
Ghasem Paran 333 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 http://www.wproots.com/complex-meta-boxes-in-wordpress/ 1 لینک به ارسال
سئو فاکس 27 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 http://www.wproots.com/complex-meta-boxes-in-wordpress/تشکر ولی زبانم خوب نیست ! بعنی یک آموزش ساخت متاباکس برای جعبه دانلود نیست ؟ لینک به ارسال
imanfakhar 26231 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 <?phpif(get_post_meta($post->ID, 'my_meta_box_select')) { echo get_post_meta($post->ID, 'my_meta_box_select', true);}?> 5 لینک به ارسال
سئو فاکس 27 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 (ویرایش شده) <?phpif(get_post_meta($post->ID, 'my_meta_box_select')) {echo get_post_meta($post->ID, 'my_meta_box_select', true);}?>بسیار ممنون اما یه مشکلی هست ! مشکل اینجاست که این تابع فقط قسمت های select رو فراخوانی میکنه و قسمت های input رو فراخوانی نمیکنه .اول فکر کردم اگر Ture رو از آخرش بردارم درست میشه , اما اون موقع فقط اکو میکنه Array ! ممنون میشم راهنمایی کنید به طرز عجیبی حل شد ! ویرایش شده شهریور 93 توسط محمد رضایی لینک به ارسال
imanfakhar 26231 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 echo get_post_meta( $post->ID, 'my_meta_box_text', true ); 2 لینک به ارسال
سئو فاکس 27 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 بسیار ممنون , تمامی مشکلات حل شد فقط یک مشکل مونده ! مشکل اینجاست که تمامی value ها : <input type="text" name="_stars" id="_stars" value="<?php echo $text; ?>"4/>به value آخرین کد معرفی تغییر میکنه ! یکم واضح تر بگم این کد رو ببینید :$values = get_post_custom( $post->ID );$selected = isset( $values['_rating'] ) ? esc_attr( $values['_rating'][0] ) : '';$selected = isset( $values['_quality'] ) ? esc_attr( $values['_quality'][0] ) : '';$selected = isset( $values['_country'] ) ? esc_attr( $values['_country'][0] ) : '';$text = isset( $values['_director'] ) ? esc_attr( $values['_director'][0] ) : '';$text = isset( $values['_time'] ) ? esc_attr( $values['_time'][0] ) : '';$text = isset( $values['_genre'] ) ? esc_attr( $values['_genre'][0] ) : '';$text = isset( $values['_volume'] ) ? esc_attr( $values['_volume'][0] ) : '';$text = isset( $values['_stars'] ) ? esc_attr( $values['_stars'][0] ) : '';یعنی همه value ها به _stars که آخرین فیلد هست تغییر میکنه ! مثلا اگر جاشونو عوض کنم و جای آخرین کد که _stars هست _director بزارم همه ی value ها به اون تغییر میکنن ! ممنون میشم راهنمایی کنیداینم سورس کل functions.php :<?php add_theme_support( 'post-thumbnails' ); ?><?php/*Plugin Name: Movie Detail Meta BoxPlugin URI: http://wp.tutsplus.com/Description: Movie Detail Meta BoxVersion: 1.1Author: Christopher DavisAuthor URI: http://wp.tutsplus.com/License: Public Domain*/add_action( 'add_meta_boxes', 'cd_meta_box_add' );function cd_meta_box_add(){add_meta_box( 'post-detail', 'Post Detail', 'cd_meta_box_cb', 'post', 'normal', 'high' );}function cd_meta_box_cb( $post ){$values = get_post_custom( $post->ID );$selected = isset( $values['_rating'] ) ? esc_attr( $values['_rating'][0] ) : '';$selected = isset( $values['_quality'] ) ? esc_attr( $values['_quality'][0] ) : '';$selected = isset( $values['_country'] ) ? esc_attr( $values['_country'][0] ) : '';$text = isset( $values['_director'] ) ? esc_attr( $values['_director'][0] ) : '';$text = isset( $values['_time'] ) ? esc_attr( $values['_time'][0] ) : '';$text = isset( $values['_genre'] ) ? esc_attr( $values['_genre'][0] ) : '';$text = isset( $values['_volume'] ) ? esc_attr( $values['_volume'][0] ) : '';$text = isset( $values['_stars'] ) ? esc_attr( $values['_stars'][0] ) : '';wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );?><style>#post-detail input{width:90%;float:right;}#post-detail select{width:90%;float:right;}#post-detail{padding:0 0 100px;}</style><label for="_rating">Rating</label> <select name="_rating" id="_rating"> <option value="10" <?php selected( $selected, '10' ); ?>>10</option> <option value="9.9" <?php selected( $selected, '9.9' ); ?>>9.9</option> <option value="9.8" <?php selected( $selected, '9.8' ); ?>>9.8</option> <option value="9.7" <?php selected( $selected, '9.7' ); ?>>9.7</option> <option value="9.6" <?php selected( $selected, '9.6' ); ?>>9.6</option> <option value="9.5" <?php selected( $selected, '9.5' ); ?>>9.5</option> <option value="9.4" <?php selected( $selected, '9.4' ); ?>>9.4</option> <option value="9.3" <?php selected( $selected, '9.3' ); ?>>9.3</option> <option value="9.2" <?php selected( $selected, '9.2' ); ?>>9.2</option> <option value="9.1" <?php selected( $selected, '9.1' ); ?>>9.1</option> <option value="9" <?php selected( $selected, '9' ); ?>>9</option> <option value="8.9" <?php selected( $selected, '8.9' ); ?>>8.9</option> <option value="8.8" <?php selected( $selected, '8.8' ); ?>>8.8</option> <option value="8.7" <?php selected( $selected, '8.7' ); ?>>8.7</option> <option value="8.6" <?php selected( $selected, '8.6' ); ?>>8.6</option> <option value="8.5" <?php selected( $selected, '8.5' ); ?>>8.5</option> <option value="8.4" <?php selected( $selected, '8.4' ); ?>>8.4</option> <option value="8.3" <?php selected( $selected, '8.3' ); ?>>8.3</option> <option value="8.2" <?php selected( $selected, '8.2' ); ?>>8.2</option> <option value="8.1" <?php selected( $selected, '8.1' ); ?>>8.1</option> <option value="8" <?php selected( $selected, '8' ); ?>>8</option> <option value="7.9" <?php selected( $selected, '7.9' ); ?>>7.9</option> <option value="7.8" <?php selected( $selected, '7.8' ); ?>>7.8</option> <option value="7.7" <?php selected( $selected, '7.7' ); ?>>7.7</option> <option value="7.6" <?php selected( $selected, '7.6' ); ?>>7.6</option> <option value="7.5" <?php selected( $selected, '7.5' ); ?>>7.5</option> <option value="7.4" <?php selected( $selected, '7.4' ); ?>>7.4</option> <option value="7.3" <?php selected( $selected, '7.3' ); ?>>7.3</option> <option value="7.2" <?php selected( $selected, '7.2' ); ?>>7.2</option> <option value="7.1" <?php selected( $selected, '7.1' ); ?>>7.1</option> <option value="7" <?php selected( $selected, '7' ); ?>>7</option> <option value="6.9" <?php selected( $selected, '6.9' ); ?>>6.9</option> <option value=">6.8" <?php selected( $selected, '>6.8' ); ?>>6.8</option> <option value="6.7" <?php selected( $selected, '6.7' ); ?>>6.7</option> <option value="6.6" <?php selected( $selected, 'Action' ); ?>>6.6</option> <option value="6.5" <?php selected( $selected, 'Action' ); ?>>6.5</option> <option value="6.4" <?php selected( $selected, 'Action' ); ?>>6.4</option> <option value="6.3" <?php selected( $selected, 'Action' ); ?>>6.3</option> <option value="6.2" <?php selected( $selected, '6.2' ); ?>>6.2</option> <option value="6.1" <?php selected( $selected, '6.1' ); ?>>6.1</option> <option value="6" <?php selected( $selected, '6' ); ?>>6</option> <option value="5.9" <?php selected( $selected, '5.9' ); ?>>5.9</option> <option value="5.8" <?php selected( $selected, '5.8' ); ?>>5.8</option> <option value="5.7" <?php selected( $selected, '5.7' ); ?>>5.7</option> <option value="5.6" <?php selected( $selected, '5.6' ); ?>>5.6</option> <option value="5.5" <?php selected( $selected, '5.5' ); ?>>5.5</option> <option value="5.4" <?php selected( $selected, '5.4' ); ?>>5.4</option> <option value="5.3" <?php selected( $selected, '5.3' ); ?>>5.3</option> <option value="5.2" <?php selected( $selected, '5.2' ); ?>>5.2</option> <option value="5.1" <?php selected( $selected, '5.1' ); ?>>5.1</option> <option value="5" <?php selected( $selected, '5' ); ?>>5</option> <option value="4.9" <?php selected( $selected, 'Action' ); ?>>4.9</option> <option value="4.8" <?php selected( $selected, '4.8' ); ?>>4.8</option> <option value="4.7" <?php selected( $selected, '4.7' ); ?>>4.7</option> <option value="4.6" <?php selected( $selected, '4.6' ); ?>>4.6</option> <option value="4.5" <?php selected( $selected, '4.5' ); ?>>4.5</option> <option value="4.4" <?php selected( $selected, '4.4' ); ?>>4.4</option> <option value="4.3" <?php selected( $selected, '4.3' ); ?>>4.3</option> <option value="4.2" <?php selected( $selected, '4.2' ); ?>>4.2</option> <option value="4.1" <?php selected( $selected, '4.1' ); ?>>4.1</option> <option value="4" <?php selected( $selected, '4' ); ?>>4</option> <option value="3.9" <?php selected( $selected, '3.9' ); ?>>3.9</option> <option value="3.8" <?php selected( $selected, '3.8' ); ?>>3.8</option> <option value="3.7" <?php selected( $selected, '3.7' ); ?>>3.7</option> <option value="3.6" <?php selected( $selected, '3.6' ); ?>>3.6</option> <option value="3.5" <?php selected( $selected, '3.5' ); ?>>3.5</option> <option value="3.4" <?php selected( $selected, '3.4' ); ?>>3.4</option> <option value="3.3" <?php selected( $selected, '3.3' ); ?>>3.3</option> <option value="3.2" <?php selected( $selected, '3.2' ); ?>>3.2</option> <option value="3.1" <?php selected( $selected, '3.1' ); ?>>3.1</option> <option value="3" <?php selected( $selected, '3' ); ?>>3</option> <option value="2.9" <?php selected( $selected, '2.9' ); ?>>2.9</option> <option value="2.8" <?php selected( $selected, '2.8' ); ?>>2.8</option> <option value="2.7" <?php selected( $selected, '2.7' ); ?>>2.7</option> <option value="2.6" <?php selected( $selected, '2.6' ); ?>>2.6</option> <option value="2.5" <?php selected( $selected, '2.5' ); ?>>2.5</option> <option value="2.4" <?php selected( $selected, '2.4' ); ?>>2.4</option> <option value="2.3" <?php selected( $selected, '2.3' ); ?>>2.3</option> <option value="2.2" <?php selected( $selected, '2.2' ); ?>>2.2</option> <option value="2.1" <?php selected( $selected, '2.1' ); ?>>2.1</option> <option value="2" <?php selected( $selected, '2' ); ?>>2</option> <option value="1.9" <?php selected( $selected, '1.9' ); ?>>1.9</option> <option value="1.8" <?php selected( $selected, '1.8' ); ?>>1.8</option> <option value="1.7" <?php selected( $selected, '1.7' ); ?>>1.7</option> <option value="1.6" <?php selected( $selected, '1.6' ); ?>>1.6</option> <option value="1.5" <?php selected( $selected, '1.5' ); ?>>1.5</option> <option value="1.4" <?php selected( $selected, '1.4' ); ?>>1.4</option> <option value="v" <?php selected( $selected, '1.3' ); ?>>1.3</option> <option value="1.2" <?php selected( $selected, '1.2' ); ?>>1.2</option> <option value="1.1" <?php selected( $selected, '1.1' ); ?>>1.1</option> <option value="1" <?php selected( $selected, '1' ); ?>>1</option> <option value="No Rating" <?php selected( $selected, 'No Rating' ); ?>>No Rating</option> </select></p><p> <label for="_quality">Quality </label> <select name="_quality" id="_quality"> <option value="Cam" <?php selected( $selected, 'Cam' ); ?>>Cam</option> <option value="TS" <?php selected( $selected, 'TS' ); ?>>TS</option> <option value="R5" <?php selected( $selected, 'R5' ); ?>>R5</option> <option value="DVDScr" <?php selected( $selected, 'DVDScr' ); ?>>DVDScr</option> <option value="DVDRip" <?php selected( $selected, 'DVDRip' ); ?>>DVDRip</option> <option value="BDRip" <?php selected( $selected, 'BDRip' ); ?>>BDRip</option> <option value="Bluray 480p" <?php selected( $selected, 'Bluray 480p' ); ?>>Bluray 480p</option> <option value="Bluray 720p" <?php selected( $selected, 'Bluray 720p' ); ?>>Bluray 720p</option> <option value="Bluray 1080p" <?php selected( $selected, 'Bluray 1080p' ); ?>>Bluray 1080p</option> <option value="3D" <?php selected( $selected, '3D' ); ?>>3D</option> <option value="WEb RIp" <?php selected( $selected, 'WEb RIp' ); ?>>WEb RIp</option> <option value="HDRip" <?php selected( $selected, 'HDRip' ); ?>>HDRip</option> <option value="High Definition" <?php selected( $selected, 'High Definition' ); ?>>High Definition</option> <option value="WEB-DL 720p" <?php selected( $selected, 'WEB-DL 720p' ); ?>>WEB-DL 720p</option> <option value="HD" <?php selected( $selected, 'HD' ); ?>>HD</option> <option value="Full HD" <?php selected( $selected, 'Full HD' ); ?>>Full HD</option> </select></p><p> <label for="_country">Country</label> <select name="_country" id="_country"> <option value="America" <?php selected( $selected, 'America' ); ?>>America</option> <option value="Australia" <?php selected( $selected, 'Australia' ); ?>>Australia</option> <option value="Italy" <?php selected( $selected, 'Italy' ); ?>>Italy</option> <option value="IRAn" <?php selected( $selected, 'IRAn' ); ?>>IRAn</option> <option value="India" <?php selected( $selected, 'India' ); ?>>India</option> <option value="Japan" <?php selected( $selected, 'Japan' ); ?>>Japan</option> <option value="China" <?php selected( $selected, 'China' ); ?>>China</option> <option value="France" <?php selected( $selected, 'France' ); ?>>France</option> <option value="Spain" <?php selected( $selected, 'Spain' ); ?>>Spain</option> <option value="South Korea" <?php selected( $selected, 'South Korea' ); ?>>South Korea</option> <option value="Saudi Arabia" <?php selected( $selected, 'Saudi Arabia' ); ?>>Saudi Arabia</option> <option value="Turkey" <?php selected( $selected, 'Turkey' ); ?>>Turkey</option> <option value="Netherlands" <?php selected( $selected, 'Netherlands' ); ?>>Netherlands</option> <option value="Mexico" <?php selected( $selected, 'Mexico' ); ?>>Mexico</option> <option value="Ireland" <?php selected( $selected, 'Ireland' ); ?>>Ireland</option> <option value="Austria" <?php selected( $selected, 'Austria' ); ?>>Austria</option> <option value="New Zealand" <?php selected( $selected, 'New Zealand' ); ?>>New Zealand</option> <option value="Norway" <?php selected( $selected, 'Norway' ); ?>>Norway</option> <option value="Sweden" <?php selected( $selected, 'Sweden' ); ?>>Sweden</option> </select></p><p> <label for="_genre">Genre</label> <input type="text" name="_genre" id="_genre" value="<?php echo $text; ?>" /></p><p> <label for="_director">Director</label> <input type="text" name="_director" id="_director" value="<?php echo $text; ?>" /></p><p> <label for="_stars">Stars</label> <input type="text" name="_stars" id="_stars" value="<?php echo $text; ?>"4/></p><p> <label for="_volume">Volume</label> <input type="text" name="_volume" id="_volume" value="<?php echo $text; ?>"4/></p><p> <label for="_time">Time</label> <input type="text" name="_time" id="_time" value="<?php echo $text; ?>"4/></p><?php}add_action( 'save_post', 'cd_meta_box_save' );function cd_meta_box_save( $post_id ){// Bail if we're doing an auto saveif( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;// if our nonce isn't there, or we can't verify it, bailif( !isset( $_POST['meta_box_nonce'] ) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce' ) ) return;// if our current user can't edit this post, bailif( !current_user_can( 'edit_post' ) ) return;// now we can actually save the data$allowed = array( 'a' => array( // on allow a tags 'href' => array() // and those anchords can only have href attribute ));if( isset( $_POST['_director'] ) ) update_post_meta( $post_id, '_director', wp_kses( $_POST['_director'], $allowed ) );if( isset( $_POST['_time'] ) ) update_post_meta( $post_id, '_time', wp_kses( $_POST['_time'], $allowed ) );if( isset( $_POST['_genre'] ) ) update_post_meta( $post_id, '_genre', wp_kses( $_POST['_genre'], $allowed ) );if( isset( $_POST['_volume'] ) ) update_post_meta( $post_id, '_volume', wp_kses( $_POST['_volume'], $allowed ) );if( isset( $_POST['_stars'] ) ) update_post_meta( $post_id, '_stars', wp_kses( $_POST['_stars'], $allowed ) );if( isset( $_POST['_rating'] ) ) update_post_meta( $post_id, '_rating', esc_attr( $_POST['_rating'] ) );if( isset( $_POST['_quality'] ) ) update_post_meta( $post_id, '_quality', esc_attr( $_POST['_quality'] ) );if( isset( $_POST['_country'] ) ) update_post_meta( $post_id, '_country', esc_attr( $_POST['_country'] ) );} ?> لینک به ارسال
imanfakhar 26231 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 $values = get_post_custom( $post->ID );$selected1 = isset( $values['_rating'] ) ? esc_attr( $values['_rating'][0] ) : '';$selected2 = isset( $values['_quality'] ) ? esc_attr( $values['_quality'][0] ) : '';$selected3 = isset( $values['_country'] ) ? esc_attr( $values['_country'][0] ) : '';$text0 = isset( $values['_director'] ) ? esc_attr( $values['_director'][0] ) : '';$text1 = isset( $values['_time'] ) ? esc_attr( $values['_time'][0] ) : '';$text2 = isset( $values['_genre'] ) ? esc_attr( $values['_genre'][0] ) : '';$text3 = isset( $values['_volume'] ) ? esc_attr( $values['_volume'][0] ) : '';$text4 = isset( $values['_stars'] ) ? esc_attr( $values['_stars'][0] ) : ''; 2 لینک به ارسال
سئو فاکس 27 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 بسیار ممنون , اما value ها کلا پاک شدن ! لینک به ارسال
imanfakhar 26231 ارسال شده در شهریور 93 گزارش بازنشر ارسال شده در شهریور 93 بجای <?php echo $text; ?>هم باید بگذارید <?php echo $text0; ?>و<?php echo $text1; ?>..... 2 لینک به ارسال
سئو فاکس 27 ارسال شده در شهریور 93 مالک گزارش بازنشر ارسال شده در شهریور 93 خیلی ممنون آقا ایمان , خدا خیرت بده لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری