Новости Joomla

Вышел релиз 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

WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы

WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы

👩‍💻 WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы.Пакет плагинов, обеспечивающий ручную и автоматическую отправку url адресов Joomla в поисковые системы на переиндексацию по протоколу IndexNow. Согласно документации протокол поддерживают все крупнейшие поисковые системы, кроме Google. Протокол служит для получения от сайтов URL, которые нужно переиндексировать заново или проиндексировать в первый раз как можно быстрее. Отправка адресов сайта таким образом существенно ускорит индексацию нового или изменённого контента поисковыми системами.Поисковые системы по этому протоколу обмениваются друг с другом данными, поэтому отправив URL в одну из них вы сообщаете их сразу всем. Протокол IndexNow поддерживают:- Amazon- Microsoft Bing- Naver- Seznam.cz- Yandex - YepСуточный лимит URL - 10000 в сутки. Возможна отправка вручную и автоматически. Поддерживаются:- материалы и категории материалов Joomla- контакты и категории контактов Joomla- SW JProjects - компонент каталога расширений для Joomla- JoomShopping - компонент интернет-магазина для Joomla- Phoca Download - компонент каталога файлоа для Joomla- Phoca Cart - компонент интернет-магазина для Joomla- RadicalMart - компонент интернет-магазина для JoomlaПакет плагинов работает с Joomla 4.3+. Тестировался на Joomla 5 и Joomla 6.Смотреть видео:- ВК Видео- RuTubeСсылки:Страница расширенияGitHub расширенияРаздел Поддержка протокола IndexNow в справке Яндекса@joomlafeed#joomla #seo #indexnow

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

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Собственно, сабж.
Подробнее.
В ленте новостей периодически появляются сообщения вида: доступно обновление, можно скачать из личного кабинета.
Если пользователь авторизован, перенаправить по ссылке в личный кабинет в раздел загрузок.
Если пользователь как гость - кликнуть по пункту меню с определенным id (id пункта меню, а не css-id), имеющего href="#" и форму авторизации в виде подменю.

Правильно ли я понял, что надо:
1. плагин на OnContentPrepare, добавляющий у всех ссылок в материале с определенным классом (например .private-cab) дополнительный класс, для авторизованных один, для гостей - другой (например, .user-reg и .user-guest)/
2. привязывать js на клик по ссылке с определенным набором  классов:
$('.private-cab.user-reg').click()
$('.private-cab.user-guest').click()

Тут же встает отдельный вопрос: если пользователь-гость уже просматривает материал с подготовленными ссылками и при этом проходит авторизацию (при авторизации не происходит перенаправления куда-либо - остаемся в том же материале), ссылки в материале класс с одного на другой поменяют? т.е. будет ли повторный вызов OnContentPrepare после момента авторизации? Или прописывать еще что-то надо будет?
« Последнее редактирование: 03.10.2014, 10:15:17 от b2z »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Не надо так сложно: можно сразу в плагине добавить проверку
Код: php-brief
$user=JFactory::getUser(); 
$href=!$user->guest?'Качаем':'Логинимся';
Не забудьте redirect после успешной авторизации.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
и как я в href запихаю клик на пункте меню, которое по клику просто раскрывается - все?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
клик на пункте меню
Вы имели в виду пункт меню для модуля login? Можно, наверное, не пробовал, но ссылка есть ссылка.
Но я бы использовал форму от компонента, там можно прописать redirect:
Код: php-brief
$return=base64_encode('Качаем');
$href=!$user->guest?'Качаем':'index.php?option=com_users&view=login&return='.$return;

P.S. Только сейчас увидел, что вы хотите юзера направить в личный кабинет. Тогда еще проще: redirect не нужен, после успешной авторизации он туда и попадет.
Код: php-brief
$href=!$user->guest?'Качаем':'index.php?option=com_users&view=login';
« Последнее редактирование: 02.10.2014, 15:29:26 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Не, вся фишка именно в том, чтобы по менюшке кликнуть )
короче, инициировать вызов $('.item-101').click();
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
$( "#myLinck" ).click(function() {
  $('.item-101').trigger( "click" ); 
});
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
(при авторизации не происходит перенаправления куда-либо - остаемся в том же материале), ссылки в материале класс с одного на другой поменяют? т.е. будет ли повторный вызов OnContentPrepare после момента авторизации?
OnContentPrepare выстреливается при подготовке материала. Если материал уже отрендерен, то подготавливать нечего. Так что нужно выяснить, что происходит в этот момент:
(при авторизации не происходит перенаправления куда-либо - остаемся в том же материале)
Не будь паразитом, сделай что-нибудь самостоятельно!
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
В момент авторизации OnContentPrepare срабатывает повторно, класс у ссылки меняется.

При формировании в плагине переменных для js, во фронте они дублируются
Код: php
  public function onContentPrepare($context, $article, $params)
  {
    if ($context == 'com_finder.indexer') return true;
    $initClass = $this->params->get('initclass');
    $linkGuest = $this->params->get('linkguest');
    $linkReg = $this->params->get('linkreg');
    $isGuest = JFactory::getUser()->guest;

    $doc = JFactory::getDocument();
    $doc->addScriptDeclaration('var plg_pc_linkguest = "'.JRoute::_($linkGuest).'";'); // дублируется во фронте
    $doc->addScriptDeclaration('var plg_pc_linkreg = "'.JRoute::_($linkReg).'";'); // дублируется во фронте
    $doc->addScript('plugins/content/privatecab/privatecab.js');

    $article->text = $isGuest ?
      str_replace('"'.$initClass.'"', '"'.$initClass.' user-guest"', $article->text) :
      str_replace('"'.$initClass.'"', '"'.$initClass.' user-reg"', $article->text);
  }
Как можно избежать дубляжа переменных? Обработка материала происходит нормально, как запланировано.

Скрипт:
Код: javascript
jQuery(document).ready(function($) {

  $('.' + plg_pc_initclass + '.user-guest').on('click', function() {
    document.location.href = plg_pc_linkguest;
  });

  $('.' + plg_pc_initclass + '.user-reg').on('click', function() {
    document.location.href = plg_pc_linkreg;
  });

});
Сработал лишь однажды. В чем мой косяк?
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Все, скрипт работает, в имени переменной забил русскую С вместо латинской Ц =)
Осталось решить только вопрос дубляжа переменных.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Зачем вся эта возня с jQuery? Из того, что выложено в теме, не вижу смысла.

Осталось решить только вопрос дубляжа переменных.
По-моему, если только использовать addScript, но все равно не получится, потому что в скрипте присутствуют PHP-переменные.
« Последнее редактирование: 02.10.2014, 22:19:53 от robert »
Не будь паразитом, сделай что-нибудь самостоятельно!
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Чуть позже скрипт доработаю, чтобы кликал по меню, как passer предложил.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Код: javascript
  $('.' + plg_pc_initclass + '.user-guest').on('click', function() {
    if (plg_pc_ismenu == 1) {
      $('.item-' + plg_pc_menuitemid).trigger('click');
    } else {
      document.location.href = plg_pc_linkguest;
    }
  });
На входе в функцию plg_pc_ismenu = 1, plg_pc_menuitemid = 115.
Клик по пункту меню .item-115 происходит, при этом (другим скриптом, из шаблона) ему присваивается класс open - появляется подменю (с формой авторизации, как и было задумано).
При выходе из функции класс open у пункта меню исчезает - подменю, есс-но, тоже скрывается...
"Ничччего не понимаю"
« Последнее редактирование: 02.10.2014, 22:40:44 от AlekVolsk »
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Код: javascript
jQuery(document).ready(function($) {
var link = $('.linkclass');
var loginform = $('#login-form');
var loginlink = $(loginform).parents('li').first();

if(($(link).length)&&($(loginform).length)) {
$(link).each(function(idx,el){
$(el).on('click', function() {
$(loginlink).trigger('click');
return false;
});
});
}

});
« Последнее редактирование: 02.10.2014, 23:55:51 от Shustry »
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Спс, работает. Решено.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Селект с возможностью выбора всех данных материала

Автор bombapiter

Ответов: 3
Просмотров: 953
Последний ответ 30.04.2021, 13:17:13
от v42bis
Переход по ссылки и запуск функции? [РЕШЕНО]

Автор warlocksp

Ответов: 19
Просмотров: 1584
Последний ответ 21.02.2020, 12:06:24
от warlocksp
[РЕШЕНО] Скроллинг страницы вниз?

Автор warlocksp

Ответов: 3
Просмотров: 1032
Последний ответ 02.02.2020, 15:56:55
от warlocksp
Разобраться с небольшим кодом PHP (РЕШЕНО)

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

Ответов: 18
Просмотров: 1429
Последний ответ 16.01.2020, 21:47:56
от sivers
Как изнутри iframe вызвать внешнюю функцию? [РЕШЕНО]

Автор dm-krv

Ответов: 6
Просмотров: 1288
Последний ответ 25.08.2019, 20:41:07
от dm-krv