Новости Joomla

Вышли релизы безопасности Joomla 6.1.3 и Joomla 5.4.8

Релиз безопасности Joomla 6.1.3 и Joomla 5.4.8

Проект Joomla! рад сообщить о выходе Joomla 6.1.3 и Joomla 5.4.8. Это релизы безопасности и исправления ошибок для серий 5.x и 6.x.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

👩‍💻 WT Otpravkapochtaru - библиотека сервиса Отправка Почты России для Joomla-разработчиков.

Joomla 5+ пакет для интеграции с API Почты России: нормализация данных, расчёт доставки, создание отправлений, партии, документы, возвраты, поиск отделений, справочники и SOAP-отслеживание.

v.3.0.0. Что нового?
Это дальнейшее развитие ранее закрытой Joomla-библиотеки для работы с API сервиса Отправка (для бизнеса) Почты России. Поэтому версия не 1.0.0, а 3.0.0.

Сейчас эта библиотека ушла от собственных реализаций и стала Joomla-обёрткой известного PHP SDK от Lapay Group.

Возможности библиотеки.
- получение настроек аккаунта, точек сдачи и текущего остатка запросов к API;
- нормализация адресов, ФИО и телефонов перед созданием отправления;
- расчёт тарифа и срока доставки;
- создание, поиск, изменение, удаление и возврат заказов в состояние «Новые»;
- проверка надёжности получателя;
- создание партий, просмотр партий и заказов внутри партии;
- генерация пакета печатных документов и формы Ф103;
- создание, изменение и удаление возвратных отправлений;
- поиск отделений по индексу, адресу и координатам, получение сервисов отделения;
- локальный список стран;
- SOAP-отслеживание операций по РПО и работа с билетами пакетного трекинга.

👩‍💻 Joomla-возможности.
В пакете библиотеки WT Otpravkapochtaru есть поля Joomla Form для расширений. Они позволяют работать в интерфейсе Joomla с некоторыми типами данных, получаемых по API из вашего личного кабинета в ЛК Почты России для бизнеса.
На данный момент в библиотеке доступны 3 поля списков, которые отображают доступные в аккаунте ОПС, типы и категории отправлений.
Поддерживаются зависимые списки: значение одного поля обновляется при изменении другого.

Системные требования.
Системные требования в основном связаны с системными требованиями апстрима библиотеки - LapayGroup PHP SDK.
- Joomla 5+
- PHP 8.3+
- Расширения PHP:
-- ext-mbstring
-- ext-simplexml
-- ext-soap (опционально, для трекинга)
-- ext-zip

Ссылки:
- Страница расширения
- GitHub библиотеки и документация

@joomlafeed

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

024roman

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Как настроить в  AdsManager 2.6.5 компонент sh404SEF ?
*

sattan

  • Осваиваюсь на форуме
  • 29
  • 1 / 0
*

024roman

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Для AdsManager 2.6.5 ничего из этого не подходит
*

sattan

  • Осваиваюсь на форуме
  • 29
  • 1 / 0
Тогда попробуйте установить плагин для sh404SEF непосредственно для AdsManager. Можно посмотреть здесьhttp://joomlaforum.ru/index.php?topic=84894.0. Хотя для какой версии adsmanagerа - неизвестно.
Я когда-то настраивал Joomla 1.5 и  AdsManager 2.6.5 на Artio - все работало отлично, но и для него я скачивал плагин.
Так что искать Вам нужно плагин для AdsManager.
*

024roman

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Конечно плагин, куда же без него, только где его взять, на форуме последний от 09 года, я пробовал не подходит. Первый раз не могу найти решения вопроса сам..
*

sattan

  • Осваиваюсь на форуме
  • 29
  • 1 / 0
Попробуйте вставить этот код в /components/com_sef/sef_ext/  в файл com_adsmanager.php
Код
defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

// ------------------  standard plugin initialize function - don't change ---------------------------
global $sh_LANG, $sefConfig;  
$shLangName = '';
$shLangIso = '';
$title = array();
$shItemidString = '';
$dosef = shInitializePlugin( $lang, $shLangName, $shLangIso, $option);
// ------------------  standard plugin initialize function - don't change ---------------------------

// ------------------  load language file - adjust as needed ----------------------------------------
$shLangIso = shLoadPluginLanguage( 'com_adsmanager', $shLangIso, '_COM_ADSMANAGER_SEF_ADS');
// ------------------  load language file - adjust as needed ----------------------------------------

// remove common URL from GET vars list, so that they don't show up as query string in the URL
shRemoveFromGETVarsList('option');
shRemoveFromGETVarsList('lang');
if (!empty($Itemid)) shRemoveFromGETVarsList('Itemid');
if (!empty($limit))  shRemoveFromGETVarsList('limit');
if (isset($limitstart)) shRemoveFromGETVarsList('limitstart'); // limitstart can be zero

// start by inserting the menu element title (just an idea, this is not required at all)

$page = isset($page)? @$page : null;
$Itemid = isset($Itemid)? @$Itemid : null;
$text_search = isset($text_search)? @$text_search : null;
$order = isset($order)? @$order : null;
$expand = isset($expand)? @$expand : null;

$shAdsManagerName = shGetComponentPrefix($option);
$shAdsManagerName = empty($shAdsManagerName)? getMenuTitle($option, $task, $Itemid, null, $shLangName) : $shAdsManagerName;

if (!$expand) shRemoveFromGETVarsList('expand');
if (!$order) shRemoveFromGETVarsList('order');
//if ($text_search==0) shRemoveFromGETVarsList('text_search');

$title[] = $shAdsManagerName;
switch ($page) {
  case 'show_profile': {
$title[] = $userid;
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_EDIT'];
shRemoveFromGETVarsList('page');
shRemoveFromGETVarsList('userid');
    break;
  }
  
  case 'save_profile': {
$title[] = $userid;
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_PROFILE'];
shRemoveFromGETVarsList('page');
shRemoveFromGETVarsList('userid');
    break;
  }
  
  case 'show_user': {
if (isset($userid)){
$title[] = $userid;
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_USER'];
shRemoveFromGETVarsList('userid');
}
else
{
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_MY_ADS'];
}
shRemoveFromGETVarsList('page');
    break;
  }
  
  case 'show_category': {

if ($catid != 0)
{
$database->setQuery( "SELECT c.* FROM #__adsmanager_categories as c ".
"WHERE c.published = 1 ORDER BY c.parent,c.ordering");

$rows = $database->loadObjectList();
if ($database -> getErrorNum()) {
echo $database -> stderr();
return false;
}

// establish the hierarchy of the menu
$orderlist = array();
$current_list = array();
// first pass - collect children
foreach ($rows as $v ) {
$orderlist[$v->id] = $v;
}

$current = $catid;
while($orderlist[$current]->id != 0)
{
$current_list[] = $orderlist[$current]->name;
$current = $orderlist[$current]->parent;
}
}

$size = count($current_list);
for($i = $size -1;$i>0;$i--)
{
$title[] = $current_list[$i];
}
$title[]=$current_list[0];
shRemoveFromGETVarsList('page');
shRemoveFromGETVarsList('catid');
    break;
  }

  case 'show_rules': {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_RULES'];
shRemoveFromGETVarsList('page');
    break;
  }

  case 'show_ad': {

$database->setQuery("SELECT category, ad_headline FROM #__adsmanager_ads WHERE id=$adid");
$rows = $database->loadObjectList();
$text = $rows[0]->ad_headline;
$catid = $rows[0]->category;

$database->setQuery( "SELECT c.* FROM #__adsmanager_categories as c ".
"WHERE c.published = 1 ORDER BY c.parent,c.ordering");

$rows = $database->loadObjectList();
if ($database -> getErrorNum()) {
echo $database -> stderr();
return false;
}

// establish the hierarchy of the menu
$orderlist = array();
// first pass - collect children
foreach ($rows as $v ) {
$orderlist[$v->id] = $v;
}

$current = $catid;
if (count($orderlist) > 0)
{
while($orderlist[$current]->id != 0)
{
$current_list[] = $orderlist[$current]->name;
$current = $orderlist[$current]->parent;
}
}

$size = count($current_list);
for($i = $size -1;$i>0;$i--)
{
$title[] = $current_list[$i];
}
if (count($current_list) > 0)
$title[]= $current_list[0];

$text = substr($text,0,40);

$title[] = $adid;
$title[] = $text;
shRemoveFromGETVarsList('page');
shRemoveFromGETVarsList('adid');
shRemoveFromGETVarsList('catid');
    break;
  }

  case 'write_ad': {
  
if (!isset($adid)) {

if (!isset($catid)) {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_WRITE_AD'];
}
else
{
$database->setQuery( "SELECT c.* FROM #__adsmanager_categories as c ".
"WHERE c.published = 1 ORDER BY c.parent,c.ordering");

$rows = $database->loadObjectList();
if ($database -> getErrorNum()) {
echo $database -> stderr();
return false;
}

// establish the hierarchy of the menu
$orderlist = array();
$current_list = array();
// first pass - collect children
foreach ($rows as $v ) {
$orderlist[$v->id] = $v;
}

$current = $catid;
while($orderlist[$current]->id != 0)
{
$current_list[] = $orderlist[$current]->name;
$current = $orderlist[$current]->parent;
}

$size = count($current_list);
for($i = $size -1;$i>0;$i--)
{
$title[] = $current_list[$i];
}
$title[]=$current_list[0];

$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_WRITE_AD'];
shRemoveFromGETVarsList('catid');
}
}
else
{
$database->setQuery("SELECT category, ad_headline FROM #__adsmanager_ads WHERE id=$adid");
$rows = $database->loadObjectList();
$text = $rows[0]->ad_headline;
$catid = $rows[0]->category;

$database->setQuery("SELECT name, parent FROM #__adsmanager_categories WHERE published='1' AND id=$catid");

$rows_categories = $database->loadObjectList();
$cat_name = $rows_categories[0]->name;
$parentid = $rows_categories[0]->parent;

if ($parentid != 0)
{
$parent = $rows_categories[0]->parent;
$database->setQuery("SELECT name FROM #__adsmanager_categories WHERE published='1' AND id=$parent");

$rows_categories = $database->loadObjectList();
$parent_name = $rows_categories[0]->name;
$title[] = $parent_name;
}

$title[] = $cat_name;

$text = substr($text,0,40);

$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_UPDATE'];
$title[] = $adid;
$title[] = $text;
shRemoveFromGETVarsList('adid');
shRemoveFromGETVarsList('catid');
}
shRemoveFromGETVarsList('page');
    break;
  }
  
  case 'save_ad': {
if (!isset($adid)) {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_SAVE_AD'];
}
else
{
$database->setQuery("SELECT category, ad_headline FROM #__adsmanager_ads WHERE id=$adid");
$rows = $database->loadObjectList();
$text = $rows[0]->ad_headline;
$catid = $rows[0]->category;

$database->setQuery("SELECT name, parent FROM #__adsmanager_categories WHERE published='1' AND id=$catid");

$rows_categories = $database->loadObjectList();
$cat_name = $rows_categories[0]->name;
$parentid = $rows_categories[0]->parent;

if ($parentid != 0)
{
$parent = $rows_categories[0]->parent;
$database->setQuery("SELECT name FROM #__adsmanager_categories WHERE published='1' AND id=$parent");

$rows_categories = $database->loadObjectList();
$parent_name = $rows_categories[0]->name;
$title[] = $parent_name;
}

$title[] = $cat_name;

$text = substr($text,0,40);

$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_SAVE'];
$title[] =$adid;
$title[] = $text;

shRemoveFromGETVarsList('adid');
shRemoveFromGETVarsList('catid');
}
shRemoveFromGETVarsList('page');
    break;
  }

  case 'delete_ad': {
    if (!isset($adid)) {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_DELETE_AD'];
}
else
{
$database->setQuery("SELECT category, ad_headline FROM #__adsmanager_ads WHERE id=$adid");
$rows = $database->loadObjectList();
$text = $rows[0]->ad_headline;
$catid = $rows[0]->category;

$database->setQuery("SELECT name, parent FROM #__adsmanager_categories WHERE published='1' AND id=$catid");

$rows_categories = $database->loadObjectList();
$cat_name = $rows_categories[0]->name;
$parentid = $rows_categories[0]->parent;

if ($parentid != 0)
{
$parent = $rows_categories[0]->parent;
$database->setQuery("SELECT name FROM #__adsmanager_categories WHERE published='1' AND id=$parent");

$rows_categories = $database->loadObjectList();
$parent_name = $rows_categories[0]->name;
$title[] = $parent_name;
}

$title[] = $cat_name;
$text = substr($text,0,40);

$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_DELETE'];
$title[] = $adid;
$title[] = $text;
shRemoveFromGETVarsList('catid');
shRemoveFromGETVarsList('adid');
shRemoveFromGETVarsList('page');  
}
shRemoveFromGETVarsList('page');
    break;
  }
  
  case 'show_all': {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_ALL_ADS'];
shRemoveFromGETVarsList('page');
break;
  }
  
  case 'show_search': {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_SHOW_SEARCH'];
shRemoveFromGETVarsList('page');
break;
  }
  
  case 'show_result': {
$title[] = $sh_LANG[$shLangIso]['_COM_ADSMANAGER_SEF_SHOW_RESULT'];
shRemoveFromGETVarsList('page');
break;
  }

  default: {
     //$title[] = "indice";
    break;
  }
}
  
// ------------------  standard plugin finalize function - don't change ---------------------------  
if ($dosef){
   $string = shFinalizePlugin( $string, $title, $shAppendString, $shItemidString,
      (isset($limit)? @$limit : null), (isset($limitstart)? @$limitstart : null),
      (isset($shLangName)? @$shLangName : null));
}      
// ------------------  standard plugin finalize function - don't change ---------------------------
*

024roman

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Непомогло
*

024roman

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
вставить в  /components/com_sh404sef/sef_ext/  в файл com_adsmanager.php
*

Usman48

  • Захожу иногда
  • 177
  • 7 / 0
Всё перепробовал что здесь на форуме писали - ничего не помогает, оставил как есть. Может не ЧПУ, а хотя бы ссылки вида
http://joomlaforum.ru/cat321423/4325454.html
возможно сделать?

А то у меня сейчас вот такая ссылка:
http://мой-сайт.ru/index.php?option=com_adsmanager&view=details&id=21&catid=5&Itemid=14
*

Grendy

  • Захожу иногда
  • 247
  • 26 / 0
Всё перепробовал что здесь на форуме писали - ничего не помогает, оставил как есть. Может не ЧПУ, а хотя бы ссылки вида
http://joomlaforum.ru/cat321423/4325454.html
возможно сделать?

А то у меня сейчас вот такая ссылка:
http://мой-сайт.ru/index.php?option=com_adsmanager&view=details&id=21&catid=5&Itemid=14


Можно. Читайте FAQ Joomla!.
Плюс в репутацию больше говорит о благодарности, чем слово "Спасибо" в теме, которую повторно, возможно, никогда уже не посетишь.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено]Дублирования ссылки "объвления" в breadcrumb, в компоненте AdsManager

Автор nicklas

Ответов: 4
Просмотров: 10911
Последний ответ 25.04.2024, 23:13:18
от Rinat abzyi
AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 20657
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
Компонент комментарий для Ads?

Автор FlexNL

Ответов: 0
Просмотров: 3689
Последний ответ 06.11.2021, 12:30:11
от FlexNL
AdsManager загрузка файлов

Автор FlexNL

Ответов: 1
Просмотров: 9053
Последний ответ 21.10.2021, 17:20:09
от khan-alex
AdsManager 2.9.13 Есть ли возможность добавить функцию снять с публикации по мимо редактировать и уд

Автор murovoz

Ответов: 11
Просмотров: 25187
Последний ответ 27.03.2020, 22:39:23
от Pavel