Помощь возможно ли дублировать компонент joomla 3

arsen

НЕрядовой
Регистрация
16 Июн 2011
Сообщения
1.078
Реакции
355
возможно ли дублировать компонент joomla 3 для параллельной работы на разных пунктах меню
 
если я Вас правильно понял, то технически да: выбираете в типе пункта меню нужный компонент и в настройках самого меню появиться с какими данными работает данный компонент.
Но если в обеих пунктах меню компонент будет использовать одни и те же данные (например блог одной и тойже категории материалов), то лучше создайте 1 пункт меню в наиболее важной директории меню, а в других местах используйте просто тип пеню: Псевдоним пункта меню. Так Вы избежите дублирования контента
 
Насколько я понимаю, вам необходимо использовать 2 одинаковых компонента в системе, но с разными данными.
Штатными средствами joomla дублировать компонент нельзя. Но если в этом есть необходимость, то можно сделать это вручную.
1. Распаковываем нужный компонент в любую временную папку у себя на диске.
2. Берем текстовый редактор, с возможностью поиска и замены текста в любых документах.
3. Все пути в компоненте нужно переименовать. Пути могут быть использованы в ссылках на самого себя или в именах включаемых файлов. Чаще всего это сводится к поиску подстроки com_имякомпонента и замене ее на новую.
3.1. Определяем идентификатор этого компонента, посмотрев в адресную строку.
Допустим, если у вас компонент MosetsTree, в адресной строке будет что-то типа:
index.php?option=com_mtree&task=listcats
com_mtree - это и есть идентификатор компонента.
3.2. Производим замену всех слов во всех файлах, mtree заменяем на mtree2 (например).
3.3. Далее нужно переименовать файлы, с идентификатором mtree. Открываем обычный файловый поиск, ищем mtree в названиях файлов и дописываем в конце каждого "2" то есть получиться mtree2.
4. В XML-файле нужно переименовать имя компонента в тэге name, например на MosetsTree2.
5. Далее надо переименовать используемые таблицы (во-первых в XML-файле, а во-вторых во всех файлах компонента, везде где используется объект базы данных $database и метод setQuery). Опять же, пользуемся поиском в редакторе.
6. Запаковываем обратно, и инсталлируем в joomla. Если всё сделано правильно - получаем 2 установленных независимых компонента - MosetsTree и MosetsTree2.
 
Насколько я понимаю, вам необходимо использовать 2 одинаковых компонента в системе, но с разными данными.
Штатными средствами joomla дублировать компонент нельзя. Но если в этом есть необходимость, то можно сделать это вручную.
1. Распаковываем нужный компонент в любую временную папку у себя на диске.
2. Берем текстовый редактор, с возможностью поиска и замены текста в любых документах.
3. Все пути в компоненте нужно переименовать. Пути могут быть использованы в ссылках на самого себя или в именах включаемых файлов. Чаще всего это сводится к поиску подстроки com_имякомпонента и замене ее на новую.
3.1. Определяем идентификатор этого компонента, посмотрев в адресную строку.
Допустим, если у вас компонент MosetsTree, в адресной строке будет что-то типа:
index.php?option=com_mtree&task=listcats
com_mtree - это и есть идентификатор компонента.
3.2. Производим замену всех слов во всех файлах, mtree заменяем на mtree2 (например).
3.3. Далее нужно переименовать файлы, с идентификатором mtree. Открываем обычный файловый поиск, ищем mtree в названиях файлов и дописываем в конце каждого "2" то есть получиться mtree2.
4. В XML-файле нужно переименовать имя компонента в тэге name, например на MosetsTree2.
5. Далее надо переименовать используемые таблицы (во-первых в XML-файле, а во-вторых во всех файлах компонента, везде где используется объект базы данных $database и метод setQuery). Опять же, пользуемся поиском в редакторе.
6. Запаковываем обратно, и инсталлируем в joomla. Если всё сделано правильно - получаем 2 установленных независимых компонента - MosetsTree и MosetsTree2.
данный способ мы нагуглил,попробовал. увы не сработало. то есть по отдельности (если просто установить) переименованный компонент работает как и оригинал. При установке на оригинал один из компонентов не работает. Видимо с j buisness dirrectory этот способ не сработает
 
Не тут то было-переопределил класс и все заработало на ура,2 компонента на 1 сайте))
 
Назад
Сверху