Новости 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 Гость просматривают эту тему.
  • 139 Ответов
  • 28209 Просмотров
*

saschka

  • Захожу иногда
  • 169
  • 1 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #120 : 04.07.2013, 22:15:13 »
Хотелось бы узнать такой момент, ради чего, собственно, всё и нужно было. Сайты, которые вывели в подключаемые библиотеки своё меню, поднялись в серпе или нет?
*

Serhio

  • Захожу иногда
  • 67
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #121 : 12.08.2013, 02:08:24 »
Хотелось бы узнать такой момент, ради чего, собственно, всё и нужно было. Сайты, которые вывели в подключаемые библиотеки своё меню, поднялись в серпе или нет?
В теории: допустим, у нас есть меню, полезное для пользователей, но страницы, на которые ссылается это меню нам продвигать не нужно. Тем не менее эти страницы собирают вес с каждой страницы сайта. Если мы скроем это меню, то сэкономленный вес можем пустить на продвигаемые страницы.
На практике: на одном сайте на Joomla 2.5 у меня одно меню было скрыто таким способом изначально, поэтом сравнить До и После возможности нет. Но есть более старый сайт, на котором как раз хотел провести подобный эксперимент, но внедрить этот метод на Joomla 1.5, к сожалению не удалось.
*

saschka

  • Захожу иногда
  • 169
  • 1 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #122 : 12.08.2013, 13:42:49 »
Но есть более старый сайт, на котором как раз хотел провести подобный эксперимент, но внедрить этот метод на Joomla 1.5, к сожалению не удалось.
А жаль. Влияние перелинковки - это всё понятно. Но вот хотелось бы знать именно о результатах.
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #123 : 16.09.2013, 11:32:26 »
Создайте в корне ШАБЛОНА файл ajax_mod.php:
Код: php
<?php defined('_JEXEC') or die;
$mod_pos = JRequest::getVar('mod_pos'); // получаем имя подгружаемой позиции.
?>
<jdoc:include type="modules" name="<?php echo $mod_pos;?>" style="xhtml"/> <!--и выводим её.-->
Работа проверяется тупо вводом в адресную строку http://сайт/index.php?tmpl=ajax_mod&mod_pos=mod_l. Это чтобы исключить ошибки всяких там скриптов и т.п. Ну и не забудьте модуль опубликовать в позицию естессно :)

Помогите советом! У себя на сайте http://dogruzov.ru/ все сделал как написано, модуль выводится в отдельном окне http://dogruzov.ru/index.php?tmpl=ajax_mod&mod_pos=position-5 НО! внутренние ссылки меню все равно видны, например здесь вижу что количество ссылок со страницы не изменилось http://mainspy.ru/analiz_ssylok_sajta
что я делаю не так? Цель сделать ссылки меню не видимыми для поисковиков, не достигнута!
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #124 : 16.09.2013, 11:42:47 »
Смотрите через копию сайта, зачем пользоваться сторонними сайтами, которые не понятно как что то там высчитывают.
Я знаю только то, что ничего не знаю
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #125 : 16.09.2013, 12:07:21 »
Смотрите через копию сайта, зачем пользоваться сторонними сайтами, которые не понятно как что то там высчитывают.

а как посмотреть через копию сайта?
програмка для перелинковки также по прежнему ссылки меню видит(

 
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #126 : 16.09.2013, 13:13:07 »
а как посмотреть через копию сайта?
Изучите сниппет своего сайта.
Я знаю только то, что ничего не знаю
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #127 : 16.09.2013, 13:50:32 »
Изучите сниппет своего сайта.
Посмотрел сниппет, в сохраненной копии ссылки и меню остались! (  я же говорю ничего не изменилось
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #128 : 16.09.2013, 14:01:01 »
У вас меню есть в исходном коде, вы что то не то сделали, не вижу подгрузок.
Я знаю только то, что ничего не знаю
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #129 : 17.09.2013, 22:02:02 »
не могу разобраться, я же все сделал как написано тут(, меню в отдельном окне выводится, а на странице сайта все по прежнему(
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #130 : 20.09.2013, 17:55:42 »
не могу разобраться, я же все сделал как написано тут(, меню в отдельном окне выводится, а на странице сайта все по прежнему(
кто на форуме? ) помогите! заплачу !
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Подгрузка модулей в шаблон AJAX
« Ответ #131 : 20.09.2013, 18:15:38 »
Цитировать
Цель сделать ссылки меню не видимыми для поисковиков, не достигнута!
этот вопрос никак не соответствует данной теме. Чтобы запретить видеть поисковикам ваши ссылки, их надо определить и закрыть ссылки в robots.txt,
.htaccess, или средствами php перенаправляя поисковики в другое место.
Создайте отдельную тему для вашего вопроса
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #132 : 04.10.2013, 15:48:08 »
с подгрузкой модулей меню справился!
подскажите пожалуйста как теперь сделать что бы вид кнопок сохранился как раньше?
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #133 : 05.10.2013, 02:37:14 »
И еще проблема не всегда выводится блок меню иногда нужно перезагружать страницу!
кто сталкивался помогите!
*

olviosru

  • Новичок
  • 9
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #134 : 10.10.2013, 10:56:44 »
У вас меню есть в исходном коде, вы что то не то сделали, не вижу подгрузок.

С подгрузкой модуля меню справился) но только к сожалению не подцепляется стиль css( Вот к примеру родгружаемое меню "меню стоимость услуг" должно быть такимже как меню выше, кто нибу подскажет что нужно поправить? вот код шаблона:

сайт: http://dogruzov.ru/


<?php
defined('_JEXEC') or die;

/**
 * Template for Joomla! CMS, created with Artisteer.
 * See readme.txt for more details on how to use the template.
 */

require_once dirname(__FILE__). DIRECTORY_SEPARATOR . 'functions.php';

// Create alias for $this object reference:
$document = $this;

// Shortcut for template base url:
$templateUrl = $document->baseurl . '/templates/' . $document->template;

Artx::load("Artx_Page");

// Initialize $view:
$view = $this->artx = new ArtxPage($this);

// Decorate component with Artisteer style:
$view->componentWrapper();

JHtml::_('behavior.framework', true);

?>
<!DOCTYPE html>
<html dir="ltr" lang="<?php echo $document->language; ?>">
<head>
  <script type="text/javascript">
  (function() {
    var po = document.createElement("script"); po.type = "text/javascript"; po.async = true;
    po.src = "https://apis.google.com/js/plusone.js?publisherid=117740271413872803063";
    var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(po, s);
  })();
</script>
   <jdoc:include type="head" />
    <link rel="stylesheet" href="<?php echo $document->baseurl; ?>/templates/system/css/system.css" />
    <link rel="stylesheet" href="<?php echo $document->baseurl; ?>/templates/system/css/general.css" /><script type="text/javascript" src="//vk.com/js/api/openapi.js?100"></script>
<script type="text/javascript">
  VK.init({apiId: 3863309, onlyWidgets: true});
</script><!-- Created by Artisteer v4.1.0.60046 --><meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width">
    <!--[if lt IE 9]><script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
    <link rel="stylesheet" href="<?php echo $templateUrl; ?>/css/template.css" media="screen">
    <!--[if lte IE 7]><link rel="stylesheet" href="<?php echo $templateUrl; ?>/css/template.ie7.css" media="screen" /><![endif]-->
    <link rel="stylesheet" href="<?php echo $templateUrl; ?>/css/template.responsive.css" media="all">
    <script>if ('undefined' != typeof jQuery) document._artxJQueryBackup = jQuery;</script>
    <script src="<?php echo $templateUrl; ?>/jquery.js"></script>
    <script>jQuery.noConflict();</script>
    <script src="<?php echo $templateUrl; ?>/script.js"></script>
    <?php $view->includeInlineScripts()?>
    <script>if (document._artxJQueryBackup) jQuery = document._artxJQueryBackup;</script>
    <script src="<?php echo $templateUrl; ?>/script.responsive.js"></script>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/beez_20/css/template.css" type="text/css" />
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function(){
  var url_l = '/index.php?tmpl=ajax_mod&mod_pos=mod_l';
  $.ajax({
    url: url_l,
    dataType : "html",
    success: function(html){
      $("#ajax_l").append(html);
    }
  });
 
});
</script> 
  </head>
  <body>
     <div id="art-main">
<?php if ($view->containsModules('position-1', 'position-28', 'position-29')) : ?>
<nav class="art-nav">
<?php if ($view->containsModules('position-28')) : ?>
<div class="art-hmenu-extra1"><?php echo $view->position('position-28'); ?></div>
<?php endif; ?>
<?php if ($view->containsModules('position-29')) : ?>
<div class="art-hmenu-extra2"><?php echo $view->position('position-29'); ?></div>
<?php endif; ?>
<?php echo $view->position('position-1'); ?>
    </nav>
<?php endif; ?>
<header class="art-header">
<?php echo $view->position('position-30', 'art-nostyle'); ?>
    <div class="art-shapes">
        <div class="art-object1296408840" data-left="0%"></div>
<div class="art-object265041756" data-left="100%"></div>
<div class="art-object0" data-left="76.48%"></div>
<div class="art-object626436661" data-left="24.01%"></div>
            </div>
<h3 class="art-headline" data-left="25.54%">
    <p><?php echo $this->params->get('siteTitle'); ?></p>
</h3>
<h2 class="art-slogan" data-left="25.19%"><?php echo $this->params->get('siteSlogan'); ?></h2>                   
</header>
<div class="art-sheet clearfix">
            <?php echo $view->position('position-15', 'art-nostyle'); ?>
<?php echo $view->positions(array('position-16' => 33, 'position-17' => 33, 'position-18' => 34), 'art-block'); ?>
  <div class="art-layout-wrapper">
                <div class="art-content-layout">
                    <div class="art-content-layout-row">
<?php if ($view->containsModules('position-7', 'position-4', 'position-5', 'mod_l')) : ?>
<div class="art-layout-cell art-sidebar1">
<?php echo $view->position('position-7', 'art-block'); ?>
<?php echo $view->position('position-4', 'art-block'); ?>
<?php echo $view->position('position-5', 'art-block'); ?><div id="ajax_l"></div>
</div>
<?php endif; ?>
<div class="art-layout-cell art-content">
<?php
  echo $view->position('position-19', 'art-nostyle');
  if ($view->containsModules('position-2'))
    echo artxPost($view->position('position-2'));
  echo $view->positions(array('position-20' => 50, 'position-21' => 50), 'art-article');
  echo $view->position('position-12', 'art-nostyle');
  echo artxPost(array('content' => '<jdoc:include type="message" />', 'classes' => ' art-messages'));
  echo '<jdoc:include type="component" />';
  echo $view->position('position-22', 'art-nostyle');
  echo $view->positions(array('position-23' => 50, 'position-24' => 50), 'art-article');
  echo $view->position('position-25', 'art-nostyle');
?>

                        </div>
                        <?php if ($view->containsModules('position-6', 'position-8', 'position-3')) : ?>
<div class="art-layout-cell art-sidebar2">
<?php echo $view->position('position-6', 'art-block'); ?>
<?php echo $view->position('position-8', 'art-block'); ?>
<?php echo $view->position('position-3', 'art-block'); ?>
                        </div>
<?php endif; ?>
                    </div>
                </div>
            </div>
<?php echo $view->positions(array('position-9' => 33, 'position-10' => 33, 'position-11' => 34), 'art-block'); ?>
<?php echo $view->position('position-26', 'art-nostyle'); ?>
    </div>
<footer class="art-footer">
  <div class="art-footer-inner">
<div class="art-content-layout">
    <div class="art-content-layout-row">
    <div class="art-layout-cell layout-item-0" style="width: 20%">
<?php if ($view->containsModules('position-31')) : ?>
    <?php echo $view->position('position-31', 'art-nostyle'); ?>
<?php else: ?>
      <p style="font: 18px Arial;">Информация</p><br><ul><li><noindex><a href="/" rel='nofollow'>Добро пожаловать</a></noindex></li><li><noindex><a href="/" rel='nofollow'>перевозка по России</a></noindex></li><li><noindex><a href="/" rel='nofollow'>перевозки авто</a></noindex></li></ul>
    <?php endif; ?>
</div><div class="art-layout-cell layout-item-0" style="width: 20%">
<?php if ($view->containsModules('position-32')) : ?>
    <?php echo $view->position('position-32', 'art-nostyle'); ?>
<?php else: ?>
      <p style="font: 18px Arial;">Как нас найти</p><br><ul><li>Карта</li><li><a href="/">Адрес</a></li><li><a href="/">Контакты</a></li></ul>
    <?php endif; ?>
</div><div class="art-layout-cell layout-item-0" style="width: 20%">
<?php if ($view->containsModules('position-33')) : ?>
    <?php echo $view->position('position-33', 'art-nostyle'); ?>
<?php else: ?>
      <p style="font: 18px Arial;">Компания</p><br><ul><li><a href="/">О нас</a></li><li>Новости</li></ul>
    <?php endif; ?>
</div><div class="art-layout-cell layout-item-0" style="width: 40%">
<?php if ($view->containsModules('position-34')) : ?>
      <?php echo $view->position('position-34', 'art-nostyle'); ?><?php else: ?><p style="text-align: center;">Догрузов © 2009 Все Права Защищены.</p></div><?php endif; ?></div></div></div>
  </footer>
</div>
<?php echo $view->position('debug'); ?>
</body>
</html>
 
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #135 : 10.10.2013, 13:24:14 »
olviosru, используйте BB-код и/или спойлер для вставки кода
*

kasskad

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #136 : 24.12.2013, 23:40:53 »
как я не старался а скрипт для меню (которое подгружается) не подключается.
 CSS вывел так
Код
<link rel="stylesheet" href="/modules/mod_accordion_menu/cache/96/4cd338246a3d5f6c4f2cba94b2258630.css" type="text/css" />
а js так
Код
<?php JHTML::_('script', $filename = '9f23e8440d8a447b83b653d5373d12b6.js', $path = 'modules/mod_accordion_menu/cache/96/', $mootools = false ); ?>
Стили CSS подключились а вот js как вопрос? !
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Re: Подгрузка модулей в шаблон AJAX
« Ответ #137 : 26.12.2013, 01:08:09 »
kasskad: загружается HTML же. JS же был сразу загружен, т.е. он про новые данные «не знает». Или нужно скрипт реинициализировать, или юзать Live-события в скрипте меню.
*

kasskad

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
Re: Подгрузка модулей в шаблон AJAX
« Ответ #138 : 29.12.2013, 00:24:06 »
Цитировать
реинициализировать, или юзать Live-события в скрипте меню.
Спасибо за ответ но не чего не понел. Можно поподробнее?
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Re: Подгрузка модулей в шаблон AJAX
« Ответ #139 : 29.12.2013, 12:14:42 »
Предположим, что разметка меню у вас такая:
Код: html4strict
<ul id="dropmenu">
<li class="drop">
<a>ссылка первого уровня</a>
</li>
<li class="drop">
<a>ссылка первого уровня</a>
<ul>
<li>
<a>ссылка второго уровня</a>
</li>
</ul>
</li>
</ul>

А скрипт меню допустим такой:
Код: javascript
$('#menu li.level').hover(
function(){
$(this).children('ul').show('fast');
},
function(){
$(this).children('ul').hide('fast');
});

Тогда его надо переделать так:
Код: javascript
$('#menu li.level').live('hover',
function(){
$(this).children('ul').show('fast');
},
function(){
$(this).children('ul').hide('fast');
});

Или вынести всё меню в отдельную функцию и вызывать повторно после отработки аякса.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как сделать свой шаблон quickstart?

Автор saiskyi

Ответов: 3
Просмотров: 6939
Последний ответ 19.02.2020, 19:29:01
от Bozhkov2
Ширина модулей в зависимости от количества опубликованных позиций (Решение)

Автор Fedor Vlasenko

Ответов: 17
Просмотров: 11372
Последний ответ 07.01.2020, 14:46:05
от Progressive
Как настроить шаблон?

Автор tromba

Ответов: 2
Просмотров: 4251
Последний ответ 15.08.2018, 15:29:56
от tromba
Как загрузить шаблон, и сделать его только для одной страницы?

Автор Ирина Поехали

Ответов: 5
Просмотров: 2270
Последний ответ 05.06.2017, 21:15:42
от effrit
Как вставить рекламу в мобильный шаблон ja_edenite?

Автор gorbi_U

Ответов: 3
Просмотров: 2034
Последний ответ 02.06.2017, 08:43:26
от gorbi_U