Новости Joomla

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 3297 Просмотров
*

trk

  • Захожу иногда
  • 80
  • 2 / 0
Добрый день!

Прошу помочь с таким вопросом.
Есть Joomla 1.5, шаблон JA_Teline_III.

Читал другие темы, искал в Интернете, но не знаю как сделать то что нужно.

Нужно (см. рисунок) позицию content-top разделить на 2 части, тоесть
сделать как бы два столбца для размещения справа в content-top2 нужного блока.

Как это сделать?



defautl.css шаблона
Код: css

/*
# ------------------------------------------------------------------------
# JA Teline III - Stable - Version 1.4 - Licence Owner JA49652
# ------------------------------------------------------------------------
# Copyright (C) 2004-2009 J.O.O.M Solutions Co., Ltd. All Rights Reserved.
# @license - Copyrighted Commercial Software
# Author: J.O.O.M Solutions Co., Ltd
# Websites:  http://www.joomlart.com -  http://www.joomlancers.com
# This file may not be redistributed in whole or significant part.
# ------------------------------------------------------------------------
*/

/* COMMON STYLE
--------------------------------------------------------- */
body {
background: #fff;
color: #000;
font-family: Arial, sans-serif;
line-height: 1.5;
}

body#bd {
background: #f7f7f7;
color: #000;
}

body.fs1 {font-size: 10px;}
body.fs2 {font-size: 11px;}
body.fs3 {font-size: 12px;}
body.fs4 {font-size: 13px;}
body.fs5 {font-size: 14px;}
body.fs6 {font-size: 15px;}

/* Normal links ---*/
a {
color: #145077;
text-decoration: none;
}

a:hover, a:active, a:focus {
color: #145077;
text-decoration: underline;
}

/* Readon links ---*/
a.readon { text-transform: uppercase; }

a.readon:hover, a.readon:active, a.readon:focus {}

/* Content spacing ---*/
.column p, .column pre, .column blockquote,
.column h1, .column h2, .column h3, .column h4, .column h5, .column h6,
.column ol, .column ul {
margin: 15px 0;
padding: 0;
}

/* Headings & Titles ---*/
h1 {font-size: 200%;}
h2 {font-size: 175%;}
h3 {font-size: 150%;}
h4 {font-size: 125%;}
h5 {font-size: 100%;}

.contentheading, .componentheading, h1, h2, h3, h4, h5 {
font-family: Cambria, Times, serif;
font-weight: bold;
line-height: 1.2;
}

h1.componentheading, .componentheading {
margin: 0 -15px;
padding: 0 15px 10px;
}

.componentheading {
font-size: 250%;
border-bottom: 1px solid #ddd;
}

h2.contentheading, .contentheading {
margin: 0;
padding: 0 0 10px;
}

.contentheading { font-size: 200%; }
.blog .contentheading { font-size: 125%; }
.blog .leading .contentheading { font-size: 175%; }

a.contentpagetitle,
a.contentpagetitle:hover,
a.contentpagetitle:active,
a.contentpagetitle:focus {
font-weight: bold;
}

.category { font-size: 110%; font-weight: bold; }

/* Small text ---*/
small, .small, .smalldark, .createby, .createdate, .modifydate, .img_caption, .contenttoc,
p.site-slogan, a.readon, .ja-navhelper, #ja-footer {
font-size: 92%;
}

small, .small { color: #999999; }

.smalldark { text-align: left; }

/* List ---*/
.column ul li {
background: url(../images/bullet.gif) no-repeat 15px 6px;
line-height: 160%;
padding-left: 25px;
margin-bottom: 5px;
line-height: 1.3;
overflow: hidden;
}

.column ol li {
line-height: 180%;
margin-left: 35px;
}

/* Others ---*/
th { font-weight: bold; padding: 5px; text-align: left; }
td { font-size: 100%; }

fieldset { border: none; padding: 10px 5px; }

fieldset a { font-weight: bold; }

fieldset.input { padding: 0; }

hr {
border-bottom: 0;
border-left: 0;
border-right: 0;
border-top: 1px solid #ddd;
height: 1px;
}

/* FORM
--------------------------------------------------------- */
form label { cursor: pointer; }

input, select, textarea, .inputbox {
font-family: Arial, sans-serif;
font-size: 100%;
}

.inputbox {
color: #000;
background-color: #fff;
border: 1px solid #ddd;
padding: 2px;
}

.inputbox:hover, .inputbox:focus {
background-color: #fffff0;
border: 1px solid #aaa;
}

.button {
font-size: 92%;
background: url(../images/but-bg.gif) repeat-x bottom #fff;
color: #666;
border: 1px solid #ddd;
padding-top: 1px;
padding-bottom: 1px;
cursor: pointer;
text-transform: uppercase;
}

.button:hover, .button:focus {
border: 1px solid #aaa;
}

.checkbox { }
.radio { margin: 0 5px; }

/* Login Form ---*/
#form-login-username .inputbox,
#form-login-password .inputbox {
font-weight: bold;
padding-left: 20px;
background-repeat: no-repeat;
background-position: 5px center;
}

#form-login-username .inputbox {
background-image: url(../images/icon-user.gif);
}

#form-login-password .inputbox {
background-image: url(../images/icon-key.gif);
}

#form-login ul { margin: 0; padding: 0; }
#form-login ul li {
background: url(../images/bullet.gif) no-repeat 2px 7px !important;
margin: 0;
padding-left: 10px;
overflow: hidden;
}

#form-login .button { margin: 10px 0; font-weight: bold; font-size: 100%; }

/*Search Form ---*/
#ja-search {
float: right;
margin-top: 20px;
}

#ja-search label { display: none; }

#ja-search .inputbox {
width: 270px;
background: url(../images/icon-search.gif) no-repeat 8px center #fff;
padding-left: 24px;
font-weight: bold;
font-size: 115%;
}

#ja-search .inputbox:hover, #ja-search .inputbox:focus {
background-color: #fffff0;
}

#ja-search .button {
margin-left: 5px;
font-size: 115%;
font-weight: bold;
text-transform: none;
}

/* Joomla STYLE
--------------------------------------------------------- */
/* Layout Deco ---*/
.blog {}

.article_separator,
.leading_separator,
.row_separator,
.column_separator { display: none; }

.leading {
border-bottom: 1px solid #ddd;
background: #ebf2f7;
padding-top: 15px;
padding-bottom: 15px;
}

.article_row {
border-bottom: 1px solid #ddd;
padding-top: 15px;
padding-bottom: 15px;
}

.article_column {}

.column_separator {
padding: 0 25px;
}

/* Meta ---*/
.article-tools {
display: block;
margin: 0 0 10px;
padding: 5px;
clear: both;
position: relative;
line-height: normal;
background: #f7f7f7;
color: #999;
border: 1px solid #ddd;
text-transform: uppercase;
}

.blog .article-tools {
background: none;
border: 0;
padding: 0;
}

.article-meta {
padding: 0;
float: left;
width: 70%;
}

.article-section, .article-category {
color: #999999;
font-size: 92%;
}

.createby {
font-weight: bold;
}

.createdate {}

.modifydate {
color: #999;
display: block;
margin: 10px 0;
text-transform: uppercase;
}

.contentdescription {
display: block;
border-bottom: 1px solid #ddd;
padding: 10px 15px;
margin: 0 -15px;
}

.contentdescription p {
margin: 0;
}

.buttonheading {
float: right;
}

.buttonheading img {
margin: 0 5px 0 0;
border: 0;
float: right;
}

/*Inline images ---*/
img.caption { margin-top: 5px; }
.img_caption { color: #999; margin-bottom: 10px; }

.article-content img { margin: 5px; }

.img_caption img { margin: 5px 0 0; }

.img_caption p {
padding: 1px 0;
color: #ccc;
background: #333;
border-top: 1px solid #fff;
margin: 0;
text-align: center;
}

/* Tables ---*/
.sectiontableheader {
background: #333;
color: #fff;
border: 1px solid #ddd;
padding: 5px;
}

.sectiontableheader a,
.sectiontableheader a:hover,
.sectiontableheader a:focus,
.sectiontableheader a:active { color: #fff; }

.sectiontableentry,
.sectiontableentry0,
.sectiontableentry1,
.sectiontableentry2 {
padding: 5px 5px 6px;
border-bottom: 1px solid #ddd;
}

.sectiontableentry:hover,
.sectiontableentry0:hover,
.sectiontableentry1:hover,
.sectiontableentry2:hover {
background-color: #fffff0;
}

.sectiontableentry2 {
background-color: #f7f7f7;
}

table.contentpane, table.tablelist { width: 100%; }

table.contentpaneopen { border: none; border-collapse: collapse; border-spacing: 0; }

/* Content Toc */
table.contenttoc {
margin: 0 0 10px 12px;
padding: 0;
width: 30%;
border: 1px solid #ddd;
float: right;
}

table.contenttoc a {
color: #000;
}

table.contenttoc td {
padding: 5px 10px;
border-bottom: 1px solid #ddd;
}

table.contenttoc th {
border-bottom: 1px solid #ddd;
background: #f7f7f7;
padding: 5px 10px;
text-transform: uppercase;
}

/* Poll */
div.poll { padding: 15px 0; }
form#poll {
border-bottom: 1px dotted #ddd;
padding-bottom: 10px;
margin-bottom: 10px;
font-weight: bold;
}

dl.poll {
font-size: 92%;
border-bottom: 1px dotted #ddd;
padding-bottom: 10px;
margin-bottom: 10px;
}

dl.poll dt, dl.poll dd { float: left; }
dl.poll dt { width: 100px; clear: left; }
dl.poll dd { clear: right; }

table.pollstableborder {
border: none;
padding: 0;
text-align: left;
width: 100%;
}

table.pollstableborder img {
vertical-align: baseline;
}

table.pollstableborder td {
padding: 5px !important;
background: #f7f7f7;
border-bottom: 1px solid #ddd;
font-weight: bold;
}

table.pollstableborder tr.sectiontableentry0 td, table.pollstableborder tr.sectiontableentry1 td {
background: #fff;
font-weight: normal;
}

/* Search */
table.searchintro {
padding: 10px 0;
width: 100%;
}

table.searchintro td {
padding: 5px !important;
}

/* Misc. */
table.contentpaneopen, table.contentpane, table.blog {
width: 100%;
}

/* Pagination ---*/
ul.pagination {
margin: 15px 0;
float: left;
width: 75%;
}

ul.pagination li {
background: none;
display: inline;
margin: 0;
padding: 0;
overflow: hidden;
}

ul.pagination li span {
padding: 1px 3px;
}

ul.pagination a {
padding: 1px 5px;
border: 1px solid #ddd;
background: #f7f7f7;
color: #000;
}

ul.pagination a:hover, ul.pagination a:active, ul.pagination a:focus {
border: 1px solid #145077;
text-decoration: none;
background: #145077;
color: #fff;
}

.sortby { margin: 10px 0 5px; font-size: 92%; }
.sortby .filter, .sortby .display { float: left; width: 40%; }
.sortby .display { float: right; text-align: right; }

.pagenavbar {
background: url(../images/icon-pages.gif) no-repeat center left;
font-weight: bold;
padding-left: 14px;
}

.pagenavcounter {
margin: 15px 0 !important;
text-align: center;
}

.counter {
margin: 15px 0 !important;
float: right;
text-align: right;
width: 24%;
line-height: 1;
}

.counter span {
padding: 1px 5px;
background: #145077;
border: 1px solid #145077;
color: #fff;
}

.blog_more {
border-bottom: 1px solid #ddd;
margin: 0 -15px;
padding: 15px 15px 0;
}

.blog_more h2 {
font-size: 115%;
text-transform: uppercase;
margin: 0 0 5px;
}

.blog_more ul li {
background: url(../images/bullet.gif) no-repeat 5px 6px;
padding-left: 15px;
}

div.back_button a,
div.back_button a:hover,
div.back_button a:active {
display: block;
margin: 10px 0;
}

/* Messages ---*/
#system-message {
margin: 0 -15px 10px;
}

#system-message dd.message ul,
#system-message dd.error ul,
#system-message dd.notice ul {
margin: 0;
padding: 0;
}

#system-message dd.message ul li,
#system-message dd.error ul li,
#system-message dd.notice ul li {
background: none;
color: #FFFFFF;
margin: 0;
padding: 5px;
}

/* System Standard Messages */
#system-message dd.message ul {
background: #145077;
border: 0;
}

/* System Error Messages */
#system-message dd.error ul {
background: #9c162e;
border: 0;
}

/* System Notice Messages */
#system-message dd.notice ul {
background: #333;
border: 0;
}

/* Tooltips --- */
.tool-tip {
background: #fff;
border: 1px solid #D4D5AA;
float: left;
max-width: 300px;
padding: 5px;
z-index: 1000;
}

.tool-title {
background: url(../../system/images/selector-arrow.png) no-repeat;
font-size: 100%;
font-weight: bold;
margin: 0;
margin-top: -15px;
padding: 0;
padding-bottom: 5px;
padding-top: 15px;
}

.tool-text {
font-size: 100%;
margin: 0;
}

.hasTip img {
border: none;
margin: 10px 5px 0 0;
}

/* MODULE STYLES
--------------------------------------------------------- */
div.ja-moduletable h3, div.moduletable h3 {
margin: 0 0 5px;
padding: 0;
font-size: 110%;
text-transform: uppercase;
color: #000;
}

div.ja-moduletable, div.moduletable {
padding-top: 15px;
padding-bottom: 15px;
border-bottom: 1px solid #ddd;
position: relative;
}

/* Tabs Module ---*/
div.moduletable_tabs h3 {
border-bottom: 1px solid #ddd;
padding: 5px 15px;
margin-bottom: 0;
}

div.moduletable_tabs { padding: 0; border-bottom: 1px solid #ddd; }

/* Hilite Module ---*/
div.moduletable_hilite { background: #FFFFF0; }

/* JA Weather Module ---*/
#ja-widget-weather { margin: 0 -15px -15px; }

#ja-widget-weather .ja-usersetting-options { background: url(../images/grad-l1.gif) repeat-x left bottom; }

#ja-widget-weather .ja-usersetting-form ul li { float: none; }

#ja-widget-weather .temp { color: #9c162e; }

/* Stock ---*/
#ja-widget-stock { margin: 0 -15px -15px; }

#ja-widget-stock .ja-usersetting-options { background: url(../images/grad-l1.gif) repeat-x left bottom; }

#ja-widget-stock .graph { padding: 10px 15px; }

#ja-widget-stock .graph img {
background: #fff;
border: 1px solid #ddd;
padding: 5px;
}

.graph, div.stock-list-v, div.last_update { padding: 0 15px; }

#jawidget-stock .paramlist { margin-bottom: 10px; }

div.last_update { font-size: 92%; color: #666; text-align: right; padding: 5px 15px; clear: both; display: block; }

/* Twitter Module ---*/
.twitter { padding: 15px 0 !important; }
.twitter h3 { padding: 0 15px !important; }
.ja-twitter { padding: 0 15px; }

.ja-twitter h4 {
font-size: 92%;
text-transform: uppercase;
font-weight: normal;
font-family: Arial, sans-serif;
background: #f7f7f7;
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
margin: 10px -15px;
padding: 5px 15px;
}

.ja-twitter-avatar {
float: left;
margin-right: 5px;
padding: 2px;
border: 1px solid #ddd;
}

.ja-twitter center img { vertical-align: middle; }

div.ja-twitter div.ja-twitter-item {
margin: 0 0 10px;
padding: 0 0 10px;
border-bottom: 1px dotted #ccc;
}

div.ja-twitter div.ja-twitter-source { font-weight: bold; }

div.ja-twitter div.ja-twitter-date { font-size: 92%; color: #666; }

/* Video thumbnail ---*/
div.ja-video-thumb img {
width: 105px !important;
margin: 0 2px;
padding: 3px;
border: 1px solid #ddd;
}

/* Badge Module ---*/
.badge {
position: absolute;
top: 0;
right: 0;
width: 45px;
height: 46px;
}

.badge-hot .badge { background: url(../images/icon-badge.png) no-repeat 0px 0px; }
.badge-new .badge { background: url(../images/icon-badge.png) no-repeat 0px -46px; }
.badge-pick .badge{ background: url(../images/icon-badge.png) no-repeat 0px -92px; }
.badge-top .badge { background: url(../images/icon-badge.png) no-repeat 0px -138px; }

/* Poll Module ---*/
h4.poll-title { margin: 0; padding: 0; }
a.poll-result { font-size: 92%; text-transform: uppercase; }
form.poll .button { margin-right: 5px; }

/* Advertisement ---*/
div.bannergroup_text div.banneritem_text {
padding: 5px 0;
border-bottom: 1px dotted #ddd;
}

div.bannergroup_text div.banneritem_text a {
font-weight: bold;
}

div.bannergroup_text div.bannerheader,
div.bannergroup_text div.bannerfooter_text a {
font-size: 92%;
color: #999;
}

div.bannergroup_text div.bannerfooter_text {
text-align: right;
padding: 5px 0 0;
}

/* MAIN LAYOUT DIVS
--------------------------------------------------------- */
.wrap {}
.main { background: #fff; border-left: 1px solid #ddd; border-right: 1px solid #ddd; }

.ja-box { padding-top: 10px; padding-bottom: 10px; }

#ja-wrapper {}
#ja-container { z-index: 5; position: relative; }

/* 3 Columns - 2 Columns Right Layout [Default] ---*/
#ja-container.ja-r2 .main { background: url(../images/dot.gif) repeat-y 60% 0 #fff; }
#ja-container.ja-r1 .main { background: url(../images/dot.gif) repeat-y 80% 0 #fff; }

#ja-container.ja-r2 .ja-content-top, #ja-container.ja-r2 .ja-content-main, #ja-container.ja-r2 .ja-content-bottom { margin-right: 1px; }

/* 3 Columns - 2 Columns Left Layout  ---*/
#ja-container.ja-l2 .main { background: url(../images/dot-1pxfix.gif) repeat-y 40% 0 #fff; }
#ja-container.ja-l1 .main { background: url(../images/dot.gif) repeat-y 20% 0 #fff; }

#ja-container.ja-l2 #ja-left .ja-mass, #ja-container.ja-l2 #ja-left .ja-colswrap { margin-right: 1px; }

/* 3 Columns - Classic Layout ---*/
#ja-container.ja-l1r1 .main, #ja-container.ja-l1 .main { background: url(../images/dot-2pxfix.jpg) repeat-y 20% 0 #fff; }
#ja-container.ja-l1r1 .main-inner { background: url(../images/dot.gif) repeat-y 80% 0; }

/* Mass ---*/
.ja-mass-top {}
.ja-mass-bottom {}
.ja-mass-bottom .moduletable,
.ja-mass-bottom .moduletable_default,
.ja-mass-bottom .moduletable_hilite { border-bottom: 1px solid #ddd; }

/* MAIN COLUMN
--------------------------------------------------------- */
#ja-mainbody {}

#ja-contentwrap {
margin: 0 -15px;
}

/* Content Top ---*/
.ja-content-top {}

/* Content Main ---*/
.ja-content-main { padding: 10px 15px; }

/* Content Bottom ---*/
.ja-content-bottom {}
.ja-content-bottom .moduletable { border-top: 1px solid #ddd; border-bottom: 0; }

/* SIDE COLUMNS
--------------------------------------------------------- */
.ja-colswrap { border-bottom: 1px solid #ddd; }
.ja-col { margin-bottom: -1px; } /* hide last bottom borders ---*/

/* Left Columns ---*/
#ja-left .ja-l2 { background: url(../images/dot.gif) repeat-y center; }

/* Right Columns ---*/
#ja-right .ja-r2 { background: url(../images/dot.gif) repeat-y center; }

/*common style for columns ---*/

/* HEADER
--------------------------------------------------------- */
#ja-header { z-index: 10; position: relative; }

#ja-header .main { padding: 30px 0 10px; }

h1.logo, div.logo-text h1 {
font-size: 300%;
line-height: 1;
}

h1.logo, div.logo-text { float: left; }

/* Logo Image ---*/
h1.logo {
width: 265px;
height: 62px;
margin: 0;
}

h1.logo a {
width: 265px;
height: 62px;
display: block;
background: url(../images/logo.gif) no-repeat left;
}

h1.logo a span {
position: absolute;
top: -1000px;
}

/* Logo Text ---*/
div.logo-text h1 a {
letter-spacing: 1px;
font-weight: bold;
text-decoration: none;
color: #000;
}

p.site-slogan {
padding: 0 5px;
margin: 0;
color: #999999;
background: #f7f7f7;
display: block;
letter-spacing: 1px;
font-size: 85%;
text-transform: uppercase;
text-align: center;
}

/* Topbar ---*/
.ja-topbar {
position: absolute;
top: 0;
width: 100%;
border-bottom: 1px solid #ddd;
font-size: 11px;
}

.ja-day, .ja-updatetime {
float: left;
background: #fff;
color: #999;
border-right: 1px solid #ddd;
padding: 2px 10px 0;
}

.ja-updatetime em {
margin-left: 5px;
font-style: normal;
color: #9c162e;
}

/* Headlines Module ---*/
.ja-healineswrap { float: left; padding-top: 2px; }

.ja-healineswrap em {
font-style: normal;
font-weight: bold;
float: left;
display: block;
color: #999;
padding: 0 10px 0 10px;
}

.ja-headlines { float: left; }

.ja-headlines a { color: #999; }

.ja-headlines a:hover, .ja-headlines a:active, .ja-headlines a:focus {
color: #000;
text-decoration: none;
}

.ja-headlines .separator { color: #999; }

/* RSS Module ---*/
.ja-syndicate { float: right; }

.ja-syndicate a {
border-left: 1px solid #ddd;
width: 40px;
height: 19px;
line-height: 19px;
display: block;
color: #999;
text-align: center;
font-weight: bold;
}

.ja-syndicate a:hover, .ja-syndicate a:active, .ja-syndicate a:focus  {
border-left: 1px solid #ddd;
background: #333;
color: #fff;
text-decoration: none;
}

/* NAVIGATION
--------------------------------------------------------- */
/* Main Nav ---*/
#ja-mainnav { line-height: 1; position: relative; z-index: 9; }

#ja-mainnav .inner { margin: 0; }

#ja-mainnav .main {
background: url(../images/mainnav-bg.gif) repeat-x bottom #fff;
border-top: 1px solid #ddd;
font-family: Constantia, Cambria, Times, serif;
font-size: 100%;
}

#ja-mainnav a {
color: #000;
}

/* Sub Nav ---*/
#ja-subnav {
z-index: 9;
position: relative;
}

#ja-subnav .main {
font-family: Arial, sans-serif;
font-size: 92%;
text-transform: UPPERCASE;
z-index: 10;
line-height: 1;
border-bottom: 1px solid #ccc;
}

#ja-subnav ul {
padding: 10px 0 9px;
background: #ddd;
overflow: hidden;
}

#ja-subnav ul.active {
background: #333;
}

#ja-subnav li {
background: none;
display: block;
float: left;
border-left: 1px solid #999;
padding: 0 10px 0 11px;
}

#ja-subnav li:first-child {
border-left: 0;
}

#ja-subnav ul li a {
color: #000;
display: block;
}

#ja-subnav ul li a:hover {}

#ja-subnav ul li.active a,
#ja-subnav ul li.active a:hover,
#ja-subnav ul li.active a:active,
#ja-subnav ul li.active a:focus {
text-decoration: underline;
font-weight: bold;
color: #fff;
}

#ja-subnav ul.active li a {
color: #fff;
}

#ja-subnav ul li.empty {}

/* Sub Nav (lv2) ---*/
#ja-subnav ul li ul {
display: block;
height: auto;
position: absolute;
left: -999%;
background: #fff;
border: 1px solid #ccc;
padding: 0;
}

#ja-subnav ul li.hover ul {
display: block;
height: auto;
position: absolute;
left: auto;
}

#ja-subnav ul li.hasChild a span {
background: url(../images/arrow.png) no-repeat right center;
padding-right: 8px;
}

#ja-subnav ul li.hover a span {
background: url(../images/arrow-2.png) no-repeat right center;
}

#ja-subnav ul li.hasChild li a span, #ja-subnav ul li.hover li a span {
background: none;
padding-right: 0;
}

#ja-subnav ul li ul li {
display: block;
float: none;
text-align: left;
border-left: none;
border-bottom: 1px solid #ddd;
padding: 5px;
}

#ja-subnav ul li ul li a {
border: 0 !important;
text-decoration: none !important;
color: #000 !important;
background-image: none !important;
font-weight: normal !important;
}

#ja-subnav ul li ul li a:hover {
text-decoration: underline !important;
background-image: none !important;
}

#ja-subnav ul li ul li a.active {
color: #145077 !important;
font-weight: bold !important;
}

/* Breadcrumbs ---*/
.ja-navhelper .main {
border-bottom: 1px solid #ddd;
padding: 5px 0;
}

.ja-breadcrums {
float: left;
width: 80%;
margin-left: 10px;
margin-top: 2px;
text-transform: uppercase;
}

.ja-breadcrums strong { margin-right: 5px; }

.ja-breadcrums img { margin: 1px 5px; }

/* Default Joomla! Menu ---*/
ul.menu { margin: 0; padding: 0; }

ul.menu li {
margin: 0;
padding: 0;
background: none;
border-bottom: 1px dotted #ddd;
overflow: hidden;
}

ul.menu li a {
display: block;
outline: none;
padding: 4px 0;
text-indent: 2px;
}

ul.menu li a:hover,
ul.menu li a:active,
ul.menu li a:focus {
}

ul.menu li.active a {
font-weight: bold;
}

ul.menu li ul {
margin: 0 0 0 10px;
}

ul.menu li li {
border-top: 1px dotted #ddd;
border-bottom: 0;
background: url(../images/arrow.png) no-repeat left 9px;
}

ul.menu li li a {
font-weight: normal !important;
text-indent: 8px;
}

ul.menu li li a:hover,
ul.menu li li a:active,
ul.menu li li a:focus {
color: #333333;
}

/* SPOTLIGHT
--------------------------------------------------------- */
#ja-topsl .ja-box, #ja-botsl .ja-box {
padding: 0;
}

#ja-topsl li, #ja-botsl li {
padding-left: 10px;
background-position: 1px 7px;
}

/* Top spotlight ---*/
#ja-topsl .main {
border-bottom: 1px solid #ddd;
}

#ja-topsl .moduletable {
border-bottom: 0;
}

/* Bot spotlight ---*/
#ja-botsl .main {
border-top: 1px solid #ddd;
}

.ja-box .moduletable, .ja-box .moduletable_default {
margin-bottom: 0;
border-bottom: 0;
border-right: 1px solid #ddd;
}

.ja-box-right .moduletable, .ja-box-right .moduletable_default {
border-right: 0;
}

/* FOOTER
--------------------------------------------------------- */
#ja-footer { }

#ja-footer .main {
color: #999999;
position: relative;
overflow: hidden;
padding: 0 0 15px;
border-top: 1px solid #ddd;
}

#ja-footer small {
color: #666;
font-size: 100%;
}

/* Foot Links ---*/
#ja-footer .ja-footnav {
background: #333;
position: relative;
overflow: hidden;
margin: 0 0 10px;
font-size: 100%;
}

.ja-footnav ul { float: left; line-height: normal; }

.ja-footnav li {
display: block;
float: left;
padding: 0;
border-left: 1px solid #666;
}

.ja-footnav li a {
text-transform: uppercase;
display: block;
line-height: normal;
color: #ccc;
padding: 7px 10px;
}

.ja-footnav li a:hover, .ja-footnav li a:active, .ja-footnav li a:focus {
color: #fff;
}

.ja-footnav ul.ja-links { float: right; }
.ja-footnav ul.ja-links li { background: none; border-left: 0; padding: 0; }
.ja-footnav ul.ja-links li a { padding: 7px 10px; }

.ja-footnav ul.ja-links li.top a {
background: url(../images/arrow-3.png) no-repeat 9px center;
padding-left: 18px;
padding-right: 10px;
}

.ja-footnav ul.ja-links li.top a:hover {
background-color: #666;
color: #fff;
text-decoration: none;
}

.ja-footnav ul.ja-links li.layout-switcher a {
background: #145077;
color: #fff;
text-decoration: none;
}

.ja-footnav ul.ja-links li.layout-switcher a:hover {
background: #666;
color: #fff;
text-decoration: none;
}

.ja-footnav ul.ja-links li.user-reset a {
background: #9c162e;
color: #fff;
text-decoration: none;
}

.ja-footnav ul.ja-links li.user-reset a:hover {
background: #666;
color: #fff;
text-decoration: none;
}

.ja-footnav .ja-firstitem { border-left: 0; padding-left: 5px; }

/* Copyright Info. ---*/
.ja-copyright small { display: block; }

/* MISCELLANOUS
----------------------------------------------------------- */
ul.accessibility {
position: absolute;
top: -100%;
}

/* User Tools ---*/
#ja-usertools { float: left; padding-top: 3px; }

#ja-usertools strong {
font-weight: normal;
float: left;
padding: 0 5px 2px 8px;
display: block;
}

#ja-usertools ul { float: left; }

#ja-usertools li {
background: none;
display: block;
float: left;
margin: 0;
padding: 1px 0 0;
}

#ja-usertools li img:hover {
border: 1px solid #999999;
margin: 0;
background: #fff;
}

#ja-usertools img { padding: 2px; margin: 1px; }

/* Font tools ---*/
.item_fonttool .childcontent { width: 150px !important; margin-left: -81px !important;}

.item_fonttool .childcontent .inner { padding: 10px 15px 5px !important; }

.ja-megamenu li.havechild .childcontent .inner ul.ja-usertools-font li {
background: none !important;
margin: 0;
padding: 0 3px 0 0;
display: inline;
}

.ja-megamenu li.havechild .childcontent .inner ul.ja-usertools-font li img {
border: 1px solid #ddd;
}

.ja-megamenu li.havechild .childcontent .inner ul.ja-usertools-font li img:hover {
border: 1px solid #666;
cursor: pointer;
}

/* User Settings ---*/
.ja-usersetting {
margin: 0 -15px;
background: #f7f7f7;
color: #333;
}

a.ja-usersetting-loadform {
position: absolute;
right: 50px;
top: 4px;
width: 20px;
text-indent: -9999px;
height: 20px;
background: url(../images/icon-setting.gif) no-repeat center;
}

form.ja-usersetting-form { padding: 5px 15px; }

.ja-usersetting-options {
width: 100%;
display: block;
}

.ja-usersetting-options ul {
margin: 0;
padding: 5px 0;
overflow: hidden;
clear: both;
font-size: 92%;
}

.ja-usersetting-options ul li {
background: none;
float: left;
display: block;
padding: 0 15px 0 0 !important;
margin: 0 !important;
}

.ja-usersetting-options ul.checkall { padding-bottom: 0; margin-bottom: 0; border-bottom: 0; }

.ja-usersetting-options ul.catselect { margin-top: 0; }
.ja-usersetting-options ul.catselect li { line-height: 20px; height: 20px; }
.ja-usersetting-options ul.catselect label { line-height: 20px; }
.ja-usersetting-options ul.catselect .checkbox { margin: 0 5px; line-height: 20px; }

.ja-usersetting-options p.actions { margin-bottom: 10px; }

/* Icon for min/max ---*/
.ja-mdtool {
position: absolute;
right: 10px;
top: 4px;
width: 20px;
height: 20px;
}

/* Icon for move ---*/
.ja-mdmover {
position: absolute;
right: 30px;
top: 4px;
text-indent: -9999px;
width: 20px;
height: 20px;
background: url(../images/icon-mover.gif) no-repeat center;
}

/* Others ---*/
#ja-banner {
margin: 0;
padding-top: 15px;
text-align: center;
overflow: hidden;
width: 100%;
border-top: 1px solid #ddd;
}

div.ja-innerdiv {
clear: both;
margin-bottom: 10px;
padding-bottom: 12px;
border-bottom: 1px dotted #ddd;
}

div.ja-innerdiv h4 {
margin: 5px 0;
padding: 0;
font-family: Arial, sans-serif;
font-size: 92%;
font-weight: normal;
text-transform: uppercase;
}

.ja-social-bookmarking { float: right; margin-top: 2px; }
.cufon-canvas { padding: 1px 0 3px; }

/* Comments ---*/
/*id*/
#idc-container-parent { margin-top: 20px; border-top: 1px dotted #ddd; clear: both; }

#idc-container .idc-share { position: relative; }

/*disqus*/
#disqus_thread { margin-top: 20px; border-top: 1px dotted #ddd; clear: both; }
button.dsq-button { padding: 4px 8px !important; }
div.dsq-post-fields { z-index: 20; position: relative; }
div.dsq-post-footer { z-index: 18; }

/* Grey box ---*/
#GB_middle .left,
#GB_middle .right {
float: none;
}

/* For backend ---*/
.editor fieldset,
.publishing,
.metadata {
border: 1px solid #ddd;
padding: 10px;
}

.editor fieldset,
.metadata {
margin: 20px 0;
}

.editor fieldset legend,
.publishing legend,
.metadata legend {
background: #666;
font-weight: bold;
padding: 0 5px;
color: #fff;
}

.editor fieldset,
.publishing label,
.metadata label {
font-weight: bold;
padding-right: 10px;
}

.publishing img.calendar {
border: none;
background: none;
padding: 0 0 0 5px;
vertical-align: middle;
}

.publishing div {
padding: 6px 0;
}

.publishing div.wrap {
display: none;
}

.metadata .inputbox {
margin-bottom: 10px;
}

form.user div,
form.user table td {
padding: 6px 0;
}

form.user label {
font-weight: bold;
padding-right: 10px;
}

div.save { margin-top: 10px; }

/* Form logout ---*/
div.name, div.pass, div.remember, div.contact_email {
padding: 6px 0;
}

div.name label, div.pass label, div.remember label, div.contact_email label {
font-weight: bold;
padding-right: 10px;
}

div.contact_email_checkbox {
margin-bottom: 10px;
}

templateDetails.xml шаблона
Код: xml
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="template">
<name>JA_Teline_III</name>
<creationDate>11 December 09</creationDate>
<author>JoomlArt.com</author>
<copyright>JoomlArt Design Team</copyright>
<authorEmail>webmaster@joomlart.com</authorEmail>
<authorUrl>www.joomlart.com</authorUrl>
<version>1.4 - stable</version>
<description>JA Teline III Desc</description>
<files>
<filename>component.php</filename>
<filename>favicon.ico</filename>
<filename>index.html</filename>
<filename>index.php</filename>
<filename>params.ini</filename>
<filename>template_thumbnail.png</filename>
<folder>css</folder>
<folder>html</folder>
<folder>images</folder>
<folder>js</folder>
<folder>layouts</folder>
<folder>libs</folder>

</files>
<languages>
<language tag="en-GB">en-GB.tpl_ja_teline_iii.ini</language>
</languages>
<administration>
<languages folder="admin">
<language tag="en-GB">en-GB.tpl_ja_teline_iii.ini</language>
</languages>
    </administration>

<positions>
<position>hornav</position>
<position>breadcrumbs</position>
<position>banner</position>
<position>left</position>
<position>right</position>
<position>top</position>
<position>search</position>
<position>headlines</position>
<position>meta-item</position>
<position>megamenu</position>
<position>ja-login</position>
<position>ja-news</position>
<position>ja-tabs</position>
<position>ja-tabs1</position>
<position>ja-tabs2</position>
<position>ja-tabs3</position>
<position>col-mass1</position>
<position>col-mass2</position>
<position>content-top</position>
<position>content-top2</position>
<position>content-bot</position>
<position>user1</position>
<position>user2</position>
<position>user3</position>
<position>user4</position>
<position>user5</position>
<position>user6</position>
<position>user7</position>
<position>user8</position>
<position>user9</position>
<position>user10</position>
<position>footer</position>
<position>syndicate</position>
<position>debug</position>
</positions>

<params>
<param type="spacer" default="&lt;hr /&gt;&lt;b&gt;Basic Settings&lt;/b&gt;" />
<param name="logoType" type="list" default="image" label="Logo type" description="Logo type desc">
<option value="image">Image</option>
<option value="text">Text</option>
</param>
<param name="logoText" type="text" default="" size="50" label="Logo text" description="Logo text desc" />
<param name="sloganText" type="text" default="" size="50" label="Slogan" description="Slogan desc" />

<param name="ja_font" type="list" default="3" label="Font size" description="Font size desc">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</param>

<param type="spacer" default="&lt;hr /&gt;&lt;b&gt;Cufon&lt;/b&gt;" />

<param name="ja_cufon" type="list" default="1" label="Enable Cufon" description="Enable Cufon desc">
<option value="0">No</option>
<option value="1">Yes</option>
</param>

<param type="spacer" default="&lt;hr /&gt;&lt;b&gt;Menu System&lt;/b&gt;" />

<param name="menutype" type="menu" default="mainmenu" label="Menu Module" description="Menu Module Desc" />
<param name="ja_menu" type="list" default="css" label="Menu Type" description="Menu Type Desc">
 <option value="split">Split Menu</option>
 <option value="css">CSS Menu</option>
 <option value="moo">Moo Menu</option>
 <option value="dropline">Dropline Menu</option>
</param>
<param name="startlevel" type="text" default="0" label="Start Level" description="Start Level Desc" />
<param name="endlevel" type="text" default="-1" label="End Level" description="End Level Desc" />
<param name="page_menus" type="textarea" cols="50" rows="8" default="" label="Customize menu for page" description="Customize menu for page desc" />

<param type="spacer" default="&lt;hr /&gt;&lt;b&gt;Layout&lt;/b&gt;" />


<param name="main_layout" type="filelist" directory="templates/ja_teline_iii/layouts" stripext="true" default="" label="Default Layout" description="Default Layout Desc" />
<param name="page_layouts" type="textarea" cols="50" rows="8" default="" label="Page layouts overwrite" description="Page layouts overwrite desc" />


<param name="iphone_layout" type="filelist" directory="templates/ja_teline_iii/layouts" stripext="true" default="" label="Iphone" description="Iphone Desc" />

<param name="other_handheld_layout" type="filelist" directory="templates/ja_teline_iii/layouts" stripext="true" default="" label="Other Handheld devices" description="Other Handheld devices Desc" />

</params>
</install>

что еще нужно из кода?
« Последнее редактирование: 05.05.2010, 13:42:56 от trk »
*

_ib_

  • Давно я тут
  • 673
  • 100 / 8
P.s. если Вы начинающий, то не советую трогать этот шаблон воопще, т.к. он довольно сложный.
почитайте лучше книжки по CSS, без базовых знаний у Вас ничего не получится.
Легальные шаблоны и дёшево!  + скидки до 50% для шаблонов клуба Joomlart, RocketTheme, Yootheme и Gavick.

при интересе пишите в личку или на мыло: "p" точка "d" собака gmx.de
*

trk

  • Захожу иногда
  • 80
  • 2 / 0
Нужно именно этот.
Прошу помочь.
*

trk

  • Захожу иногда
  • 80
  • 2 / 0
Поиском искал. Как сделать то что мне нужно не нашол. Тем более люди пишут про свое и не всегда получается интерпретировать это для своего случая.
Прошу помочь а не посылать в поиски по сайту.  :(
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Слетели URL и шаблон

Автор max888

Ответов: 2
Просмотров: 5793
Последний ответ 28.12.2020, 17:37:52
от draff
VirtueMart 1.9 шаблон письма

Автор m176

Ответов: 0
Просмотров: 3102
Последний ответ 23.10.2020, 12:38:35
от m176
шаблон IT Newsy - By IceTheme проблема со списком.

Автор wolf34

Ответов: 4
Просмотров: 6045
Последний ответ 30.05.2017, 11:52:27
от darkghost
Как изменить шаблон категории в Joomla 1.5?

Автор nagav

Ответов: 8
Просмотров: 5567
Последний ответ 24.10.2016, 22:09:01
от nagav
Не стал показываться шаблон

Автор rezchik

Ответов: 2
Просмотров: 4973
Последний ответ 14.08.2016, 22:12:50
от rezchik