source

워드프레스:관리 옵션 페이지에서 이미지 업로드

manycodes 2023. 2. 14. 21:33
반응형

워드프레스:관리 옵션 페이지에서 이미지 업로드

첫 워드프레스 플러그인을 개발 중입니다.사용자가 사용자 정의 템플릿에서 로고를 변경하고 사용자 정의 템플릿에서 색상표를 변경할 수 있도록 허용하기만 하면 됩니다.

관리 옵션 페이지를 만들었습니다.이제 사용자가 이미지를 업로드할 수 있는 필드를 추가하려고 합니다.wp-content/uploads 폴더에 이미지를 업로드하려면 어떻게 해야 하나요?여기까지는 테이블 안에 있습니다.

<td><input name="logo_image" type="file" id="logo_image" value="" /></td>

이것이 올바른 접근법입니까?이 경우 파일을 올바른 폴더로 이동하려면 어떻게 해야 합니까?워드프레스는 파일 업로드를 처리하는 독자적인 방법이 있지 않나요?

글로벌 커스텀옵션 함수에 이 코드를 추가합니다.

if(function_exists( 'wp_enqueue_media' )){
    wp_enqueue_media();
}else{
    wp_enqueue_style('thickbox');
    wp_enqueue_script('media-upload');
    wp_enqueue_script('thickbox');
}

<p><strong>Header Logo Image URL:</strong><br />
                <img class="header_logo" src="<?php echo get_option('header_logo'); ?>" height="100" width="100"/>
                <input class="header_logo_url" type="text" name="header_logo" size="60" value="<?php echo get_option('header_logo'); ?>">
                <a href="#" class="header_logo_upload">Upload</a>

</p>    


<script>
    jQuery(document).ready(function($) {
        $('.header_logo_upload').click(function(e) {
            e.preventDefault();

            var custom_uploader = wp.media({
                title: 'Custom Image',
                button: {
                    text: 'Upload Image'
                },
                multiple: false  // Set this to true to allow multiple files to be selected
            })
            .on('select', function() {
                var attachment = custom_uploader.state().get('selection').first().toJSON();
                $('.header_logo').attr('src', attachment.url);
                $('.header_logo_url').val(attachment.url);

            })
            .open();
        });
    });
</script>

상세 정보

또는

테마 및 플러그인의 미디어 업로더

여기에 이미지 설명 입력

워드프레스의 내장 기능을 사용할 수 있습니다.

<?php wp_handle_upload( $file, $overrides, $time ); ?>

그러면 파일이 업로드 폴더로 자동으로 이동합니다.

또는

직접 쓰셔도 됩니다.PHP기능.

자세한 내용은 여기를 참조해 주세요.-> Wordpress 파일 업로드

언급URL : https://stackoverflow.com/questions/22874469/wordpress-upload-image-in-admin-options-page

반응형