模板宽度由网格定义,并分成若干列(默认为12列)。
要更改模板的宽度,请打开文件:variables.less
in:templates/t3_bs3_blank/less
然后更改模板的定义宽度。
// Media queries breakpoints // -------------------------------------------------- // Extra small screen / phone // Note: Deprecated @screen-xs and @screen-phone as of v3.0.1 @screen-xs: 480px; @screen-xs-min: @screen-xs; @screen-phone: @screen-xs-min; // Small screen / tablet // Note: Deprecated @screen-sm and @screen-tablet as of v3.0.1 @screen-sm: 768px; @screen-sm-min: @screen-sm; @screen-tablet: @screen-sm-min; // Medium screen / desktop // Note: Deprecated @screen-md and @screen-desktop as of v3.0.1 @screen-md: 992px; @screen-md-min: @screen-md; @screen-desktop: @screen-md-min; // Large screen / wide desktop // Note: Deprecated @screen-lg and @screen-lg-desktop as of v3.0.1 @screen-lg: 1200px; @screen-lg-min: @screen-lg; @screen-lg-desktop: @screen-lg-min;
现在更改响应式布局的大小。
这里是网格系统。您可以更改网格的数量。
- // Grid system
- // --------------------------------------------------
- // Number of columns in the grid system
- @grid-columns: 12;
- // Padding, to be divided by two and applied to the left and right of all columns
- @grid-gutter-width: 30px;
- // Point at which the navbar stops collapsing
- @grid-float-breakpoint: @screen-sm-min;
主题定制
所有主题文件夹位于: templates/t3_bs3_blank/less/themes/
在每个主题文件夹中,它有3个文件:
1. template.less
此文件包含从默认主题自定义的样式。
- // Logo Text
- // ----------
- .logo-text h1 {
- color: @white;
- }
- // Taglines
- .logo-text .site-slogan {
- display: block;
- font-size: @font-size-base;
- margin-top: 5px;
- }
2 variables.less
.:这个文件包含了来自默认variables.less文件的自定义变量。
- // Global values
- // --------------------------------------------------
- @t3-base-img-path: "../../../images";
- @t3-theme-img-path: "@{t3-base-img-path}/themes/dark";
- // Scaffolding
- // -------------------------
- @body-bg: @gray-darker;
- @text-color: @gray-lighter;
3 variables-custom.less
.:这个文件包含了你创建的用来定制当前主题的新变量。
- // Links
- // -------------------------
- @link-color: lighten(@blue, 20%);
创建新的主题
创建新主题的最佳方法是克隆主题文件夹。
你可以通过创建新的主题文件夹,然后添加3个文件:template.less
,variables.less
和variables-custom.less
自定义主题
在后端,您可以选择新创建的主题风格,然后使用ThemeMagic自定义主题。
您可以在创建主题的LESS文件中自定义主题: templates/t3_bs3_blank/less/themes/dark-copy
编译LESS到CSS
定制主题后,请将LESS编译为CSS。新的主题CSS文件将位于templates/t3_bs3_blank/css/themes/dark-copy
请不要使用CSS文件自定义主题,因为每次运行“将LESS编译为CSS”时都会覆盖它们。
新增的CSS文件是:
bootstrap.css
home.css
megamenu.css
off-canvas.css
windows.css
当网站运行在主题上时,所有添加的CSS文件都将被加载,通过这种方式,所有文件都从1个文件夹中加载,这样才能提高网站的性能。
使用CSS自定义模板
T3框架是用LESS开发的,LESS文件被编译成CSS文件。每次编译时,CSS文件将被覆盖,所以我们建议您不要使用CSS来定制,开发您的网站,因为编译时,您的工作可能会丢失。
该custom.css
文件位于:templates/t3_blank/css
。如果您没有看到该文件,请创建新文件,然后打开该文件,为您的模板添加CSS样式。
custom.css
文件的一些特征
- 该文件默认不包含,您需要创建一个新的。
- 该文件是要在您的网站中加载的最后一个文件。
- 该文件不是来自LESS的编译文件,因此在编译时不会被覆盖或丢失。
处理文件
该Custom.css
文件与其他任何CSS文件相同。输入您的模板样式的CSS。
- .show-grid {
- margin-top: 10px;
- margin-bottom: 20px;
- }
- .show-grid [class*="span"] {
- background-color: #eee;
- text-align: center;
- -webkit-border-radius: 3px;
- -moz-border-radius: 3px;
- border-radius: 3px;
- min-height: 40px;
- line-height: 40px;
- }
- .show-grid:hover [class*="span"] {
- background: #ddd;
- }
让我们来检查前端
ThemeMagic自定义
T3框架是基于ThemeMagic的简单主题定制功能强大。您可以添加无限参数进行自定义。
你必须首先启用ThemeMagic,然后点击ThemeMagic按钮打开ThemeMagic面板。
Thememagic工作pannel
- 选择主题进行自定义
- 通过更改参数值来自定义主题
- 点击预览查看更改
- 保存或保存为复制自定义的主题
添加新的参数到ThemeMagic
您可以添加无限的参数,主题定制组。自定义参数设置在thememagic.xml
文件夹中的文件中:templates/t3_bs3_blank
第1步。定义一个新的组
- <fieldset name = “custom1_params” label = “CUSTOM1_LABEL” >
- </字段集>
- <fieldset name = “module_params” label = “T3_TM_MODULE” >
- </字段集>
步骤2.在新组中定义参数
- <field name = “@ your-field-name”
- type = “参数类型”
- default = “default-value-of-parameter”
- label = “FIEL_LABEL”
- description = “FIELD_DESCRIPTION” />
- </场>
- <fieldset name = “module_params” label = “T3_TM_MODULE” >
- <field name = “t3-module-bg” type = “color” class = “t3tm-color” label = “T3_TM_VARS_MODULE_BGCOLOR_LABEL” description = “T3_TM_VARS_MODULE_BGCOLOR_DESC” />
- </字段集>
第3步。定义LESS参数
用@your-field-name
文件variables.less
中定义的LESS参数定义如上template/less/
。
- //模块一般
- @ t3 - module - bg : transparent ;
第4步。在LESS文件的某处添加“@你的字段名称”
这取决于你,只是想你如何使用这个参数,以及它如何影响模板。要求你有一些关于LESS和CSS的基础知识。我们建议您添加到文件:style.less
- .t3-module {
- background: @t3-module-bg;
- }
第5步。定义语言键
打开en-GB.tpl_t3_bs3_blank.ini
位于其中的模板的语言文件,language\en-GB\
并定义用于定义上述参数的语言键。
- ; MODULE
- T3_TM_MODULE ="Module"
- T3_TM_VARS_MODULE_BGCOLOR_LABEL ="Module Background Color"
检查ThemeMagic检查是否添加新的组和参数
LOGO定制
1.更改Logo图像
有两种方法可以更改使用T3 Framework开发的Joomla模板的徽标。
#1:从模板管理器更改Logo
每种风格可以用不同的标志。要为Logo设置样式,请在模板样式设置中打开主题设置。
#2:从变量.less文件中更改Logo
另一种更改徽标的方法是更改variables.less
文件中的Logo图像路径,位于templates / t3_blank / less fodler中。
- // T3 LOGO
- // --------------------------------------------------
- @T3logoWidth: 60px;
- @T3logoHeight: 50px;
- @T3LogoImage: "../images/logo.png";
您也可以通过更改@T3logoWidth:
和@T3logoHeight:
变量的值来更改Logo块的大小。
2.Logo造型
要为Logo定制样式,请打开style.less
位于templates / t3_blank / less文件夹中的文件。搜索Logo文本,您会发现可以添加更多样式或自定义样式的样式。
- // Logo
- // ---------------------------------------------------------
- .logo {
- float: left;
- a {
- display: inline-block;
- line-height: 1;
- margin: 0;
- }
- }
- // Logo Image
- // ----------
- .logo-image {
- overflow: hidden;
- a {
- background-image: url("@{T3LogoImage}");
- background-repeat: no-repeat;
- width: @T3logoWidth;
- height: @T3logoHeight;
- }
- //hide sitename and slogan
- span, small {
- display: none;
- }
- }
添加/安装新的字体
第1步:添加字体包(S)
将您的字体包上传到模板/ t3_bs3_blank / fonts。
第2步:定义字体
现在打开assets.xml
位于templates / template_folder / etc文件夹中的文件以定义刚添加的字体
- <stylesheets>
- <file>fonts/font-awesome/css/font-awesome.min.css</file>
- <file>fonts/novecentowide/stylesheet.css</file>
- </stylesheets>
Google字体
T3框架支持谷歌字体,你所要做的就是定义你想在assets.xml
文件中使用的谷歌字体(位于templates / template_folder / etc文件夹中)。
- <stylesheets>
- <file>http://fonts.googleapis.com/css?family=Roboto+Slab:400,100,300</file>
- </stylesheets>
嵌入样式表和Javascript
要添加新的样式表和JavaScript到T3框架,有两种方法可以做到这一点。您可以声明新的样式表和JavaScript head.php
文件或assets.xml
文件。
#1。使用head.php文件
打开文件夹head.php
中的templates/t3_bs3_blank/tpls/blocks
文件,然后按照你的意愿声明新的样式表和Javascript,格式如下。
添加CSS样式表
- <?php
- // CUSTOM CSS
- if(is_file(T3_TEMPLATE_PATH . '/css/custom.css')) {
- $this->addStyleSheet(T3_TEMPLATE_URL.'/css/custom.css');
- }
- ?>
添加Javascripts
- <?php
- if(is_file(T3_TEMPLATE_PATH . '/templates/TEMPLATE-FOLDER-NAME/js/slider/lofslidernews.mt11.js')) {
- $this->addScript(T3_TEMPLATE_URL.'/templates/TEMPLATE-FOLDER-NAME/js/slider/lofslidernews.mt11.js');
- }
- ?>
只需复制然后更正CSS和Javascript文件的路径。
Joomla提供了addStyleSheet,addScript,addScriptDeclaration函数,这是你应该使用的。
#2。使用assets.xml文件
另一种添加新CSS的方法是将JavaScript嵌入到assets.xml
位于templates/t3_bs3_blank/etc
文件夹中的另一种方法。
CSS样式表和字体
将路径添加到要嵌入到网站的样式表和字体中。使用下面的格式:
- <stylesheets>
- <file>fonts/novecentowide/stylesheet.css</file>
- <file>http://fonts.googleapis.com/css?family=Roboto+Slab:400,100,300</file>
- </stylesheets>
Javascript角
将路径添加到要嵌入到网站的Javascript文件。使用以下格式:
- <scripts>
- <file>js/jquery.mousewheel.js</file>
- <file>js/iscroll.js</file>
- <file>js/script.js</file>
- </scripts>
覆盖404页面和离线页面
1.覆盖404页面
通常,每个JA模板都带有自己的404页面样式。如果您想对其进行定制,这将引导您完成快速操作:
第1步:添加文件 error.php
添加这个文件的最好方法是复制默认的joomla error.php
文件templates/system
然后复制到templates/t3_bs3_blank/
第2步:自定义404页面
打开这个文件并按照你想要的页面来定制它。
您可以定义该页面将使用哪个CSS文件。
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/error.css" type="text/css" />
您可以为404页面创建新的CSS文件,但我们建议复制默认的joomla error.css
文件,templates/system/css
然后粘贴到templates/t3_bs3_blank/css/
文件夹。打开文件并开始自定义。
还有一件事是,每个主题可以使用不同的CSS文件,以便它有不同的风格。
- <?php if($theme && is_file(T3_TEMPLATE_PATH . '/css/themes/' . $theme . '/error.css')):?>
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/themes/<?php echo $theme ?>/error.css" type="text/css" />
- <?php endif; ?>
- <?php
- /**
- * @package Joomla.Site
- * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved.
- * @license GNU General Public License version 2 or later; see LICENSE.txt
- */
- defined('_JEXEC') or die;
- if (!isset($this->error)) {
- $this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
- $this->debug = false;
- }
- //get language and direction
- $doc = JFactory::getDocument();
- $this->language = $doc->language;
- $this->direction = $doc->direction;
- $theme = JFactory::getApplication()->getTemplate(true)->params->get('theme', '');
- ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>">
- <head>
- <title><?php echo $this->error->getCode(); ?> - <?php echo $this->title; ?></title>
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/error.css" type="text/css" />
- <?php if($theme && is_file(T3_TEMPLATE_PATH . '/css/themes/' . $theme . '/error.css')):?>
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/themes/<?php echo $theme ?>/error.css" type="text/css" />
- <?php endif; ?>
- <link href='http://fonts.googleapis.com/css?family=Handlee' rel='stylesheet' type='text/css'>
- </head>
- <body class="page-error">
- <div class="error-page-wrap">
- <div class="inner">
- <div class="error-code"><?php echo $this->error->getCode(); ?></div>
- <div class="error-message">
- <h2>SORRY!</h2>
- <p>
- <?php echo $this->error->getMessage(); ?><br />
- <?php echo JText::_('JERROR_LAYOUT_PLEASE_TRY_ONE_OF_THE_FOLLOWING_PAGES'); ?> <a href="/<?php echo $this->baseurl; ?>/index.php" title="<?php echo JText::_('JERROR_LAYOUT_GO_TO_THE_HOME_PAGE'); ?>"><?php echo JText::_('JERROR_LAYOUT_HOME_PAGE'); ?></a>
- </p>
- </div>
- </div>
- </div>
- </body>
- </html>
每个主题的404页面的CSS文件位于 templates/t3_bs3_blank/css/themes/theme_name/
注意:
将LESS编译为CSS时,CSS文件不会被覆盖。
2.覆盖离线页面
要自定义脱机页面,您只需要执行与404页面定制相同的步骤
第1步:添加新offline.php
文件。
复制文件offline.php
夹中的文件,templates/system
然后粘贴到templates/t3_bs3_blank
第2步:自定义离线页面
打开此文件并按照您希望离线页面进行自定义。
您可以定义该页面将使用哪个CSS文件。
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/offline.css" type="text/css" />
你可以创建新的离线页面的CSS文件,但我们建议复制默认的joomla offline.css
文件,templates/system/css
然后粘贴到templates/t3_bs3_blank/css/
文件夹。
您可以定义每个主题使用一个CSS文件,以便每个主题将具有不同的离线页面样式。
- <?php if($theme && is_file(T3_TEMPLATE_PATH . '/css/themes/' . $theme . '/offline.css')):?>
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/themes/<?php echo $theme ?>/offline.css" type="text/css" />
- <?php endif; ?>
- <?php
- /**
- * $JA#COPYRIGHT$
- */
- defined('_JEXEC') or die;
- $app = JFactory::getApplication();
- $theme = JFactory::getApplication()->getTemplate(true)->params->get('theme', '');
- //check if t3 plugin is existed
- if(!defined('T3')){
- if (JError::$legacy) {
- JError::setErrorHandling(E_ERROR, 'die');
- JError::raiseError(500, JText::_('T3_MISSING_T3_PLUGIN'));
- exit;
- } else {
- throw new Exception(JText::_('T3_MISSING_T3_PLUGIN'), 500);
- }
- }
- $t3app = T3::getApp($this);
- ?>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>">
- <head>
- <jdoc:include type="head" />
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/offline.css" type="text/css" />
- <?php if($theme && is_file(T3_TEMPLATE_PATH . '/css/themes/' . $theme . '/offline.css')):?>
- <link rel="stylesheet" href="/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/themes/<?php echo $theme ?>/offline.css" type="text/css" />
- <?php endif; ?>
- <?php
- // T3 BASE HEAD
- $t3app->addHead();?>
- </head>
- <body>
- <div id="frame" class="outline">
- <div class="offline-page">
- <?php if ($app->getCfg('offline_image') && file_exists($app->getCfg('offline_image'))) : ?>
- <img src="/<?php echo $app->getCfg('offline_image'); ?>" alt="<?php echo htmlspecialchars($app->getCfg('sitename')); ?>" />
- <?php endif; ?>
- <div class="brand">
- <a href="/\index.php" title="<?php echo htmlspecialchars($app->getCfg('sitename')); ?>"><?php echo htmlspecialchars($app->getCfg('sitename')); ?></a>
- </div>
- <div class="offline-message">
- <?php if ($app->getCfg('display_offline_message', 1) == 1 && str_replace(' ', '', $app->getCfg('offline_message')) != ''): ?>
- <p>
- <?php echo $app->getCfg('offline_message'); ?>
- </p>
- <?php elseif ($app->getCfg('display_offline_message', 1) == 2 && str_replace(' ', '', JText::_('JOFFLINE_MESSAGE')) != ''): ?>
- <p>
- <?php echo JText::_('JOFFLINE_MESSAGE'); ?>
- </p>
- <?php endif; ?>
- </div>
- <div class="login-form">
- <form action="<?php echo JRoute::_('index.php', true); ?>" method="post" id="form-login">
- <fieldset class="input">
- <div class="wrap-input">
- <p id="form-login-username">
- <input name="username" id="username" type="text" class="inputbox" alt="<?php echo JText::_('JGLOBAL_USERNAME') ?>" size="18" placeholder="<?php echo JText::_('JGLOBAL_USERNAME') ?>" />
- </p>
- <p id="form-login-password">
- <input type="password" name="password" class="inputbox" size="18" alt="<?php echo JText::_('JGLOBAL_PASSWORD') ?>" id="passwd" placeholder="<?php echo JText::_('JGLOBAL_PASSWORD') ?>" />
- </p>
- <?php if (count($twofactormethods) > 1) : ?>
- <p id="form-login-secretkey">
- <label for="secretkey"><?php echo JText::_('JGLOBAL_SECRETKEY') ?></label>
- <input type="text" name="secretkey" class="inputbox" size="18" alt="<?php echo JText::_('JGLOBAL_SECRETKEY') ?>" id="secretkey" />
- </p>
- <?php endif; ?>
- </div>
- <?php if (JPluginHelper::isEnabled('system', 'remember')) : ?>
- <p id="form-login-remember">
- <input type="checkbox" name="remember" class="inputbox" value="yes" alt="<?php echo JText::_('JGLOBAL_REMEMBER_ME') ?>" id="remember" />
- <label for="remember"><?php echo JText::_('JGLOBAL_REMEMBER_ME') ?></label>
- <input type="submit" name="Submit" class="button" value="<?php echo JText::_('JLOGIN') ?>" />
- </p>
- <?php endif; ?>
- <input type="hidden" name="option" value="com_users" />
- <input type="hidden" name="task" value="user.login" />
- <input type="hidden" name="return" value="<?php echo base64_encode(JURI::base()) ?>" />
- <?php echo JHtml::_('form.token'); ?>
- </fieldset>
- </form>
- <jdoc:include type="message" />
- </div>
- </div>
- </div>
- </body>
- </html>
每个主题的离线页面的CSS文件位于 templates/t3_bs3_blank/css/themes/theme_name/
注意:
将LESS编译为CSS时,CSS文件不会被覆盖。
添加“回到顶部”按钮
“返回顶部”按钮可让您快速导航到您网站的顶部。
第1步:启用“返回顶部”按钮
要在您的站点中添加此按钮,请打开该文件,templates/t3_bs3_blank/tpls/blocks/footer.php
然后将以下代码添加到文件中。
- <!-- BACK TOP TOP BUTTON -->
- <div id="back-to-top" data-spy="affix" data-offset-top="300" class="back-to-top hidden-xs hidden-sm affix-top">
- <button class="btn btn-primary" title="Back to Top"><i class="fa fa-angle-up"></i></button>
- </div>
- <script type="text/javascript">
- (function($) {
- // Back to top
- $('#back-to-top').on('click', function(){
- $("html, body").animate({scrollTop: 0}, 500);
- return false;
- });
- })(jQuery);
- </script>
- <!-- BACK TO TOP BUTTON -->
第2步:风格“回到顶部”按钮
打开文件,templates/t3_bs3_blank/less/style.less
然后添加样式规则:
- // Back to Top
- // -----------
- #back-to-top {
- position: fixed;
- right: @t3-global-margin;
- top: auto;
- z-index: 999;
- display: none;
- bottom: -60px;
- @media (min-width: @screen-sm-min) {
- display: block;
- }
- .btn {
- background: none;
- border: 2px solid @brand-primary;
- color: @brand-primary;
- height: 40px;
- width: 40px;
- border-radius: 50%;
- line-height: 1;
- padding: 0;
- text-align: center;
- .opacity(0.7);
- .transition(0.2s);
- &:hover, &:active, &:focus {
- background: none;
- outline: none;
- .opacity(1);
- }
- }
- &.affix {
- bottom: @t3-global-margin * 2;
- }
- a {
- outline: none;
- }
- i {
- font-size: @font-size-large + 10;
- line-height: 22px;
- }
- }
多种语言megamenu
T3框架支持Megamenu,当你运行一个多语言站点时,你必须为Megamenu配置多语言。按照本指南使其工作。
请确保设置多语言网站的所有步骤都完成。如果这些步骤还没有完成,有两种方法可以建立多语言站点:手动设置或使用JA多语言组件自动设置。无论如何,这取决于你。
创建语言菜单
第1步:创建语言菜单
对于每种语言,您都需要创建基于默认语言菜单系统的菜单系统。例如,您的网站可以使用两种语言:英语和阿拉伯语。然后,您应该根据英语语言的现有菜单创建阿拉伯语菜单。
第2步:复制默认的模板样式
转到扩展>>模板管理器,然后复制默认的模板样式。
步骤3:重命名并为重复的模板样式分配语言
接下来,打开重复的模板样式重命名它。然后分配给所需的语言。
第4步:为Megamenu分配菜单
现在打开导航选项卡,启用Megamenu,然后在菜单字段中分配创建的菜单。
第5步:保存Mengamenu设置
现在你所要做的就是保存Megamenu设置,请记住,即使你没有改变任何东西,这一步也是必需的,因为它旨在检测你的Megamenu。
打开Megamenu设置面板,然后确保您选择了正确的菜单 - Mainmenu阿拉伯语。