wp_upload_bits()


WordPress関数wp_upload_bits()は、アップロードディレクトリ内にファイルを作成し、そのパスを返すために使用されます。

構文

wp_upload_bits( string $name, string $deprecated, string $bits );

引数の説明:

  • $name (string) — ファイル名。
  • $deprecated (string) — この引数は使用されていません。空の文字列を渡してください。
  • $bits (string) — ファイルのコンテンツ。

例1: 基本的なファイルのアップロード

以下のコードは、基本的なファイルアップロードを実行します。

<?php
$file = wp_upload_bits( 'example.txt', '', 'これはファイルの内容です。' );
if ( ! $file['error'] ) {
    echo 'ファイルがアップロードされました: ' . $file['url'];
}
?>

例2: POSTリクエストからのファイルアップロード

フォームデータを使用してファイルをアップロードします。

<?php
if ( ! empty( $_FILES['uploaded_file'] ) ) {
    $uploaded_file = file_get_contents( $_FILES['uploaded_file']['tmp_name'] );
    $file = wp_upload_bits( $_FILES['uploaded_file']['name'], '', $uploaded_file );
    if ( ! $file['error'] ) {
        echo 'アップロード成功: ' . $file['url'];
    }
}
?>

例3: ランダムなファイル名でのアップロード

ランダムなファイル名を生成してアップロードします。

<?php
$file_name = wp_unique_filename( wp_upload_dir()['path'], 'file_' . wp_generate_password( 8, false ) . '.txt' );
$file = wp_upload_bits( $file_name, '', 'ランダムなファイル内容です。' );
if ( ! $file['error'] ) {
    echo 'ランダムファイル名: ' . $file['url'];
}
?>

例4: エラーチェック付きのアップロード

アップロードのエラーをチェックします。

<?php
$file = wp_upload_bits( 'error_test.txt', '', 'テストコンテンツ' );
if ( $file['error'] ) {
    echo 'エラー: ' . $file['error'];
} else {
    echo 'ファイルURL: ' . $file['url'];
}
?>

例5: JSONデータのアップロード

JSON形式のデータをファイルにアップロードします。

<?php
$json_data = json_encode( array( 'key' => 'value', 'another_key' => 'another_value' ) );
$file = wp_upload_bits( 'data.json', '', $json_data );
if ( ! $file['error'] ) {
    echo 'JSONアップロード成功: ' . $file['url'];
}
?>

注意事項:

  • 関数はファイルを直接アップロードするため、セキュリティ対策としてファイルの検証を行ってください。
  • アップロードされたファイルは適切なパーミッションで保存されることを確認してください。

関連機能: