رفتن به مطلب

تغییر آدرس آپلود فایل ها در edd


design3r

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

سلام و وقت بخیر خدمت دوستان عزیز

تو افزونه edd وقتی محصولی میزاریم یه فایلی رو آپلود میکنیم تو این مسیر آپلود میشه ( wp-content/uploads/edd/2020) چطور میشه این مسیر رو تغییر بدم؟میخوام تو همون روت یه پوشه درست کنمکل فایلا بره تو اون

لینک به ارسال

یکی از دوستان یه لینکی داد برای تغییر مسیر آپلود edd ولی من ازش سر در نیاوردم اگر دوستان کسی هست راهنمایی کنه ممنون میشم

 

https://wordpress.stackexchange.com/questions/67763/how-to-change-upload-directory-in-wp-handle-upload

لینک به ارسال

کافیه کدی که توی آدرس هست رو بزارید توی فایل فانکشن پوسته تون.

این هست:
 

function edd_set_upload_dir( $upload ) {
    $upload['subdir'] = '/edd' . $upload['subdir'];
    $upload['path'] = $upload['basedir'] . $upload['subdir'];
    $upload['url']  = $upload['baseurl'] . $upload['subdir'];
    return $upload;
}

function edd_change_downloads_upload_dir() {
    global $pagenow;

    if ( ! empty( $_REQUEST['post_id'] ) && ( 'async-upload.php' == $pagenow || 'media-upload.php' == $pagenow ) ) {
        if ( 'download' == get_post_type( $_REQUEST['post_id'] ) ) {
            add_filter( 'upload_dir', 'edd_set_upload_dir' );
        }
    }
}
add_action( 'admin_init', 'edd_change_downloads_upload_dir', 999 );

 

 

اینهم یک راه حل دیگه هست:
 

    add_filter( 'admin_init' , 'check_if_we_should_change_upload_dir', 999 );
    function check_if_we_should_change_upload_dir() {   
            global $pagenow;
            $referrer = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : '';
            if( $referrer != '' ) {
                $explode_1 = explode( 'page=' , $referrer );
                if( isset( $explode_1[1] ) ) {
                    $referring_page = explode( '&id=' , $explode_1[1] );
                    if( isset( $referring_page[0] ) && $referring_page[0] == 'custom-plugin-page' && ( 'async-upload.php' == $pagenow || 'media-upload.php' == $pagenow ) ) {
                        add_filter( 'upload_dir', 'alter_the_upload_dir' );
                    }
                }
            }
       }


  function alter_the_upload_dir( $upload ) {
        $upload['subdir'] = '/custom-directory' . $upload['subdir'];
        $upload['path'] = $upload['basedir'] . $upload['subdir'];
        $upload['url']  = $upload['baseurl'] . $upload['subdir'];
        return $upload;
    }

 

لینک به ارسال
در 5 ساعت قبل، Morteza گفته است :

کافیه کدی که توی آدرس هست رو بزارید توی فایل فانکشن پوسته تون.

این هست:
 


function edd_set_upload_dir( $upload ) {
    $upload['subdir'] = '/edd' . $upload['subdir'];
    $upload['path'] = $upload['basedir'] . $upload['subdir'];
    $upload['url']  = $upload['baseurl'] . $upload['subdir'];
    return $upload;
}

function edd_change_downloads_upload_dir() {
    global $pagenow;

    if ( ! empty( $_REQUEST['post_id'] ) && ( 'async-upload.php' == $pagenow || 'media-upload.php' == $pagenow ) ) {
        if ( 'download' == get_post_type( $_REQUEST['post_id'] ) ) {
            add_filter( 'upload_dir', 'edd_set_upload_dir' );
        }
    }
}
add_action( 'admin_init', 'edd_change_downloads_upload_dir', 999 );

 

 

اینهم یک راه حل دیگه هست:
 


    add_filter( 'admin_init' , 'check_if_we_should_change_upload_dir', 999 );
    function check_if_we_should_change_upload_dir() {   
            global $pagenow;
            $referrer = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : '';
            if( $referrer != '' ) {
                $explode_1 = explode( 'page=' , $referrer );
                if( isset( $explode_1[1] ) ) {
                    $referring_page = explode( '&id=' , $explode_1[1] );
                    if( isset( $referring_page[0] ) && $referring_page[0] == 'custom-plugin-page' && ( 'async-upload.php' == $pagenow || 'media-upload.php' == $pagenow ) ) {
                        add_filter( 'upload_dir', 'alter_the_upload_dir' );
                    }
                }
            }
       }


  function alter_the_upload_dir( $upload ) {
        $upload['subdir'] = '/custom-directory' . $upload['subdir'];
        $upload['path'] = $upload['basedir'] . $upload['subdir'];
        $upload['url']  = $upload['baseurl'] . $upload['subdir'];
        return $upload;
    }

 

با عرض سلام خدمت شما دوست عزیز

من متوجه نشدم الان چطور باید عوض کنم

آدرسی که در حال حاظر فایلایی که از طریق edd آپلود میکنم میره تو مسیر wp-content/uploads/edd/2020  این مسیر رو تو کجای کدی که دادید باید بزارم؟

و آدرس جدید رو باید کجای کد بزارم؟

 

ممنون میشم یخورده مبتدی تر توضیح بدید که منم متوجه بشم

لینک به ارسال

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

اگر کد اول رو استفاده میکنید مسیر دلخواه این هست:

/edd

 

اگر کد دوم رو استفاده می کنید مسیر این هست:

/custom-directory
لینک به ارسال
در 1 ساعت قبل، Morteza گفته است :

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

اگر کد اول رو استفاده میکنید مسیر دلخواه این هست:


/edd

 

اگر کد دوم رو استفاده می کنید مسیر این هست:


/custom-directory

سلام کد اول رو زدم ارور داد اصلا کار نکرد

کد دوم هم زدم مسیر آپلود فایل تغییری نکرد تو فانکشن پوسنه هم ریختم

لینک به ارسال

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

فعلا راه حل دیگه ای ندارم

لینک به ارسال

دوستان عزیز من یه سوال دارم واقعا برای هیچ کس از دوستانی که دارن با edd کار میکنن امنیت مهم نیست؟؟؟؟

مگه میشه همچین چیزی؟؟؟

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

الان 1 هفتست دارم از هرجایی که فکرشو کنید میپرسم یک نفر نیست جواب درست به آدم بده.

لینک به ارسال
  • 3 هفته بعد...

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

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

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

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

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

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

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

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

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