Новости 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

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

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

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Рухнул сайт )
« : 24.06.2017, 17:09:07 »
Вот как было)
Обнаружил не закрытый тег div, закрыл его в index.php в своем шаблоне на локальном серевере (OpenServer).
На хостинге удалил index.php и залил свой.
И теперь выбивается такая ошибка:
Fatal error: Cannot redeclare class JHtmlBehavior in /home/workbook-web.info/www/plugins/system/joomla_options/behavior.php on line 13

Что делать?
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Re: Рухнул сайт )
« Ответ #1 : 24.06.2017, 17:10:52 »
а что на 13 строчке +-3
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #2 : 24.06.2017, 17:11:59 »
а что на 13 строчке +-3
Файл behavior.php:
Код
<?php
/**
 * @package     Joomla.Plugin
 * @subpackage  System.Joomla_Options
 * @autor        Fedor Vlasenko
 * @copyright   Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */
// Запрет прямого доступа.
defined('_JEXEC') or die;

abstract class JHtmlBehavior
{
public static function __callStatic($_name, $_param)
{
}
}
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Re: Рухнул сайт )
« Ответ #3 : 24.06.2017, 17:14:43 »
попробуйте убрать одну пару открывающую и закрывающую {}
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #4 : 24.06.2017, 17:25:08 »
попробуйте убрать одну пару открывающую и закрывающую {}
непомогло.
ели убираю первую пару то меняется строка ошибки с 13 на 14, а если вторую то с 13 на 16.
Та явно не в этом дело, переводчик пишет сто проблема из-за того что не может переопределить класс.
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #5 : 24.06.2017, 17:37:53 »
Воспользовался функцией "Восстановление резервной копии"
Сайт снова работает.
Буду пробывать еще раз заменить index.php))
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #6 : 24.06.2017, 17:41:29 »
Та что ж такое.
Таже ошибка только на 12 строке.
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Re: Рухнул сайт )
« Ответ #7 : 24.06.2017, 17:42:40 »
сравни файлы behavior на локалке и на хосте
 и попробуй закрыть див непосредственно на хосте а не переносом индекса
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #8 : 24.06.2017, 17:43:26 »
В этот раз я скопировал index.php и если я его возвращаю то все работает.
Что происходит?))
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #9 : 24.06.2017, 17:43:54 »
Сравнивал, идентичны.
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #10 : 24.06.2017, 17:51:27 »
А вот если я делаю в скопированном файле index.php, а потом его заменяю то все хорошо))
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Re: Рухнул сайт )
« Ответ #11 : 24.06.2017, 17:53:08 »
значит в индексах разница...
есть желаение покопайся
скорее что то на этот behavior ссылается
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Рухнул сайт )
« Ответ #12 : 24.06.2017, 18:14:25 »
Эй эй народ, вас куда понесло. Просто два раза подключаете JHtmlBehavior убирите у себя в шаблоне и радуйтесь жизни.
« Последнее редактирование: 26.06.2017, 10:19:44 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #13 : 26.06.2017, 09:35:07 »
Это как?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рухнул сайт )
« Ответ #14 : 26.06.2017, 09:53:29 »
попробуйте убрать одну пару открывающую и закрывающую {}
lexxbry, лучше не давайте больше таких советов.
Это как?
Это значит, что вы пытались дважды объявлять класс JHtmlBehavior. Выкладывайте сюда код своего index.php.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

lexxbry

  • Живу я здесь
  • 2387
  • 68 / 8
Re: Рухнул сайт )
« Ответ #15 : 26.06.2017, 09:58:16 »
lexxbry, лучше не давайте больше таких советов.Это значит, что вы пытались дважды объявлять класс JHtmlBehavior. Выкладывайте сюда код своего index.php.
Роберт, просто увидел в том что есть пустое объявление {}
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #16 : 26.06.2017, 15:24:56 »
Код
<?php defined("_JEXEC") or die(); ?>

<?php
$doc = JFactory::getDocument();

$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/libs.min.css");
$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/main.css");

$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/libs.min.js");
$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/main.js");
$app = JFactory::getApplication();

?>

<head>
    <jdoc:include type="head"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</head>
<body>
<div class="page-wraper">
    <div class="conteiner clearfix">
        <div class="sidebar-bg"></div>
        <div class="sidebar">
            <jdoc:include type="modules" name="images section"/>

            <nav>
                <jdoc:include type="modules" name="main menu"/>
            </nav>
        </div>
        <main class="main">
            <a href="#" class="mobile-btn"><span></span></a>
            <?php if ($this->countModules('main title')) {
                echo '<div class="top-title">

                <jdoc:include type="modules" name="main title"/>
                </div>';
            } ?>

            <div class="modul-nav">
                <?php if ($this->countModules('table of contents')) : ?>
                    <div class="modul-nav__top clearfix">
                        <jdoc:include type="modules" name="table of contents"/>

                        <?php if ($this->countModules('menu-list')) : ?>
                            <div class="modul-nav__list">

                                <jdoc:include type="modules" name="menu-list"/>

                            </div>
                        <?php endif ?>
                    </div>
                <?php endif ?>
            </div>
            <div class="content">
                <?php if ($this->countModules('menu submenu')) : ?>
                    <div class="submenu">
                        <jdoc:include type="modules" name="menu submenu"/>
                    </div>
                <?php endif ?>
                <div class="content__text">
                    <jdoc:include type="component"/>
                </div>
            </div>
        </main>
    </div>


</div>
<footer class="footer">

</footer>
</body>
</html>
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рухнул сайт )
« Ответ #17 : 26.06.2017, 15:33:27 »
И что вы в нем меняли?
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: Рухнул сайт )
« Ответ #18 : 26.06.2017, 16:03:24 »
skytype Значит в каком-то переопределении.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рухнул сайт )
« Ответ #19 : 26.06.2017, 16:33:55 »
Fatal error: Cannot redeclare class JHtmlBehavior in /home/workbook-web.info/www/plugins/system/joomla_options/behavior.php on line 13
Что за плагин?
1. Обратитесь к автору
Код
 * @autor        Fedor Vlasenko
2. Попробуйте его отключить или выложите сюда файл плагина.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #20 : 26.06.2017, 17:34:11 »
Что за плагин?
1. Обратитесь к автору2. Попробуйте его отключить или выложите сюда файл плагина.
Этот плагин отключает Mootools, Jquery, Bootstrap.
Дело в том что если я залью index.php с OpenServer то ошибка, а если я скопирую index.php с хостинга произведу в нем изменения и залью обратно, то все хорошо, а код в файлах одинаковый.
« Последнее редактирование: 26.06.2017, 17:38:16 от skytype »
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #21 : 26.06.2017, 17:36:17 »
Код
<?php defined("_JEXEC") or die(); ?>

<?php
$doc = JFactory::getDocument();

$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/libs.min.css");
$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/main.css");

$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/libs.min.js");
$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/main.js");
$app = JFactory::getApplication();

?>

<head>
    <jdoc:include type="head"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</head>
<body>
<div class="page-wraper">
    <div class="conteiner clearfix">
        <div class="sidebar-bg"></div>
        <div class="sidebar">
            <jdoc:include type="modules" name="images section"/>

            <nav>
                <jdoc:include type="modules" name="main menu"/>
            </nav>
        </div>
        <main class="main">
            <a href="#" class="mobile-btn"><span></span></a>
            <?php if ($this->countModules('main title')) {
                echo '<div class="top-title">

                <jdoc:include type="modules" name="main title"/>
                </div>';
            } ?>

            <div class="modul-nav">
                <?php if ($this->countModules('table of contents')) : ?>
                    <div class="modul-nav__top clearfix">
                        <jdoc:include type="modules" name="table of contents"/>

                        <?php if ($this->countModules('menu-list')) : ?>
                            <div class="modul-nav__list">

                                <jdoc:include type="modules" name="menu-list"/>

                            </div>
                        <?php endif ?>
                    </div>
                <?php endif ?>
            </div>
            <div class="content">
                <?php if ($this->countModules('menu submenu')) : ?>
                    <div class="submenu">
                        <jdoc:include type="modules" name="menu submenu"/>
                    </div>
                <?php endif ?>
                <div class="content__text">
                    <jdoc:include type="component"/>
                </div>
            </div>
        </main>
    </div>


</div>
<footer class="footer">

</footer>
</body>
</html>
у <div class="modul-nav"> поставил закрывающий тег. </div>
Код
<div class="modul-nav">
                <?php if ($this->countModules('table of contents')) : ?>
                    <div class="modul-nav__top clearfix">
                        <jdoc:include type="modules" name="table of contents"/>

                        <?php if ($this->countModules('menu-list')) : ?>
                            <div class="modul-nav__list">

                                <jdoc:include type="modules" name="menu-list"/>

                            </div>
                        <?php endif ?>
                    </div>
                <?php endif ?>
            </div>
« Последнее редактирование: 26.06.2017, 17:42:06 от skytype »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рухнул сайт )
« Ответ #22 : 26.06.2017, 18:10:27 »
1. Поставьте этот плагин первым в очереди исполнения. Очень странно, что (P.S. как минимум, plgSystemK2 грузит) JHtmlBehavior уже был загружен до него.
2. Что значит
залью index.php с OpenServer
и
скопирую index.php с хостинга произведу в нем изменения и залью обратно
?
3. В каких редакторах в первом и во втором случаях делаете изменения?
Получается, что проблемы нет, вы просто хотите понять, почему в первом случае выходит ошибка?
« Последнее редактирование: 26.06.2017, 18:21:42 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Re: Рухнул сайт )
« Ответ #23 : 26.06.2017, 18:23:42 »
Дело в том что если я залью index.php с OpenServer то ошибка, а если я скопирую index.php с хостинга произведу в нем изменения и залью обратно, то все хорошо, а код в файлах одинаковый.
Чудес не бывает. Если один выдает фатальную ошибку, а другой нет, значит не одинаковый.
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #24 : 26.06.2017, 18:49:16 »
1. Поставьте этот плагин первым в очереди исполнения. Очень странно, что (P.S. как минимум, plgSystemK2 грузит) JHtmlBehavior уже был загружен до него.
2. Что значити?
3. В каких редакторах в первом и во втором случаях делаете изменения?
Получается, что проблемы нет, вы просто хотите понять, почему в первом случае выходит ошибка?

Сначала шаблон устанавливал и настраивал на OpenServer, а потом перенес на хостинг. После этого все изменения производил на OpenServer после чего файлы заливал на хостинг. Редактировал файлы в PhpStorm.
Какбы проблемы нет, сайт востановил через резервное копирование, но теперь чтобы изменить index.php то мне нужно его сначала скачать с хостинга, а потом его же залить обратно(
*

skytype

  • Захожу иногда
  • 66
  • 1 / 0
Re: Рухнул сайт )
« Ответ #25 : 26.06.2017, 18:54:58 »
Чудес не бывает. Если один выдает фатальную ошибку, а другой нет, значит не одинаковый.
Я согласен чудес не бывает, но вот где в них разница?)
index.php  с Хостинга
Код
<?php defined("_JEXEC") or die(); ?>

<?php
$doc = JFactory::getDocument();

$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/libs.min.css");
$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/main.css");

$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/libs.min.js");
$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/main.js");
$app = JFactory::getApplication();

?>

<head>
    <jdoc:include type="head"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</head>
<body>
<div class="page-wraper">
    <div class="conteiner clearfix">
        <div class="sidebar-bg"></div>
        <div class="sidebar">
            <jdoc:include type="modules" name="images section"/>

            <nav>
                <jdoc:include type="modules" name="main menu"/>
            </nav>
        </div>
        <main class="main">
            <a href="#" class="mobile-btn"><span></span></a>
            <?php if ($this->countModules('main title')) {
                echo '<div class="top-title">

                <jdoc:include type="modules" name="main title"/>
                </div>';
            } ?>

            <div class="modul-nav">
                <?php if ($this->countModules('table of contents')) : ?>
                    <div class="modul-nav__top clearfix">
                        <jdoc:include type="modules" name="table of contents"/>

                        <?php if ($this->countModules('menu-list')) : ?>
                            <div class="modul-nav__list">

                                <jdoc:include type="modules" name="menu-list"/>

                            </div>
                        <?php endif ?>
                    </div>
                <?php endif ?>
            </div>
            <div class="content">
                <?php if ($this->countModules('menu submenu')) : ?>
                    <div class="submenu">
                        <jdoc:include type="modules" name="menu submenu"/>
                    </div>
                <?php endif ?>
                <div class="content__text">
                    <jdoc:include type="component"/>
                </div>
            </div>
        </main>
    </div>


</div>
<footer class="footer">

</footer>
</body>
</html>

index.php c OpenServer
Код
<?php defined("_JEXEC") or die(); ?>

<?php
$doc = JFactory::getDocument();

$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/libs.min.css");
$doc->addStyleSheet(JUri::base(TRUE). "/templates/" . $doc->template . "/css/main.css");

$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/libs.min.js");
$doc->addScript(JUri::base(TRUE). "/templates/" . $doc->template . "/js/main.js");
$app = JFactory::getApplication();

?>

<head>
    <jdoc:include type="head"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
</head>
<body>
<div class="page-wraper">
    <div class="conteiner clearfix">
        <div class="sidebar-bg"></div>
        <div class="sidebar">
            <jdoc:include type="modules" name="images section"/>

            <nav>
                <jdoc:include type="modules" name="main menu"/>
            </nav>
        </div>
        <main class="main">
            <a href="#" class="mobile-btn"><span></span></a>
            <?php if ($this->countModules('main title')) {
                echo '<div class="top-title">

                <jdoc:include type="modules" name="main title"/>
                </div>';
            } ?>

            <div class="modul-nav">
                <?php if ($this->countModules('table of contents')) : ?>
                    <div class="modul-nav__top clearfix">
                        <jdoc:include type="modules" name="table of contents"/>

                        <?php if ($this->countModules('menu-list')) : ?>
                            <div class="modul-nav__list">

                                <jdoc:include type="modules" name="menu-list"/>

                            </div>
                        <?php endif ?>
                    </div>
                <?php endif ?>
            </div>
            <div class="content">
                <?php if ($this->countModules('menu submenu')) : ?>
                    <div class="submenu">
                        <jdoc:include type="modules" name="menu submenu"/>
                    </div>
                <?php endif ?>
                <div class="content__text">
                    <jdoc:include type="component"/>
                </div>
            </div>
        </main>
    </div>


</div>
<footer class="footer">

</footer>
</body>
</html>

*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: Рухнул сайт )
« Ответ #26 : 26.06.2017, 19:06:28 »
Если вы не видите разницу, это еще не значит, что ее нет :). BOM, например, просто так не увидите.
Ну, снесите этот OpenServer, поставьте в отдельности Apache, MySQL, PHP.
Не будь паразитом, сделай что-нибудь самостоятельно!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Восстановить сайт

Автор 1c-zhit

Ответов: 1
Просмотров: 2317
Последний ответ 07.08.2024, 21:00:57
от Vastriet
Не грузится страница админки, после смены хостинга. Но сам сайт работает

Автор Janitor

Ответов: 2
Просмотров: 1536
Последний ответ 02.07.2023, 10:37:01
от Janitor
Сайт работает на PHP 7.2 /Joomla 3.9 ---- Akeeba Backup 8.1.10 не запускается

Автор Validator

Ответов: 9
Просмотров: 2087
Последний ответ 21.09.2022, 19:09:17
от Validator
Обновление с 3.10.4 на 3.10.5 сайт умер насовсем

Автор Шмайсер

Ответов: 8
Просмотров: 1534
Последний ответ 15.08.2022, 11:14:26
от Шмайсер
Не могу зайти в установленный сайт и панель управления

Автор ragnar40

Ответов: 17
Просмотров: 1806
Последний ответ 24.05.2022, 14:22:04
от marksetter