TYPO3 Logo
TYPO3 Explained
Release: 9.5

Loading data.

  • Introduction

TYPO3 A-Z

  • Authentication
  • Autoloading
  • Backend Access Control
    • Users and Groups
    • Roles
    • Access Control Options
    • Other Options
    • More About File Mounts
    • Backend Users Module
  • Backend Layout
  • Backend Modules
    • Backend Interface
    • The Backend Template View
    • Backend Module API
  • Backend Routing
  • Backend User Object
  • Bootstrapping
  • Caching Framework
    • Quick Start for Integrators
    • Configuration
    • Caching Framework Architecture
    • Cache Frontends
    • Cache backends
    • Developer Information
  • Coding Guidelines
    • Introduction
    • PHP Coding Guidelines
      • PHP File Formatting
        • General Requirements for PHP Files
        • File Structure
        • PHP Syntax Formatting
        • Using phpDoc
      • PHP Architecture
        • Modeling Cross Cutting Concerns
          • Static Methods, static Classes, Utility Classes
          • Traits
          • Services
        • Working With Exceptions
        • General Links
      • Coding: Best practices
        • Accessing the Database
        • Singletons
        • Static Methods
        • Localization
        • Unit Tests
        • Handling Deprecation
        • Namespaces and Class Names of User Files
        • Hook Naming
    • JavaScript Coding Guidelines
    • TypeScript Coding Guidelines
    • TypoScript Coding Guidelines
    • TSconfig Coding Guidelines
    • Xliff Coding Guidelines
    • Yaml Coding Guidelines
    • reStructuredText (reST)
  • Configuration
    • Configuration overview
    • Glossary
    • Feature Toggles
    • $GLOBALS
    • $GLOBALS['TYPO3_CONF_VARS']
    • TSconfig
    • TypoScript Syntax
      • What Is TypoScript?
      • Syntax
        • Introduction
        • Contexts
        • TypoScript syntax
        • Conditions
        • Includes
      • Sorting out Details
        • Parsing, Storing and Executing TypoScript
        • Myths, FAQ and Acknowledgements
      • The TypoScript Parser API
        • Introduction
        • Parsing Custom TypoScript
        • Implementing Custom Conditions
    • User Settings Configuration
      • ['columns'] Section
      • ['showitem'] Section
      • Extending the User Settings
      • Checking the Configuration
    • YAML API
    • YAML syntax
  • Constants
  • Content Elements & Plugins
    • Introduction
    • Create Custom Content Elements
    • Create Plugins
    • Add Elements to the Content Element Wizard
    • Flexforms
    • T3DataStructure
      • Elements
      • Sheet References
      • Parsing a Data Structure
    • Backend Layout
    • Best practices
  • Context API and Aspects
  • Context Sensitive Help (CSH)
    • The $TCA_DESCR Array
    • The Language Files for CSH
    • Implementing CSH
  • Crop Variants for Images
    • General Configuration
    • Crop variants configuration per content element
  • Database
    • Introduction
    • Configuration
    • Database Structure
    • Upgrade Table and Field Definitions
    • Basic CRUD
    • Class Overview
    • ConnectionPool
    • QueryBuilder
    • Connection
    • ExpressionBuilder
    • RestrictionBuilder
    • Statement
    • QueryHelper
    • Migrating from TYPO3_DB
    • Various Tips and Tricks
  • Deprecation
  • Digital Assets Management (FAL)
    • Introduction
    • Basic Concepts
    • Architecture
      • Overview
      • Folders
      • Database Structure
      • Components
      • Signals and Slots
    • Administration
      • Permissions
      • File Storages
      • Maintenance
    • Using FAL
      • Using FAL in the Frontend
      • TCA Definition
      • The ResourceFactory Class
      • Working With Files, Folders and File References
      • Working With Collections
      • Searching for Files
  • Directory Structure
  • Enumerations
  • Environment
  • Error and Exception Handling
    • Configuration
    • Error Handler
    • Production Exception Handler
    • Debug Exception Handler
    • Examples
    • How to extend the error and exception handling
  • Extension Development
    • Introduction
    • Extension Management
    • System and Local Extensions
    • Files and Locations
    • composer.json
    • Declaration File (ext_emconf.php)
    • Configuration Files (ext_tables.php & ext_localconf.php)
    • Naming Conventions
    • Extension Configuration (ext_conf_template.txt)
    • Extending the TCA Array
      • Storing the Changes
      • Customization Examples
      • Verifying the TCA
    • Choosing an extension key
    • Creating a new Extension
    • Creating a new Distribution
    • Adding Documentation
    • Publish Your Extension
      • Publish your extension in the TER
    • Other resources
  • Extension Scanner
  • Flash Messages
  • FormEngine
    • Introduction
    • Main Rendering Workflow
    • Data Compiling
    • Rendering
  • Form Protection Tool
  • Hooks and Signals
    • The Concept of "Hooks" and "Signals"
    • Hook Configuration
    • Creating Hooks
  • HTTP Request Library / Guzzle / PSR-7
  • Icon API
  • Internationalization and Localization
    • Introduction
    • Supported languages
    • Managing Translations
    • Translation Servers
      • Localization with Crowdin
        • Extension Integration
        • Workflow
        • Frequently Asked Questions (FAQ)
      • Localization with Pootle
      • Custom Translation Servers
    • XLIFF Format
    • Working with XLIFF files
  • JavaScript in TYPO3 Backend
    • AJAX in TYPO3 Backend
      • In-depth Presentation
      • Developing With AJAX in the TYPO3 Backend
    • RequireJS in the TYPO3 Backend
      • Use RequireJS in Your Own Extension
      • Dependency Handling
      • Loading Your Own or Other RequireJS Modules
      • Shim Library to Use it as Own RequireJS Modules
  • Linkbrowser
    • LinkBrowser API
    • LinkHandler Api
  • Locking API
  • Logging Framework
    • Quickstart
    • Logger
    • Configuration of the Logging System
    • The LogRecord Model
    • Log Writers
    • Log Processors
  • Mail API
  • Namespaces
  • Page Types
  • Password Hashing
  • Request Handling
    • TYPO3 Request Object
  • Rich Text Editors (RTE)
    • Rich Text Editors in the TYPO3 Backend
      • Introduction
      • Plugging a RTE
    • Transformations
      • Introduction
      • Transformation Overview
      • Custom Transformations API
    • Historical Perspective on RTE Transformations
      • Properties and Transformations
      • RTE Transformations in Content Elements
  • Routing - "Speaking URLs" in TYPO3
    • Introduction to Routing
    • Page based Routing
    • Advanced Routing Configuration (for Extensions)
    • Extending Routing
    • Collection of various routing examples
  • Security Guidelines
    • Introduction
    • The TYPO3 Security Team
    • General Information
    • Types of Security Threats
    • General Guidelines
    • Guidelines for System Administrators
    • Guidelines for TYPO3 Integrators
    • Guidelines for Editors
    • Backup Strategy
    • Detect, Analyze and Repair a Hacked Site
  • SEO
    • MetaTag API (SEO)
    • PageTitle API
    • XML Sitemap
  • Services
    • Introduction
    • Using Services
      • Service Precedence
      • Simple Use
      • Use With Subtypes
      • Calling a Chain of Services
    • Configuration
      • Registration Changes
      • Service Configuration
      • Service Type Configuration
    • Developer's Guide
      • Introducing a New Service Type
      • Implementing a Service
      • Service API
      • Service-related API
  • Session Storage Framework
  • Site Handling
    • Basics
    • Creating a new Site
    • Base Variants
    • Adding Languages
    • Error Handling
    • Writing a Custom Page Error Handler
    • Static Routes
    • Using Environment Variables in Site Configuration
    • Using Site Configuration in TypoScript
    • Using Site Config in Conditions
    • CLI Tools for Site Handling
    • PHP API: Accessing Site Configuration
    • Extending Site Configuration
  • Soft References
  • Symfony Console Commands (cli)
  • Symfony Expression Language
  • System Categories
  • System Collections
  • System Log
  • System Registry
  • TCE (TYPO3 Core Engine) & DataHandler
    • Introduction
    • Database: DataHandler Basics (Formerly Known as TCEmain)
    • Using DataHandler in Scripts
    • The "/record/commit" Route
    • File Functions Basics
    • The "tce_file.php" API
  • Testing
    • History
    • Core testing
    • Extension testing
    • Project testing
    • Writing unit tests
    • Writing functional tests
    • Writing acceptance tests
    • FAQ
  • Upgrade Wizards
    • The Concept of Upgrade Wizards
    • Creating Generic Upgrade Wizards
    • class.ext_update.php
  • Versioning and Workspaces
  • XCLASSes (Extending Classes)
  • About This Manual
  • Sitemap
  • Index

PAGE CONTENTS

  • Architecture
  1. Start
  2. Digital Assets Management (FAL)
  3. Architecture
View source

Display settings



Attention

TYPO3 v9 has reached its end-of-life September 30th, 2021 and is not maintained by the community anymore. Looking for a stable version? Use the version switch on the top left.

You can order Extended Long Term Support (ELTS) here: TYPO3 ELTS.

Architecture¶

This chapter provides an in-depth look into the architecture of FAL.

  • Overview
  • Folders
    • Processed Files
    • Migrated Files
  • Database Structure
    • sys_file
    • sys_file_metadata
    • sys_file_reference
    • sys_file_processedfile
    • sys_file_collection
    • sys_file_storage
    • sys_filemounts
  • Components
    • Files and Folders
    • File References
    • Storage
    • Drivers
    • The File Index
    • Collections
    • Services
  • Signals and Slots
    • \TYPO3\CMS\Core\Resource\ResourceStorage
    • \TYPO3\CMS\Core\Resource\ResourceFactory
    • \TYPO3\CMS\Core\Resource\Index\FileIndexRepository
    • \TYPO3\CMS\Core\Resource\Index\MetaDataRepository
    • \TYPO3\CMS\Core\Resource\Service\FileProcessingService
  • Previous
  • Next
  • Home
  • Contact
  • Issues
  • Repository

Last updated: Sep 02, 2022 22:01

Last rendered: Sep 02, 2022 22:04

  • TYPO3 Theme 4.7.6
  • DRC v3.0.dev27
© Copyright since 2012 by the TYPO3 contributors
  • Legal Notice
  • Privacy Policy
  • Code of Conduct