sos

نحوه تغییر آدرس فایل

6 پست در این موضوع قرار دارد

ارسال شده در (ویرایش شده)

سلام

توی کد زیر من نیاز دارم مسیر پیش فرضشو که به پوشه آپلود اشاره میکنه رو به یه مسیر دیگه غیر از پوشه آپلود تغییر بدم مثلا :

www.domain.com/

www.domain.com/newfile

www.domain/wp-contant

www.domain/wp-contant/plugin

اگر میشه که هم ماهی گیری بهم یاد بدید و ماهی بهم بدید :D که چطور باید این کارو انجام بدم :

کد موردنظرمم اینه :

	public function save_css_file() {

$css = $this->get_css();

/* Temporarily change default WP upload dir, to be able to
* use wp_upload_bits (instead of WP_filesystem) for the upload and not have it upload to /2012/02/ etc
* as it usually would
*/
add_filter( 'upload_dir', array( &$this, 'base_upload_dir' ) );
$updir_now = wp_upload_dir(); // [url="http://www.mydomain.com/wp-content/uploads/themename"]http://www.mydomain....loads/themename[/url]

// delete existing style.css (wp_upload_bits appends number, does not overwrite existing files)
$css_path = $updir_now['path'] . '/style.css';
if( file_exists( $css_path ) )
unlink( $css_path );

$css = $this->compress( $css ); // Compress
wp_upload_bits( 'style.css', null, $css ); // Save
remove_filter( 'upload_dir', array( &$this, 'base_upload_dir' ) ); // Change upload_dir back to WP default
}



public function save_javascript_file() {

$js = bfa_get_javascript();

/* Temporarily change default WP upload dir, to be able to
* use wp_upload_bits (instead of WP_filesystem) for the upload and not have it upload to /2012/02/ etc
* as it usually would
*/
add_filter( 'upload_dir', array( &$this, 'base_upload_dir' ) );
$updir_now = wp_upload_dir();

// delete existing style.css (wp_upload_bits appends number, does not overwrite existing files)
$js_path = $updir_now['path'] . '/javascript.js';
if( file_exists( $js_path ) )
unlink( $js_path );

code path.txt

ویرایش شده در توسط Morteza
0

به اشتراک گذاری این پست


لینک به پست

فکر میکنم در کد کامل تابع base_upload_dir کارش همین باشه


add_filter('upload_dir', 'my_upload_dir');
$upload = wp_upload_dir();
remove_filter('upload_dir', 'my_upload_dir');
funcion my_upload_dir($upload) {
$upload['subdir'] = '/sub-dir-to-use' . $upload['subdir'];
$upload['path'] = $upload['basedir'] . $upload['subdir'];
$upload['url'] = $upload['baseurl'] . $upload['subdir'];
return $upload;
}

http://yoast.com/smarter-upload-handling-wp-plugins/

5

به اشتراک گذاری این پست


لینک به پست

یه سوال دیگه من یه مشکلی دارم اونم اینه که پوشه آپلودمو به سابدامین فرستادم از طریق همون رسانه که الان شده این :

www.dl.domain.com/upload

اما میخوام از پلاگینی استفاده کنم که میاد توی پوشه آپلود دوتا فایل css , js میسازه اما چون من پوشه آپلودمو جابه جا کردم زبون نفهمه و بیچاره خبر نداره و میاد توی همون شاخه اصلی سایت یعنی

/wp-contant/upload

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

حالا میخوام دستی بهش بگم بابا فایلات رو نمیخواد بری توی مسیر جدید پلودام پیدا کنی بیا برو به مسیر :

www.domain.com/wp-contant/upload

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

خوش تعریف کرده که متغیر updir$ مسیر پیش فرض آپلود وردپرسه یعنی این:

$updir = wp_upload_dir()

که میشه

www.dl.domain.com/upload

حالا چه طور میتونم تعریف کنم که updir$ باشه این :

www.domain.com/wp-contant/upload

0

به اشتراک گذاری این پست


لینک به پست

راه ساده: میتونید یک فیلد تنظیم بزارید و مسیر اصلی رو بهش بدید.

یا اینکه از توی خود سورس به متغییر updir دستی آدرس بدید.

3

به اشتراک گذاری این پست


لینک به پست

مشکل اینه که php بلد نیستم .

کدوم از اینا درسته یا صحیحش کدومه :

$updir = "http://www.domain.com/wp-contant/upload"

یا

$updir = 'http://www.domain.com/wp-contant/upload'

0

به اشتراک گذاری این پست


لینک به پست

مشکل اینه که php بلد نیستم .

کدوم از اینا درسته یا صحیحش کدومه :

$updir = "http://www.domain.co...contant/upload"

یا

$updir = 'http://www.domain.co...-contant/upload'

دو تاش یکی هست!

2

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری