ballstatecber / datacenter-plugin-cakephp4
Ball State CBER DataCenter plugin for CakePHP 4
Installs: 192
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Language:JavaScript
Type:cakephp-plugin
pkg:composer/ballstatecber/datacenter-plugin-cakephp4
Requires
- php: >=7.4
- ext-json: *
- cakephp/authentication: ^2.0
- cakephp/authorization: ^2.0
- cakephp/cakephp: ^4.2
- phpoffice/phpspreadsheet: ^1.15
- twbs/bootstrap: ^4.0
Requires (Dev)
- cakephp/bake: ^2.0.3
- cakephp/cakephp-codesniffer: ~4.2.0
- phpunit/phpunit: ~8.5.0
This package is auto-updated.
Last update: 2025-10-24 01:23:31 UTC
README
Installation
-
Install this plugin in your CakePHP application using composer.
composer require ballstatecber/datacenter-plugin-cakephp4:dev-master -
Add
$this->addPlugin('DataCenter');inApp\Application:bootstrap() -
Have
AppControllerextendDataCenter\Controller\AppController
Configuration
- Copy the plugin's
config/datacenter.phpconfiguration file to the application'sconfigdirectory - Set
'DataCenter.siteTitle'and'DataCenter.siteUrl'in the copy - Change other values as appropriate
- Comment out or remove lines in this file to fall back on the plugin's default configuration values
View layer
Page title
- Set
$pageTitlein each action's view variables where you would like to prepend the site title with the page title and display it as a header. - Set the
$hidePageTitleview variable totrueto only put the title in<title>and prevent it from being displayed. - Set
$linkPageTitletotrueto link the page title to the current page.
Layout
Replace templates/layout/default.php with the following:
<?php /** * @var \App\View\AppView $this */ $this->extend('DataCenter.default'); // If you have a /templates/elements/sidebar.php file $this->assign('sidebar', $this->element('sidebar')); ?> <div id="content"> <?= $this->fetch('content') ?> </div>
Mastheads
If you'd like to have a masthead or other content between the header and main content,
populate the site_title view block in templates/layout/default.php. Example:
<?php use Cake\Core\Configure; ?> <?php $this->append('site_title'); ?> <h1> <a href="/"> <img src="/img/masthead.png" alt="<?= Configure::read('DataCenter.siteTitle') ?>" /> </a> </h1> <?php $this->end(); ?>
- Such masthead images will adjust to fit inside the viewport, but should ideally be 1,140px wide.
- If you're using text instead of an image, use
<h1 class="text">to apply padding, border-radius, and background color.
Overriding sidebar width
By default, the sidebar is two columns wide in large-width devices and three columns wide in medium-width devices (and
displayed in its own row in smaller widths). To override this, set the $lgSidebarWidth and/or $mdSidebarWidth view
variables
$this->set([ 'lgSidebarWidth' => 3, 'mdSidebarWidth' => 2, ]);
CSS
Create webroot/css/style.scss with these imports at the top:
@import "./cake.css";
@import "../../vendor/twbs/bootstrap/scss/bootstrap.scss";
@import "../../vendor/ballstatecber/datacenter-plugin-cakephp4/webroot/css/datacenter.scss";
If you're using the tag editor, also add
@import "../../vendor/ballstatecber/datacenter-plugin-cakephp4/webroot/css/tag_editor.scss";
- Have
Mailerclasses extendDataCenter\Mailer\DataCenterMailerto use the plugin's default layout and settings - If using the
DataCenter.defaultemail layout, create elements calledemail_signature_html.phpandemail_signature_text.phpto override default signatures - These elements can
return falseto disable email signatures
Authentication / Authorization
Refer to the plugin's auth docs for information about using its standard auth setup.
Social media meta tags
Refer to the plugin's social media tag docs for information about setting information for social media websites to use when scraping a page.