Extension:Bootstrap

From mediawiki.org
Jump to navigation Jump to search
MediaWiki extensions manual
OOjs UI icon advanced.svg
Bootstrap
Release status: stable
Implementation Skin
Description Provides the Bootstrap 4 web front-end framework
Author(s) Stephan Gambke (F.trotttalk)
Maintainer(s) Professional.Wiki
Latest version 4.2.1 (2020-06-10)
Compatibility policy master
MediaWiki 1.29+
PHP 5.6+
Database changes No
Composer mediawiki/bootstrap
License GNU General Public License 3.0 or later
Download
README on GitHub
Changelog on GitHub
Check usage and version matrix.

The Bootstrap extension provides the Bootstrap 4 web front-end framework to MediaWiki. It can be activated directly or used from skins or extensions.

Currently Bootstrap version 4.2.1 is provided.

Installation[edit]

See the installation instructions for information on how to install this extension.

Usage[edit]

Use \Bootstrap\BootstrapManager::getInstance() to get the singleton managing the Bootstrap framework.

With the returned object,

  • add Bootstrap modules using addBootstrapModule(), addCoreBootstrapModules(), and addAllBootstrapModules()
  • set SCSS variables using setScssVariable() and setScssVariables()
  • add style files using addStyleFile()
  • add cache trigger files using addCacheTriggerFile()

Finally to add the Bootstrap styles and javascript to the page use $out->addModuleStyles( 'ext.bootstrap.styles' ) for styles and $out->addModules( 'ext.bootstrap.scripts' ) for scripts.

To simply enable Bootstrap styles on all pages add the following code to your "LocalSettings.php" file:

$wgHooks['SetupAfterCache'][] = function(){
	\Bootstrap\BootstrapManager::getInstance()->addAllBootstrapModules();
	return true;
};


$wgHooks['ParserAfterParse'][]=function( Parser &$parser, &$text, StripState &$stripState ){
	$parser->getOutput()->addModuleStyles( 'ext.bootstrap.styles' );
	$parser->getOutput()->addModules( 'ext.bootstrap.scripts' );
	return true;
};

For an example on how to include Bootstrap styles in a skin have a look at the Chameleon skin.

See also[edit]