رفتن به مطلب

Teymoor

عضو سایت
  • تعداد ارسال‌ها

    2
  • تاریخ عضویت

  • آخرین بازدید

نوشته‌ها ارسال شده توسط Teymoor

  1. سلام وقت بخیر  دوستان

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

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

    ممنون میشم راهنمایی کنید.

    * Adding extra field on New product popup/without popup form
    */
    <?php
    add_action( 'dokan_new_product_after_product_tags','new_product_field',10 );
    
    function new_product_field(){ ?>
    
         <div class="dokan-form-group">
    			  <label for="new_field" class="form-label">تلفن تماس: </label>
                  <input type="text" class="dokan-form-control" name="new_field" placeholder="<?php esc_attr_e( 'تلفن', 'dokan-lite' ); ?>">
            </div>
    		     <div class="dokan-form-group">
    			  <label for="new_field2" class="form-label">شماره یک: </label>
                  <input type="checkbox" class="checkbox" name="new_field2" placeholder="<?php esc_attr_e( 'یک', 'dokan-lite' ); ?>">
            </div>
    				     <div class="dokan-form-group">
    			  <label for="new_field3" class="form-label">شماره دو: </label>
                  <input type="checkbox" class="checkbox" name="new_field3" placeholder="<?php esc_attr_e( 'دو', 'dokan-lite' ); ?>">
            </div>
    
       <?php
    }
    
    /*
    * Saving product field data for edit and update
    */
    
     add_action( 'dokan_new_product_added','save_add_product_meta', 10, 2 );
     add_action( 'dokan_product_updated', 'save_add_product_meta', 10, 2 );
    
    function save_add_product_meta($product_id, $postdata){
    
        if ( ! dokan_is_user_seller( get_current_user_id() ) ) {
                return;
            }
    
            if ( ! empty( $postdata['new_field'] ) ) {
                update_post_meta( $product_id, 'new_field', $postdata['new_field'] );
            }
    		if( isset( $_POST[ 'new_field2' ] ) ) {
        update_post_meta( $postdata, 'new_field2', 'yes' );
    } else {
            delete_post_meta( $postdata, 'new_field2' );
    }
    		if ( ! empty( $postdata['new_field3'] ) ) {
                update_post_meta( $product_id, 'new_field3', $postdata['new_field3'] );
            }
    }
    
    /*
    * Showing field data on product edit page
    */
    
    add_action('dokan_product_edit_after_product_tags','show_on_edit_page',99,2);
    
    function show_on_edit_page($post, $post_id){
    $new_field         = get_post_meta( $post_id, 'new_field', true );
    $new_field2         = get_post_meta( $post_id, 'new_field2', true );
    $new_field3         = get_post_meta( $post_id, 'new_field3', true );
    ?>
       <div class="dokan-form-group">
            <input type="hidden" name="new_field" id="dokan-edit-product-id" value="<?php echo esc_attr( $post_id ); ?>"/>
            <label for="new_field" class="form-label"><?php esc_html_e( 'تلفن تماس: ', 'dokan-lite' ); ?></label>
            <?php dokan_post_input_box( $post_id, 'new_field', array( 'placeholder' => __( 'تلفن', 'dokan-lite' ), 'value' => $new_field ) ); ?>
            <div class="dokan-product-title-alert dokan-hide">
             <?php esc_html_e( 'Please enter product code!', 'dokan-lite' ); ?>
            </div>
         </div>
       <div class="dokan-form-group">
    			<input type="checkbox" class="checkbox" name="new_field2" <?php echo (isset($_POST['new_field2'])?"value='on'":"value='off'")?> <?php checked( $new_field2, 'on' ); ?> >
    			<label for="new_field2" class="form-label">شماره یک: </label>
    			<input type="checkbox" class="checkbox" name="new_field3" placeholder="<?php esc_attr_e( 'دو', 'dokan-lite' ); ?>">
    			<label for="new_field3" class="form-label">شماره دو: </label>			
    			
            
            <div class="dokan-product-title-alert dokan-hide">
             <?php esc_html_e( 'Please enter product code!', 'dokan-lite' ); ?>
            </div>
         </div>
    	 <?php
    }
    // showing on single product page
    add_action('woocommerce_single_product_summary','show_product_code',13);
    
    function show_product_code(){
          global $product;
    
            if ( empty( $product ) ) {
                return;
            }
     $new_field = get_post_meta( $product->get_id(), 'new_field', true );
     $new_field2 = get_post_meta( $product->get_id(), 'new_field2', true );
     $new_field3 = get_post_meta( $product->get_id(), 'new_field3', true );
    
    
            if ( ! empty( $new_field ) ) {
                ?>
    				  
                      <span class="details vendortel"><?php echo esc_attr__( 'تلفن تماس فروشنده: ', 'dokan-lite' ); ?> <strong><?php echo esc_attr( $new_field ); ?></strong></span>
    				  <p class="price2"></p>
                <?php
            }
    		if ( ! empty( $new_field2 ) ) {
                ?>
    				  
                      <span class="details vendortel"><?php echo esc_attr__( 'شماره یک: ', 'dokan-lite' ); ?> <strong>یک</strong></span>
    				  <p class="price2"></p>
                <?php
            }
    		if ( ! empty( $new_field3 ) ) {
                ?>
    				  
                      <span class="details vendortel"><?php echo esc_attr__( 'شماره دو: ', 'dokan-lite' ); ?> <strong>دو</strong></span>
    				  <p class="price2"></p>
                <?php
            }
    }

     

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