PageTheme
class PageTheme extends Theme (View source)
Traits
This is a trait you can add to your theme's PageTheme class if it is built with the Concrete bedrock. That means it includes the bedrock SCSS and JS files. If your theme's JS and CSS files include these starter assets, you'll automatically need to require jQuery and Bootstrap4, and you'll automatically support the bootstrap4 grid system.
Constants
| E_THEME_INSTALLED | 
                     
  | 
            
| THEME_EXTENSION | 
                     
  | 
            
| FILENAME_TYPOGRAPHY_CSS | 
                     
  | 
            
Properties
| $error | from ConcreteObject | ||
| protected | $pThemeName | from Theme | |
| protected | $pThemeID | from Theme | |
| protected | $pThemeDescription | from Theme | |
| protected | $pThemeDirectory | from Theme | |
| protected | $pThemeThumbnail | from Theme | |
| protected | $pThemeHandle | from Theme | |
| protected | $pThemeURL | from Theme | |
| protected | $pThemeIsPreview | from Theme | |
| protected | $pkgID | from Theme | |
| protected | $stylesheetCachePath | from Theme | |
| protected | $stylesheetCacheRelativePath | from Theme | |
| protected string|null|false | $pThemeGridFrameworkHandle | The handle of the grid framework supported by this theme.  | 
                from Theme | 
Methods
Mark an asset as provided by this theme.
Get the all the themes available in the /application/themes directory.
Get a theme from the file system.
Checks the filesystem and returns true if custom skins are available for the theme.
Returns a skin object when passed a string identifier
Get an installed theme given its handle.
Get the instance representing an installed theme.
Grab all files in theme that are PHP based (or html if we go that route) and then lists them out, by type, allowing people to install them as page type, etc.
Get the theme details by reading a directory containing the theme.
Export this theme by creating the XML nodes under the provided XML node.
Export all the installed themes by creating the XML nodes under the provided XML node.
Install a theme.
No description
No description
Checks to see whether the capability of theme documentation exists for this theme.
Returns an array of documentation pages for this theme
(Re)Scan the theme folder to check if it contains the page_theme.php file: if so, marks the theme as having a controller.
Get the (English) name of the theme.
Get the localized name for this theme (escaped accordingly to $format).
Get the handle of the package providing this theme (if available).
Get the (English) description of this theme.
Get the localized description for this theme (escaped accordingly to $format).
Set the absolute path of a directory where the CSS stylesheet files should be stored.
Set the path of a directory where the CSS stylesheet files should be stored, relative to the website root directory.
Get the absolute path of a directory where the CSS stylesheet files should be stored.
Get the path of a directory where the CSS stylesheet files should be stored, relative to the website root directory.
Get the grid framework supported by this theme.
Get the handles of the features supported by this theme.
No description
No description
Details
        
                            
    loadError($error)
        
    
    No description
        
                            
    isError()
        
    
    No description
        
                            
    getError()
        
    
    No description
        
                            
    setPropertiesFromArray($arr)
        
    
    No description
        
                static            
    camelcase($file)
        
    
    No description
        
                static            
    uncamelcase($string)
        
    
    No description
        in 
Theme at line 63
                            
    __construct()
        
    
    No description
        in 
Theme at line 73
                static            Theme[]
    getGlobalList()
        
    
    Get the installed themes provided by packages.
        in 
Theme at line 83
                static            Theme[]
    getLocalList()
        
    
    Get the installed themes provided by the core.
        in 
Theme at line 95
                static            Theme[]
    getListByPackage($pkg)
        
    
    Get the installed themes provided by a package.
        in 
Theme at line 107
                static            Theme[]
    getList(string|null $where = null)
        
    
    Get the installed themes.
        in 
Theme at line 129
                static            string[]
    getInstalledHandles()
        
    
    Get the handles of all the installed themes.
        in 
Theme at line 142
                            
    providesAsset(string $assetType, string|false $assetHandle = null)
        
    
    Mark an asset as provided by this theme.
        in 
Theme at line 154
                            
    requireAsset()
        
    
    Mark an asset as reuired by this theme.
Accepts the same arguments as \Concrete\Core\Http\ResponseAssetGroup::requireAsset().
        in 
Theme at line 168
                static            Theme[]
    getAvailableThemes(bool $filterInstalled = true)
        
    
    Get the all the themes available in the /application/themes directory.
        in 
Theme at line 210
                static            Theme|null
    getByFileHandle(string $handle, string $dir = DIR_FILES_THEMES, string $pkgHandle = '')
        
    
    Get a theme from the file system.
        in 
Theme at line 239
                            bool
    hasSkins()
        
    
    Returns true if theme or user preset skins are available
        in 
Theme at line 250
                            bool
    hasPresetSkins()
        
    
    Checks the filesystem and returns true if custom skins are available for the theme.
        in 
Theme at line 256
                            Record
    getSkinDirectoryRecord()
        
    
    No description
        in 
Theme at line 269
                            array
    getPresetSkins()
        
    
    No description
        in 
Theme at line 283
                            array
    getCustomSkins()
        
    
    No description
        in 
Theme at line 294
                            array
    getSkins()
        
    
    No description
        in 
Theme at line 310
                            bool
    isThemeCustomizable()
        
    
    No description
        in 
Theme at line 318
                            Customizer|null
    getThemeCustomizer()
        
    
    No description
        in 
Theme at line 329
                            SkinInterface|null
    getThemeDefaultSkin()
        
    
    Gets the default skin for this theme
        in 
Theme at line 340
                            SkinInterface|null
    getSkinByIdentifier(string $skinIdentifier)
        
    
    Returns a skin object when passed a string identifier
        in 
Theme at line 356
                            mixed|void
    jsonSerialize()
        
    
    No description
        in 
Theme at line 380
                            
    enablePreviewRequest()
        deprecated
    
    deprecated
No description
        in 
Theme at line 393
                            Stylesheet[]
    getThemeCustomizableStyleSheets()
        deprecated
    
    deprecated
Get all the customizable LESS stylesheets.
        in 
Theme at line 420
                            bool
    isThemePreviewRequest()
        deprecated
    
    deprecated
No description
        in 
Theme at line 435
                            Stylesheet
    getStylesheetObject(string $stylesheet)
        deprecated
    
    deprecated
No description
        in 
Theme at line 459
                            string
    getStylesheet(string $stylesheet)
        deprecated
    
    deprecated
No description
        in 
Theme at line 497
                            CustomStyle|null
    getThemeCustomStyleObject()
        deprecated
    
    deprecated
No description
        in 
Theme at line 519
                static            Theme|null
    getByHandle(string $pThemeHandle)
        
    
    Get an installed theme given its handle.
        in 
Theme at line 550
                static            Theme|null
    getByID(int $pThemeID)
        
    
    Get an installed theme given its ID.
        in 
Theme at line 582
                static    protected        Theme|null
    populateThemeQuery(string $where, array $args)
        
    
    Get the instance representing an installed theme.
        in 
Theme at line 633
                static            Theme|null
    add(string $pThemeHandle, Package|Package|null $pkg = null)
        
    
    Install a theme given its handle.
        in 
Theme at line 662
                            File[]
    getFilesInTheme()
        
    
    Grab all files in theme that are PHP based (or html if we go that route) and then lists them out, by type, allowing people to install them as page type, etc.
..
        in 
Theme at line 715
                static        private    stdClass
    getThemeNameAndDescription(string $dir, string $pThemeHandle, string $pkgHandle = '')
        
    
    Get the theme details by reading a directory containing the theme.
        in 
Theme at line 797
                            
    export(SimpleXMLElement $node)
        
    
    Export this theme by creating the XML nodes under the provided XML node.
        in 
Theme at line 815
                static            
    exportList(SimpleXMLElement $xml)
        
    
    Export all the installed themes by creating the XML nodes under the provided XML node.
        in 
Theme at line 834
                static    protected        Theme|null
    install(string $dir, string $pThemeHandle, int|null $pkgID)
        
    
    Install a theme.
        
                            DocumentationProviderInterface|null
    getDocumentationProvider()
        
    
    No description
        
                            ColorCollection|null
    getColorCollection()
        
    
    No description
        in 
Theme at line 893
                            
    hasColorCollection()
        
    
    No description
        in 
Theme at line 903
                            bool
    supportsThemeDocumentation()
        
    
    Checks to see whether the capability of theme documentation exists for this theme.
        in 
Theme at line 912
                            Page|null
    getThemeDocumentationParentPage()
        
    
    No description
        in 
Theme at line 926
                            bool
    hasThemeDocumentation()
        
    
    Checks to see if theme documentation has been installed
        in 
Theme at line 937
                            array
    getThemeDocumentationPages()
        
    
    Returns an array of documentation pages for this theme
        in 
Theme at line 955
                            
    updateThemeCustomClass()
        
    
    (Re)Scan the theme folder to check if it contains the page_theme.php file: if so, marks the theme as having a controller.
        in 
Theme at line 977
                            int|null
    getThemeID()
        
    
    Get the ID of the installed theme (if available).
        
                            string
    getThemeName()
        
    
    Get the (English) name of the theme.
        in 
Theme at line 999
                            string
    getThemeDisplayName(string $format = 'html')
        
    
    Get the localized name for this theme (escaped accordingly to $format).
        
                            int|null
    getPackageID()
        
    
    Get the ID of the package providing this theme (if available).
        
                            string|false|null
    getPackageHandle()
        
    
    Get the handle of the package providing this theme (if available).
        
                            
    hasCustomClass()
        
    
    Returns whether a theme has a custom class.
        
                            string
    getThemeHandle()
        
    
    Get the handle of this theme.
        
                            string
    getThemeDescription()
        
    
    Get the (English) description of this theme.
        
                            string
    getThemeDisplayDescription(string $format = 'html')
        
    
    Get the localized description for this theme (escaped accordingly to $format).
        
                            string
    getThemeDirectory()
        
    
    Get the directory containing this theme.
        
                            string
    getThemeURL()
        
    
    Get the URL prefix of the assets provided by this theme.
        
                            string
    getThemeEditorCSS()
        
    
    Get the URL of the theme typography.css file.
        
                            
    setThemeURL(string $pThemeURL)
        
    
    Set the URL prefix of the assets provided by this theme.
        
                            
    setThemeDirectory(string $pThemeDirectory)
        
    
    Set the absolute path of the theme folder.
        
                            
    setThemeHandle(string $pThemeHandle)
        
    
    Set the handle of this theme.
        
                            
    setStylesheetCachePath(string $path)
        
    
    Set the absolute path of a directory where the CSS stylesheet files should be stored.
        
                            
    setStylesheetCacheRelativePath(string $path)
        
    
    Set the path of a directory where the CSS stylesheet files should be stored, relative to the website root directory.
        
                            string
    getStylesheetCachePath()
        
    
    Get the absolute path of a directory where the CSS stylesheet files should be stored.
        
                            string
    getStylesheetCacheRelativePath()
        
    
    Get the path of a directory where the CSS stylesheet files should be stored, relative to the website root directory.
        
                            bool
    isUninstallable()
        
    
    Is this theme uninstallable?
        
                            Image
    getThemeThumbnail()
        
    
    Get the theme thumbnail image.
        
                            
    applyToSite(Site $site = null)
        
    
    Apply this theme to all the pages of a site.
        
                static            Theme|null
    getSiteTheme()
        
    
    Get the theme for the current site.
        
                            
    uninstall()
        
    
    Uninstall this theme.
        
                            
    registerAssets()
        
    
    No description
        
                            bool
    supportsGridFramework()
        
    
    Does this theme support a grid framework?
        
                            
    supportsFeature(string $feature)
        
    
    No description
        
                            GridFramework|null
    getThemeGridFrameworkObject()
        
    
    Get the grid framework supported by this theme.
        
                            string
    getThemeGridFrameworkHandle()
        
    
    No description
        
                            string[]
    getThemeSupportedFeatures()
        
    
    Get the handles of the features supported by this theme.
        
                            array
    getThemeBlockClasses()
        
    
    Get the theme-specific CSS classes for every block.
        
                            array
    getThemeAreaClasses()
        
    
    Get the theme-specific CSS classes for every area.
        
                            array
    getThemeEditorClasses()
        
    
    No description
        
                            array
    getThemeDefaultBlockTemplates()
        
    
    Get the theme-specific templates for every block.
        
                            array
    getThemeResponsiveImageMap()
        
    
    No description