bitrix-files について
ストレージ、アップロード、配信、UI アップローダーのワークフローを扱う Bitrix 開発者向けファイル管理スキルです。ファイル ID、検証、非公開ファイルへのアクセス、削除に関する安全な手順を示します。
主な機能
- 01CFile によるファイル保存の管理
- 02アップロードファイルの検証
- 03UI アップローダーの保留ファイル処理
- 04権限確認を伴う非公開ファイル配信
活用シーン
- 01ID を維持したファイルの保存・置換
- 02アクション内でのアップロード検証
- 03権限確認後の非公開ファイル配信
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bxmaximum/ bitrix-framework-skills --skill bitrix-filesインストール後、Claude Code で/bitrix-filesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
rules/delivery.mdstorage.mdui-uploader.mduploads.md詳細
Bitrix ファイル
ベースライン:main 23.0+ · 検証済み:main 26.800.0、ui 26.687.0
| タスク | 参照先 |
|---|---|
保存、読み取り、サイズ変更、削除、b_file の構成、クラウド、ID を維持したままのコンテンツ差し替え | rules/storage.md |
アクションでアップロードを受け付ける:検証、MIME、レガシーの main.file.input | rules/uploads.md |
ui.uploader バックエンド:UploaderController、保留中ファイルの確定 | rules/ui-uploader.md |
ファイルを配信する:BFile、非公開ファイル、ビューアー | rules/delivery.md |
JS ウィジェット(ui.uploader、ui.viewer):bitrix-ui。.settings.php のアップローダー設定:bitrix-settings。ファイルフィールド:bitrix-iblocks、bitrix-highloadblock。
不変条件
b_fileへの書き込みはCFile経由でのみ行います。FileTableは読み取り専用です。add/update/deleteを呼び出すとNotImplementedExceptionがスローされます。ファイルの ID を保存し、パスは保存しないでください。- URL には
CFile::GetFileArray()['SRC']またはCFile::GetPath()を使用します。ローカルのバイト列にはCFile::MakeFileArray($id)['tmp_name']を使用します。/upload/とSUBDIRを自分で連結しないでください。クラウド、upload_dirオプション、差し替えによって動作しなくなります。 - クライアント名、MIME、サイズは信頼できない値です。拡張子を許可リストで制限し、コンテンツから MIME を判定し、画像をデコードしてください。
- ユーザー入力を
CFile::MakeFileArray()に渡さないでください。この関数はローカルパス、b_file ID、URL を読み取ります。 /upload/内のすべてのファイルは URL からアクセス可能です。非公開ファイルは、権限を確認するアクション経由で配信してください。CFile::Delete()は物理ファイルとサイズ変更キャッシュを削除します。この操作は元に戻せません。
コメント
Markdown 対応