Skip to content

Kirby 3.9.4


Creates a new file on disk and returns the File object. The store is used to handle file writing, so it can be replaced by any other way of generating files.

File::create(array $props, bool $move = false): Kirby\Cms\File


Name Type Default Description
$props * array
$move bool false If set to true, the source will be deleted

Return type



Parent class


$props parameter

Name Type Description
blueprint array Sets the Blueprint object
content array Sets the Content object
filename * string Sets the filename
parent * Kirby\Cms\Model Sets the parent model object
root string Always set the root to null, to invoke
auto root detection
source * string source thingy
template string
translations array Create the translations collection from an array
url string Sets the url


$file = File::create([
  'source'     => kirby()->root('assets').'/images/some-image.jpg',
  'parent'     => page('photography')->children()->listed()->first(),
  'filename'   => 'new-image.jpg',
  'template' => 'cover',
  'content'   => [
    'caption'   => 'A nice view from above',