Новости Joomla

👩‍💻 Joomla User Guide - новый портал документации для пользователей.

👩‍💻 Joomla User Guide - новый портал документации для пользователей.

Обычно над сайтом работают разные специалисты: контент-менеджеры, разработчики, администраторы и т.д. Долгое время документация для пользователей была на docs.joomla.org. Там по-прежнему хранится информация, актуальная для Joomla 2.5, Joomla 3 и немного для Joomla 4.

Для Joomla 5+ создан портал документации для пользователей Joomla — https://guide.joomla.org. В нём вы найдёте инструкции для контент-менеджеров и веб-мастеров, администраторов сайта:
- как работать с категориями, материалами, страницами сайта
- работа с модулями, стилями отображения
- загрузка картинок и работа с ними
- модули, плагины, компоненты, поиск, теги. процессы, мультиязычность, шаблоны писем, планировщик задач, микроразметка Schema.org...
- ... и многое многое другое, что вызывает так много вопросов у обычных пользователей Joomla.

Информация дана на английском языке. Можно использовать браузерный автоперевод для чтения по-русски или воспользоваться сайтом одного из энтузиастов Joomla-сообщества - https://jdocmanual.org, где даны ИИ-переводы на 9 (на данный момент) языков, включая русский.

Также всячески приветствуется помощь в наполнении портала документации. Ваша небольшая заметка или статья с парой скриншотов, ваш опыт - могут сэкономить тысячам и тысячам людей не один час Точно так же как и вы, пользуясь Joomla используете результаты трудов сотен людей со всего мира: от кода до документации.

Присоединяйтесь - это не сложно ) Главное начать ))

- https://guide.joomla.org/ - новы портал документации для пользователей Joomla 5+.
- https://docs.joomla.org/ - старый портал документации для пользователей Joomla 3.
- https://jdocmanual.org/ - документация по-русски (ИИ-перевод).

@joomlafeed

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

volkazirik

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Приветствую Господа!
Перерыл весь инет... нигде не могу найти. Может кто-нибудь встречал подобную тему.
Мне необходимо сделать в админке при просмотре списка заказов, чтобы была возможность показывать "ВСЕ" но сортировать по "статусу".
Если сложно с сортировкой, то хотя бы отмечать разными цветами строки таблицы. А лучше и то и другое :)
К сожалению моих знаний php не хватает чтобы сделать такую штуку.. пытаюсь но пока безуспешно ((

И так для начала я решил вставить в таблицу дополнительную ячейку и заливать фон определенный цветом исходя из статуса заказа.

Файл  /administrator/components/com_virtuemart/html/order.order_list.php
который выводит непосредственно список заказов

Я пытаюсь в этом файле сделать проверку индексов статуса заказа и в соответствии с определенным статусом выводить дополнительную ячейку разукрасив её в определенный цвет.   (в районе 230 строки)

Вот наковырял что в этом файле
/administrator/components/com_virtuemart/classes/ps_order_status.php
работает функция  getOrderStatusName
но как из неё вытащить значение переменной и передать в тот файл.

Может кто подскажет простое решение.. ну не силен я на сколько в пхпхе  ::)


Версия ВМ 1.1.9
« Последнее редактирование: 17.02.2012, 01:28:29 от volkazirik »
*

volkazirik

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Господа! Удалось решить эту задачу! Правда возможно кривоватым способом, но если кто-то предложит другой вариант - буду рад!  *DRINK*

1. Делаем цветовую индикацию заказов в списке заказов в зависимости от статуса заказа.
Открываем файл  /administrator/components/com_virtuemart/html/order.order_list.php
Все изменения будут в нем))
1.1 Нам нужно вставить ячейку в заголовок выводимой таблицы.
Для этого ищем строку под номером 94:
Код
 $VM_LANG->_('PHPSHOP_ORDER_LIST_STATUS') => '', 
И добавляем после нее строчку:
Код
'***' => '',

1.2 Далее ищем строку-комментарий примерно 230 номера:
Код
// Notify Customer checkbox 
и ПЕРЕД ней вставляем этот код:
Код
	// Color status indicator   
$colorstatus = $db->f("order_status");    
if ($colorstatus=='A') $htmlcolorstatus = '<img src="http://www.вашдомен.ру/pics/st_a.gif" width="20" height="40">';
if ($colorstatus=='C') $htmlcolorstatus = '<img src="http://www.вашдомен.ру/pics/st_c.gif" width="20" height="40">';
if ($colorstatus=='I') $htmlcolorstatus = '<img src="http://www.вашдомен.ру/pics/st_i.gif" width="20" height="40">';
if ($colorstatus=='O') $htmlcolorstatus = '<img src="http://www.вашдомен.ру/pics/st_o.gif" width="20" height="40">';
if ($colorstatus=='P') $htmlcolorstatus = '<img src="http://www.вашдомен.ру/pics/st_p.gif" width="20" height="40">';
if ($colorstatus=='X') $htmlcolorstatus = '<img src="http://www.вашдомен.ру/pics/st_x.gif" width="20" height="40">';
$listObj->addCell( $htmlcolorstatus );

В этом коде все просто. Символы которыми определяются статусы заказов можно настроить свои. Ну и по логике этого кода видно что каждому статусу присваивается свой файлик размером 1х1 пиксель определенного цвета, который потом растягивается до нужных размеров.
Хочу заметить, что при присваивании символов статусам лучше исходить из той логики, чтобы статусы сортировались по алфавиту по символам статуса. И тогда будет возможность нажав на ссылку "Все" всегда видеть сверху списка новые заказы, а далее вниз, уже прошедшие определенные этапы обработки, ну и в самом конце уже завершенные (отправленные) заказы.  Для этого делаем следующее:

1.2 Будем исходить из того что "символы" статусов вы настроили по алфавиту.
Все в том же файле  /administrator/components/com_virtuemart/html/order.order_list.php
ищем строку 43:
Код
$q .= "ORDER BY #__{vm}_orders.cdate DESC ";
и меняем её на эту:
Код
$q .= "ORDER BY #__{vm}_orders.order_status ";

И вуаля)) Теперь у меня заказы сортируются по статусам сверху вниз. См. скриншот в подкате:

Спойлер
[свернуть]

п.с.. единственное что я пока не решил, это чтобы была возможность выводить список из заказов с несколькими разными статусами (но не со всеми!). К сожалению код там так устроен что - либо только один статус выводим, либо все сразу. И конечно же все это от моего не знания PHP))  Если кто найдет решение - буду очень благодарен!
 
« Последнее редактирование: 16.02.2012, 23:54:33 от volkazirik »
*

volkazirik

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Небольшое дополнение..
Когда в системе VirtueMart регистрируется новый заказ, то ему присваивается статус с индексом 'P'.
Вообще в Вирте прописаны три индекса статуса которые "залочены" и из админки их изменить нельзя.
В файле /administrator/components/com_virtuemart/classes/ps_order_status.php
есть такая строчка, которая говорит сама за себя:
Код
var $_protected_status_codes = array( 'P', 'C', 'X' );
Не знаю зачем они залочены..) мне пришлось изменить статус 'P' на 'A' для того чтобы выстраивать статусы по алфавиту.

Чтобы новому заказу присваивался нужный статус - идем сюда:
/administrator/components/com_virtuemart/classes/ps_checkout.php
Строка 986:
Код
			'order_status' => 'A', 
тут думаю без комментариев и так все понятно :)
*

volkazirik

  • Осваиваюсь на форуме
  • 12
  • 1 / 0
Дополнение..

По поводу залоченых статусов спешу предупредить! Статусы 'P', 'C', 'X' используются и жестко прописаны в коде управления платежными системами. Если соберетесь менять эти статусы на другие, то советую взять локально дистрибутив жумлы с установленным виртом и запустить поиск файлов *.* по всему дистрибутиву с поиском конкретного текста в этих файлах, например текста   -   'P'
Тем самым Вы найдете где еще используются и жестко прописаны эти статусы. Для тех кто не знает.. такой поиск возможен например в программе Total Commander.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Слетело оформление заказов VirtueMart 1.1.8

Автор Zegeberg

Ответов: 0
Просмотров: 4077
Последний ответ 24.01.2017, 12:35:57
от Zegeberg
Как сбросить (обнулить) количество заказов?

Автор GDA

Ответов: 21
Просмотров: 11336
Последний ответ 27.05.2014, 00:01:12
от woland-w
Всем, у кого не отправлялись письма о поступлении новых заказов от VirtueMart и от Joomla!.

Автор Muxpyc

Ответов: 1
Просмотров: 3358
Последний ответ 21.10.2013, 14:14:08
от ZAIRA
Редактирование отображения списка заказов

Автор abdulidze

Ответов: 0
Просмотров: 1466
Последний ответ 27.09.2013, 17:57:26
от abdulidze
Добавить поле "телефон" в списке заказов а админке

Автор hudoy

Ответов: 10
Просмотров: 3091
Последний ответ 12.01.2013, 09:28:21
от SolopoV