Welcome to this comprehensive glossary of Silverstripe terms. Silverstripe is a powerful, open-source Content Management System (CMS) and Framework known for its flexibility and usability. Whether you're a developer, a content creator, or someone looking to understand more about the inner workings of Silverstripe, this glossary can serve as a valuable resource.
At Somar Digital, a leading Silverstripe partner based in Wellington, New Zealand, we understand the importance of a solid foundation of knowledge. This glossary is designed to provide that, covering everything from basic concepts to more complex features of the Silverstripe ecosystem.
By familiarising yourself with these terms, you'll be better equipped to utilise the full potential of Silverstripe, whether you're creating a new website, managing content, or working on web application development. If at any point you require professional assistance or want to explore how Silverstripe can benefit your business specifically, don't hesitate to reach out to us. Let's start our Silverstripe journey together.
AJAX
AJAX, or Asynchronous JavaScript and XML, is used in Silverstripe to allow for smooth, asynchronous updates on web pages without reloading the entire page.
Asset Admin
Asset Admin in Silverstripe allows users to manage uploaded files and images. It provides a simple interface for uploading, editing, and deleting files.
Behat Testing
Behat is a PHP testing framework. Silverstripe uses Behat for behavioural testing, validating that the application behaves as expected from a user's perspective.
Bootstrap
Bootstrap is a popular front-end framework compatible with Silverstripe. It aids in the creation of responsive and mobile-first web applications.
CMS Fields
CMS Fields in Silverstripe refer to the form fields that appear in the CMS for content authors to edit. These can be customised on a per-page basis.
Controller
In Silverstripe, the Controller class processes incoming requests. It handles user input, manipulates the model, and selects a view to render.
Content Blocks
Content Blocks, or elemental blocks, in Silverstripe provide a flexible way to build up page content from individual components, such as banners, text blocks, or image galleries.
DataExtension
DataExtension in Silverstripe allows adding new fields or methods to a DataObject class. It enables developers to extend an object's functionality without modifying the original class.
DataObject
A DataObject in Silverstripe is a basic unit of data storage. It represents a row in a database table and can be used to model anything that needs to be stored.
Database Config
Database Config refers to the settings in Silverstripe that define how to connect to the database, including credentials and the database server to be used.
Dev Tasks
Dev Tasks in Silverstripe are scripts that perform various tasks, such as rebuilding the database or performing data migration.
Director
Director is Silverstripe's front controller. It handles incoming HTTP requests and routes them to the correct controller function.
Environment Types
Environment Types in Silverstripe (dev, test, live) represent different stages of the development workflow. They determine how errors are handled and which features are available.
Error Handling
Error Handling in Silverstripe refers to the methods and processes used to handle errors and exceptions that occur during the execution of a Silverstripe application.
Extensions and Data Extensions
In Silverstripe, these features allow you to extend core functionality without modifying the original code, promoting modular development and maintainability.
FieldList and TabSet
In Silverstripe, FieldList and TabSet are used to organise form fields. They group related fields together, enhancing user experience.
Fluent Module
The Fluent Module is an extension for Silverstripe that provides additional features for managing and serving multilingual content.
Form
The Form class in Silverstripe handles form creation, validation, and processing, making it easier to manage user submissions.
GridField
GridField is a Silverstripe component that allows developers to display and manage lists of data in a tabular format, enhancing data presentation and management.
HasManyList
In Silverstripe, a HasManyList represents a one-to-many relationship from one DataObject to many others. It allows developers to establish and manipulate these relationships.
i18n
i18n stands for internationalisation. In Silverstripe, this feature supports translation of content, helping to create multilingual websites.
Injector
The Injector in Silverstripe is a service container that manages the instantiation of objects, making it easier to manage dependencies and promote loose coupling.
LeftAndMain
LeftAndMain is the controller class for the Silverstripe admin interface. It handles the layout and basic functionality of the CMS backend.
ManyManyList
A ManyManyList in Silverstripe represents a many-to-many relationship between two DataObjects. This powerful feature allows complex relationships to be modelled and manipulated.
Model
In the MVC paradigm of Silverstripe, the Model represents the data and the business logic. It's responsible for retrieving and storing data, often from a database.
ModelAdmin
In Silverstripe, ModelAdmin provides a straightforward way to create administrative interfaces for managing DataObjects, without the need for manual code.
Module
A Module in Silverstripe is a package of code that adds new functionality to the base Silverstripe CMS(external link). Modules can be freely installed, uninstalled, and replaced.
MVC
MVC stands for Model View Controller, a design pattern Silverstripe adheres to. It separates the manipulation of data (Model) from the user interface (View) and user inputs (Controller).
ORM
ORM, or Object-Relational Mapping, is a coding technique used in Silverstripe. It transforms data between incompatible type systems like databases and programming languages.
Page
In Silverstripe, a Page represents a single webpage. Each page corresponds to a URL, has a template for its appearance, and contains fields for storing content.
PaginatedList
PaginatedList is a class in Silverstripe that allows for the splitting of large data sets into smaller pages, providing a better user experience.
Queued Jobs
Queued Jobs in Silverstripe are tasks that can be deferred or run in the background, which is useful for tasks that are time-consuming or need to be run at specific times.
Requirements
In Silverstripe, the Requirements class is responsible for managing JavaScript and CSS files, ensuring they are included and linked properly in your templates.
Security and Member
These classes manage authentication (who you are) and authorisation (what you can do) in Silverstripe, ensuring your website stays secure.
Shortcodes
Shortcodes in Silverstripe are placeholders used in the content editor that get replaced with dynamic content when the page is rendered.
Silverstripe CMS
Silverstripe CMS is an open-source platform that allows you to easily create and manage the content and structure of your website. It's user-friendly, flexible and robust.
Silverstripe Framework
The Silverstripe Framework provides developers with a set of tools and components to construct complex websites and web applications, promoting clean code and good programming practices.
Silverstripe GraphQL
Silverstripe GraphQL is a module that provides an API for interfacing with Silverstripe using GraphQL, a modern data query and manipulation language.
SilverStripe\ORM\Search\FulltextSearchable
FulltextSearchable is a class in Silverstripe that allows for full-text search of website content, improving the user's ability to find relevant information.
Silverstripe Reports
Silverstripe Reports is a module that provides an interface for users to generate and view reports. Reports can give insights into the data stored in the CMS.
Silverstripe SiteTree
The SiteTree in Silverstripe represents the hierarchical structure of the pages on a website. It provides a clear, easy way to manage and navigate the website content.
SiteConfig
SiteConfig in Silverstripe provides a place to set global settings that apply to the whole site, such as the site title and admin email.
SSViewer
SSViewer is Silverstripe's templating engine. It processes templates and data to generate the HTML that is sent to the client's web browser.
Template Language
Silverstripe has its own template language. It's used in SSViewer to render data from PHP into HTML, allowing for dynamic content.
Themes
Themes in Silverstripe provide the front-end design for a website. They include template files, images, CSS, and JavaScript. Multiple themes can be installed, and one is activated at a time.
UploadField
UploadField is a Silverstripe form field used for uploading files. It provides a user-friendly interface for selecting and uploading files.
Versioned
Versioned is Silverstripe's content version control system. It allows users to draft, preview and rollback changes, ensuring content integrity.
YAML Configuration
Silverstripe uses YAML for its configuration files. YAML files are used to define how the CMS and modules should behave, providing flexibility and control over functionality.
.env File
The .env file in Silverstripe is where you define environment variables, such as database credentials and the base URL for the site.
This comprehensive glossary equips you with key Silverstripe terms, helping you navigate this powerful content management system. Silverstripe offers robust features for creating adaptable, secure websites and applications.
At Somar Digital, a proud Silverstripe partner in Wellington, New Zealand, we leverage our deep understanding of Silverstripe to build solutions tailored to your needs. Whether you're initiating a new project or optimising an existing one, speak to Somar Digital today.