Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

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

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Пропала верстка Joomla 2.5
« : 14.07.2014, 11:52:39 »
Однажды, на этом форуме мне здорово помогли! И вот снова я к Вам с вопросом...

Есть сайт на Joomla 2.5, использую на нем кэш и сжатие в настройках шаблона. Но из-за того, что все файлы сохраняются в кэш и загружаются от туда - изменения на сайте происходят не сразу. На днях отредактировал CSS файл (подключил шрифт с Google и поменял на сайте), удалил файлы с кэша и все было отлично. Но буквально на следующий день зашел на сайт, а верстки на нем нет! Что только не перепробовал, ничего не помогает. В чем может быть и проблема и как это исправить?
Вот пациент: http://micasa.by/
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Пропала верстка Joomla 2.5
« Ответ #1 : 14.07.2014, 12:37:21 »
ошибок вроде нет, так что в настройках шаблона смотрите.
возможно, какую-нибудь "мобильную" версию сайта включили.

+можно попробовать перенести код с новыми строками (подключенный шрифт) в конец файла CSS.
возможно, из-за них косяк происходит.
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #2 : 14.07.2014, 12:52:40 »
Я заметил, что стили которые прописаны сейчас - только для для плагина widgetkit. Т.е. для слайдера стили прописаны, для галерей, которые на внутр. страницах находятся, а вот основные стили для шаблона вообще не прописаны, но проблема в том, что я их не удалял из кода.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Пропала верстка Joomla 2.5
« Ответ #3 : 14.07.2014, 13:08:33 »
это понятно, не понятно, как устроены CSS
это отдельные файлы?
если да, то можно найти условие, по которому подключается конкретный файл и убрать условность, к примеру.
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #4 : 14.07.2014, 13:11:44 »
В файле template.config.php есть такие строки:
Код
// load CSS
$this['asset']->addFile('css', 'css:base.css');
$this['asset']->addFile('css', 'css:layout.css');
$this['asset']->addFile('css', 'css:menus.css');
$this['asset']->addString('css', implode("\n", $css));
$this['asset']->addFile('css', 'css:modules.css');
$this['asset']->addFile('css', 'css:tools.css');
$this['asset']->addFile('css', 'css:system.css');
$this['asset']->addFile('css', 'css:extensions.css');
$this['asset']->addFile('css', 'css:custom.css');
if ($this['config']->get('animations')) $this['asset']->addFile('css', 'css:animations.css');
if (($color = $this['config']->get('color')) && $this['path']->path("css:/color/$color.css")) { $this['asset']->addFile('css', "css:/color/$color.css"); }
if (($background = $this['config']->get('background')) && $this['path']->path("css:/background/$background.css")) { $this['asset']->addFile('css', "css:/background/$background.css"); }
if (($font = $this['config']->get('font1')) && $this['path']->path("css:/font1/$font.css")) { $this['asset']->addFile('css', "css:/font1/$font.css"); }
if (($font = $this['config']->get('font2')) && $this['path']->path("css:/font2/$font.css")) { $this['asset']->addFile('css', "css:/font2/$font.css"); }
if (($font = $this['config']->get('font3')) && $this['path']->path("css:/font3/$font.css")) { $this['asset']->addFile('css', "css:/font3/$font.css"); }
$this['asset']->addFile('css', 'css:style.css');
if ($this['config']->get('direction') == 'rtl') {
$this['asset']->addFile('css', 'css:rtl.css');
if (($color = $this['config']->get('color')) && $this['path']->path("css:/color/$color-rtl.css")) { $this['asset']->addFile('css', "css:/color/$color-rtl.css"); }
}
$this['asset']->addFile('css', 'css:responsive.css');
$this['asset']->addFile('css', 'css:print.css');
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Пропала верстка Joomla 2.5
« Ответ #5 : 14.07.2014, 13:18:31 »
а имя искомого файла как звучит? я не настолько настрадамус, чтобы его угадать )
тут вроде нет похожих условий.
берете название искомого файла и поиском по сайтам шаблона ищете, где оно подключается
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #6 : 14.07.2014, 13:27:48 »
А какой файл искать? Просто что-то я совсем плохо понимаю что делать...
Мне кажется, что нужно как-то отключить кэширование, чтобы сайт загружался как положено, а не через сохраненную копию. Тогда может подключатся стили...
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #7 : 14.07.2014, 13:28:36 »
Отключал кэширование и в админке, и через конфиг.пхп, удалял кэш сайта, кэш браузера, а на выходе то же самое. Почему то он опять создает в кэш копии страниц и загружает сайт оттуда.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Пропала верстка Joomla 2.5
« Ответ #8 : 14.07.2014, 13:36:46 »
как какой файл? в котором приписаны настройки стилей, которых нет на сайте.
например, тег h1 нигде не фигурирует.
ну или вот это вхождение
#logo
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #9 : 14.07.2014, 13:56:38 »
Все эти элементы разбросаны по разным файлам со стилями. Мне кажется, что проблема не в том, что CSS файлов нет, ведь они есть, но почему-то не подключаются...
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Пропала верстка Joomla 2.5
« Ответ #10 : 14.07.2014, 14:03:37 »
я вам предлагаю алгоритм.
найти конкретный файл, который точно не подключился, найти строки, где упомянут этот файл и попробовать понять, почему подключились все, кроме него.
ну или можете подождать, пока само пройдет )
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #11 : 14.07.2014, 14:08:43 »
В этом файле по идее все подключается:
Код
<?php
/**
* @package   yoo_micasa
* @author    YOOtheme http://www.yootheme.com
* @copyright Copyright (C) YOOtheme GmbH
* @license   http://www.gnu.org/licenses/gpl.html GNU/GPL
*/

// generate CSS for layout
$css[] = sprintf('.wrapper { max-width: %dpx; }', $this['config']->get('template_width'));

// generate CSS for 3-column-layout
$sidebar_a       = '';
$sidebar_b       = '';
$maininner_width = 100;
$sidebar_a_width = intval($this['config']->get('sidebar-a_width'));
$sidebar_b_width = intval($this['config']->get('sidebar-b_width'));
$sidebar_classes = "";
$rtl             = $this['config']->get('direction') == 'rtl';
$body_config = array();

// set widths
if ($this['modules']->count('sidebar-a')) {
$sidebar_a = $this['config']->get('sidebar-a');
$maininner_width -= $sidebar_a_width;
$css[] = sprintf('#sidebar-a { width: %d%%; }', $sidebar_a_width);
}

if ($this['modules']->count('sidebar-b')) {
$sidebar_b = $this['config']->get('sidebar-b');
$maininner_width -= $sidebar_b_width;
$css[] = sprintf('#sidebar-b { width: %d%%; }', $sidebar_b_width);
}

$css[] = sprintf('#maininner { width: %d%%; }', $maininner_width);

// all sidebars right
if (($sidebar_a == 'right' || !$sidebar_a) && ($sidebar_b == 'right' || !$sidebar_b)) {
$sidebar_classes .= ($sidebar_a)? 'sidebar-a-right ' : '';
$sidebar_classes .= ($sidebar_b)? 'sidebar-b-right ' : '';

// all sidebars left
} elseif (($sidebar_a == 'left' || !$sidebar_a) && ($sidebar_b == 'left' || !$sidebar_b)) {
$sidebar_classes .= ($sidebar_a)? 'sidebar-a-left ' : '';
$sidebar_classes .= ($sidebar_b)? 'sidebar-b-left ' : '';
$css[] = sprintf('#maininner { float: %s; }', $rtl ? 'left' : 'right');

// sidebar-a left and sidebar-b right
} elseif ($sidebar_a == 'left') {
$sidebar_classes .= 'sidebar-a-left sidebar-b-right ';
$css[] = '#maininner, #sidebar-a { position: relative; }';
$css[] = sprintf('#maininner { %s: %d%%; }', $rtl ? 'right' : 'left', $sidebar_a_width);
$css[] = sprintf('#sidebar-a { %s: -%d%%; }', $rtl ? 'right' : 'left', $maininner_width);

// sidebar-b left and sidebar-a right
} elseif ($sidebar_b == 'left') {
$sidebar_classes .= 'sidebar-a-right sidebar-b-left ';
$css[] = '#maininner, #sidebar-a, #sidebar-b { position: relative; }';
$css[] = sprintf('#maininner, #sidebar-a { %s: %d%%; }', $rtl ? 'right' : 'left', $sidebar_b_width);
$css[] = sprintf('#sidebar-b { %s: -%d%%; }', $rtl ? 'right' : 'left', $maininner_width + $sidebar_a_width);
}

// number of sidebars
if ($sidebar_a && $sidebar_b) {
$sidebar_classes .= 'sidebars-2 ';
} elseif ($sidebar_a || $sidebar_b) {
$sidebar_classes .= 'sidebars-1 ';
}

// generate CSS for dropdown menu
foreach (array(1 => '.dropdown', 2 => '.columns2', 3 => '.columns3', 4 => '.columns4') as $i => $class) {
$css[] = sprintf('#menu %s { width: %dpx; }', $class, $i * intval($this['config']->get('menu_width')));
}

// load CSS
$this['asset']->addFile('css', 'css:base.css');
$this['asset']->addFile('css', 'css:layout.css');
$this['asset']->addFile('css', 'css:menus.css');
$this['asset']->addString('css', implode("\n", $css));
$this['asset']->addFile('css', 'css:modules.css');
$this['asset']->addFile('css', 'css:tools.css');
$this['asset']->addFile('css', 'css:system.css');
$this['asset']->addFile('css', 'css:extensions.css');
$this['asset']->addFile('css', 'css:custom.css');
if ($this['config']->get('animations')) $this['asset']->addFile('css', 'css:animations.css');
if (($color = $this['config']->get('color')) && $this['path']->path("css:/color/$color.css")) { $this['asset']->addFile('css', "css:/color/$color.css"); }
if (($background = $this['config']->get('background')) && $this['path']->path("css:/background/$background.css")) { $this['asset']->addFile('css', "css:/background/$background.css"); }
if (($font = $this['config']->get('font1')) && $this['path']->path("css:/font1/$font.css")) { $this['asset']->addFile('css', "css:/font1/$font.css"); }
if (($font = $this['config']->get('font2')) && $this['path']->path("css:/font2/$font.css")) { $this['asset']->addFile('css', "css:/font2/$font.css"); }
if (($font = $this['config']->get('font3')) && $this['path']->path("css:/font3/$font.css")) { $this['asset']->addFile('css', "css:/font3/$font.css"); }
$this['asset']->addFile('css', 'css:style.css');
if ($this['config']->get('direction') == 'rtl') {
$this['asset']->addFile('css', 'css:rtl.css');
if (($color = $this['config']->get('color')) && $this['path']->path("css:/color/$color-rtl.css")) { $this['asset']->addFile('css', "css:/color/$color-rtl.css"); }
}
$this['asset']->addFile('css', 'css:responsive.css');
$this['asset']->addFile('css', 'css:print.css');

// load fonts
$http  = (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off')? 'https' : 'http';
$fonts = array(
'bebas' => 'template:fonts/bebas.css',
'droidsans' => 'template:fonts/droidsans.css',
'yanonekaffeesatz' => 'template:fonts/yanonekaffeesatz.css',
'droidserif' => 'template:fonts/droidserif.css',
'nobileregular' => 'template:fonts/nobileregular.css',
'newscycleregular' => 'template:fonts/newscycleregular.css',
'breeserifregular' => 'template:fonts/breeserifregular.css',
'metrophobicregular' => 'template:fonts/metrophobicregular.css',
'lato' => 'template:fonts/lato.css',
'droidserifitalic' => 'template:fonts/droidserifitalic.css');



foreach (array_unique(array($this['config']->get('font1'), $this['config']->get('font2'), $this['config']->get('font3'))) as $font) {
if (isset($fonts[$font])) {
$this['asset']->addFile('css', $fonts[$font]);
}
}

// set body CSS classes
$body_classes  = $sidebar_classes.' ';
$body_classes .= $this['system']->isBlog()? 'isblog ' : 'noblog ';
$body_classes .= $this['config']->get('page_class');

$this['config']->set('body_classes', $body_classes);

// add social buttons
$body_config['twitter'] = (int) $this['config']->get('twitter', 0);
$body_config['plusone'] = (int) $this['config']->get('plusone', 0);
$body_config['facebook'] = (int) $this['config']->get('facebook', 0);

$this['config']->set('body_config', json_encode($body_config));

// add javascripts
$this['asset']->addFile('js', 'js:warp.js');
$this['asset']->addFile('js', 'js:responsive.js');
$this['asset']->addFile('js', 'js:accordionmenu.js');
$this['asset']->addFile('js', 'js:dropdownmenu.js');
$this['asset']->addFile('js', 'js:template.js');

// internet explorer
if ($this['useragent']->browser() == 'msie') {

    // add conditional comments
    $head[] = sprintf('<!--[if lte IE 8]><script src="%s"></script><![endif]-->', $this['path']->url('js:html5.js'));
    $head[] = sprintf('<!--[if IE 8]><link rel="stylesheet" href="%s" /><![endif]-->', $this['path']->url('css:ie8.css'));

}


// add $head
if (isset($head)) {
$this['template']->set('head', implode("\n", $head));
}
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #13 : 14.07.2014, 14:28:46 »
Код
/* Copyright (C) YOOtheme GmbH, YOOtheme Proprietary Use License (http://www.yootheme.com/license) */

@import url(../warp/css/layout.css);


/* Spacing
----------------------------------------------------------------------------------------------------*/

.module,
#header,
#breadcrumbs,
#content,
#footer { margin: 15px; }

#header { margin-top: 30px; }

#toolbar { margin-bottom: 15px; }

#footer .module { margin: 0; }


/* Layout
----------------------------------------------------------------------------------------------------*/

[b]#logo[/b] {
display: inline-block;
margin-right: 30px;
float: none;
}

#menubar {
display: inline-block;
position: relative;
bottom: -5px;
}

#search { float: left; }

#bottom-a:before,
#bottom-b:before {
content: "";
display: block;
margin: 15px;
border-top-width: 1px;
border-top-style: solid;
border-top-color: #EBEBEB;
}

#footer { font-size: 13px; }

#totop-scroller {
display: block;
position: absolute;
top: 0;
right: 0;
z-index: 1;
width: 25px;
height: 25px;
background-image: url(../images/totop_scroller.png);
background-position: 0 0;
background-repeat: no-repeat;
background-color: #F5F5F5;
text-decoration: none;
border-radius: 4px;
}

#totop-scroller:hover { background-position: 0 -50px; }
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #14 : 14.07.2014, 14:29:41 »
micasa.by/templates/yoo_micasa/css/layout.css
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #15 : 14.07.2014, 14:57:05 »
Проблему устранил... Скачал шаблон, и перезалил:
module.php
template.config.php
template.php
Видимо что там накосячил...
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Пропала верстка Joomla 2.5
« Ответ #16 : 14.07.2014, 18:52:23 »
 ;D оригинальный сайт. Домен назван по имени шаблона YooTheme Micasa.
Может пригодится в дальнейшем - раз у вас шаблон на фреймворке WARP читайте документацию на JoomlaBlog
по Warp 6 - тут
по Warp 7 - тут
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

arty220

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: Пропала верстка Joomla 2.5
« Ответ #17 : 17.07.2014, 09:45:42 »
Просто мне очень понравилось название шаблона, которое очень даже подходило по тематике :). Спасибо за совет, обязательно почитаю!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как редактировать отдельную страницу Joomla 2.5?

Автор mrporter

Ответов: 0
Просмотров: 14191
Последний ответ 14.09.2023, 22:16:47
от mrporter
Joomla 2.5.28, Safari под маком и сессии session

Автор beliyadm

Ответов: 19
Просмотров: 17000
Последний ответ 29.03.2023, 12:17:19
от Sawell
Joomla 2.5.28 как скачать все файлы через панель управления

Автор Sergei41984

Ответов: 7
Просмотров: 14739
Последний ответ 27.12.2022, 23:30:38
от Sergei41984
Расширения для Joomla! 1.6 (коллекция полезных ссылок)

Автор Sulpher

Ответов: 124
Просмотров: 146078
Последний ответ 03.12.2022, 16:15:19
от besttechoff
Почему в админке Joomla 2.58 - у меня 16 админов показывает?

Автор dyalex

Ответов: 7
Просмотров: 15595
Последний ответ 27.10.2022, 19:03:45
от marksetter