Новости Joomla

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

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Доброго!

Рубяты подмогите пожалуйста.
Задача такая есть магаз j3 v3 - есть модуть vтовары - там новинки, рекомендованные и.т.д, есть категории с карточками товаров и еще есть сопутств товары.

Задача такая сделать одну разметку для всех в одном файле.
Я не спец - че на зыркал то и пользую, нашел такую штуку какload Template('xxxx'); но как прописаь правильно путь xxx не пойму?

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

Спасбо!
« Последнее редактирование: 29.06.2016, 22:14:57 от pavelrer »
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
В той же директории лежит. ИмяФайла_ИмяПодшаблона. Например, если в default.php у вас loadTemplate('item'), то будет подгружаться файл default_item.php
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Ну вринципи это я понял, а ежли не от корня, т.е от самого коренного корня ../
типа в cmd ..
ты в корне и пошел с любой директории а в php как правильно?
еще раз один php лежит в модулях, другой в шаблонах, третий в компонементах ах ах
но все они должны подсосать один и тот же php
как правильно писать путь ?

Cgfcb,j!Спасибо!
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
А как с этим быть?

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

Есть идеи? как че почему,?! Разметка разметкой но контент через иф как-то надо думаю!

Спасибо!
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Я ничего не понял.
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
loadTemplate('item')

Как я понял при этом вызове браться будет отедова default.item.php

если так

loadTemplate('image')

то от седа default.image.php

Ну а как-то так работать будет loadTemplate('домен/папка1/папка2/default.image.php')
Как такой вид сделать?

Спасибо!
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Ой извиняюсь. Вопрос решился сам-собой.

require_once(dirname(__FILE__). '/php/vm_product_code.php');
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Можно попробовать так:

loadTemplate('image')

Код: php
//Содержимое файла default_image.php
require_once JPATH_SITE.'\домен\папка1\папка2\ ...';

пока писал - сами решили :)
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Спасибо! Я в первый раз  ;D
Пришлось смотреть как вирусы туда сюда ходят  ;D


Переделал так а то выполняется только один раз.

require(dirname(__FILE__). '/php/vm_product_code.php');
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Тогда уж так
Код: php
require(JURI::base().'vm_product_code.php');
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Большое спасибо!

Еще один маленький вопросик.

Что я пытался сделать - Есть модуль vm - товары и vm - категории которые отвечают за новинки, избранные и.т.д
Разметка одинаковая, я просто ее вынес в один файл php, получил разметку которую можно двигать для мобильной версии одну но для двух задач, ну и
естественно выкинул кучу не нужного CSS.

Все хорошо, но под эту дудку, решил к этому всему добавить еще два вывода.
1. VM - сопутствующие товары - Тут у меня совсем тупик приключился ;D
   com_virtuemart/sublayouts/customfields.php
   если я меняю хоть один стиль, то меняется еще и стиль у дополнительных полей, что сопутствующие товары это то же дополнительное поле я понял,
   но как быть, не понимаю.
   Строка <?php echo $field->display ?> - выводит картинку и название товара - что с этим делать, как сверстать, что где менять, если выше или ниже этой строки что-то
   пытаюсь вывести, - выводиться но, выводится еще и в дополнительные поля! Печалька! Что делать-то?

2. Как в моем чудесном vm_product_code.php узнать какой модуль его вызвал (ну или так "где я нахожусь")?

Спасибо!


*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Вопрос 1 решен - https://joomla-zone.ru/forum/jz-jlite-internet-magazin-joomla-3-virtuemart-3-na-russkom-yazyke/658-model-vyvoda-soputstvuyushchikh-tovarov#4243

Осталось только: Как в моем чудесном vm_product_code.php узнать какой модуль его вызвал (ну или так "где я нахожусь")?

Спасибо!
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Например так JURI::getInstance()->toString();
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Спасибо!

Но это вернет мне url, а он мне ни чего не даст.

Глобальная переменная наверно должна решить мою задачу.
*

robert

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

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Интернет магазин.

Есть список товаров в категории - Карточки.
Есть модулб vm-товары (рекомендуемые, новинки и.т.д) - Карточки
Есть vm-сопутствующие - Карточки.
Список категорий - Карточки.
Все это рисуется разными php файлами.

Все это дело подогнал под один стиль. Ну и разметка одинаковая.
Разметку сложил в файл vm_product_code.php
В каждый php файл подключаю vm_product_code.php.и вуаля - получили одну разметку, удобно ровнять при мобильной версии, выкинул 30кб CSS.
Но в разных php файлах, картинки, описание и т.д выводятся по разному, вот в этом-то и был вопрос.

Думаю создать группу переменных в vm_product_code.php и выводить однообразно.
А переменные эти будут заполняться уже php файлом который изначально отвечает за вывод карточек(списков) ну и соответственно вызывает vm_product_code.php.

Задача то проста это удобство тянуть в мобильную версию, и еще хочу CSS в моську HTML вывести, один для всего.
Собрав все CSS файлы в один, и все динамические CSS вставки которые делают модули, у меня получилось 250кб,
Все это отключил собрал в один файл пока сжал gzip. Вычистил от лишнего CSS только менюшки, получил 150кб.
Если натяну на 20кб попробую в моську HTML воткнуть посмотрю что получиться. Но если честно сократил CSS и js подключаемых файлов с 70 до 5 результат очень ощутимый!




*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Оверрайдом каждого модуля не проще сделать?
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Еслиб я знал что это такое.
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Сомневаюсь в целесообразности такого подхода: все равно нужно в каждом шаблоне подключить ваш файл.
Попробуйте так:
В каждом шаблоне, перед подключением vm_product_code.php, присваиваем некой переменной $some_var соответствующее уникальное значение:
1 - список товаров в категории
Код: php-brief
$some_var='1';
2 - модулб vm-товары
Код: php-brief
$some_var='2';
и т.д.
В самом vm_product_code.php уже делать проверку значения $some_var и выводить нужную разметку.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Копируем файлы из component_name/view/ в template_name/html/component_name, и переделываем как хочется.
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Копируем файлы из component_name/view/ в template_name/html/component_name, и переделываем как хочется.
- Спасибо это я уже сделал, просто не знаю как по научному это называется  ^-^

В самом vm_product_code.php уже делать проверку значения $some_var и выводить нужную разметку.
- Спасибо, я именно так и сделаю, решения приходили в процессе обсуждения.

Все получилось как и задумывал.

Но появились еще парочку вопросов.

1. микроразметка - во что обернуть эти списки карточки. Впринципе у них схожое то что есть 1. Картинка, 2. Название, 3.Описание, 4.Производитель.
т.е это можно вытянуть в любом списке.
Пока обернул как объект картинка, может что-то более целесообразное есть - что-то типа список товаров, или что-то такое?

2. VM - Производитель. Страничка с описанием производителя, просто текст + картинка. Скучно. А можно как то в этой странички вывести или товары этого производителя, или категории? Гуглил-гуглил не нагуглил  ^-^ . Можно конечно вывести VM-Товары, но хотелось бы чтобы товары относились к данному производителю.

Спасибо!
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
1. Всё на уровне разметки шаблона делается. Про микроразметку раз, два. Всё зависит от схемы, под которую будете делать.
2. Ну если это не заложено в компоненте (я хз, VM не юзаю), то, либо пишите плагины свои, либо в шаблоне делаете запросы в БД, и выводите необходимые данные.
*

pavelrer

  • Давно я тут
  • 611
  • 10 / 2
Цитировать
либо в шаблоне делаете запросы в БД, и выводите необходимые данные.

Если дадите ссылку на разжеванный примерчик, буду очень благодарен. Я еще до этого не дошел  ^-^ Но ежлиб освоил, порешал бы кучу задач.

Спасибо.

2. VM - Производитель.
Тут отвечаю сам. Если модулю vm-товар, случайный товар ставим выводить в страницах производителя, то допустим для производителя BMW,
будут выводиться случайно только товары BMW (в страницы описания производителя), если таких товаров не будет, то и выводиться будет только картинка и описание производителя.
Все оказалось просто  ^-^

Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Один пункт меню думает что он главный

Автор DamaVbubi

Ответов: 4
Просмотров: 250
Последний ответ 13.02.2024, 19:49:10
от DamaVbubi
Один модуль влияет на другой, как?

Автор mag_num83

Ответов: 5
Просмотров: 519
Последний ответ 17.05.2023, 10:05:55
от sivers
Ошибка 404 при открывании медиа-менеджера и модулей в Joomla

Автор Cloddy

Ответов: 1
Просмотров: 457
Последний ответ 20.07.2022, 15:55:19
от gquma
Не отображаются поля при создании и редактировании модулей и материалов

Автор Didj

Ответов: 5
Просмотров: 481
Последний ответ 04.05.2022, 21:49:39
от marksetter
Подключение erf и epf модулей

Автор Darius_hand_of_Noxus

Ответов: 2
Просмотров: 469
Последний ответ 19.05.2021, 07:02:04
от Darius_hand_of_Noxus