Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Firebug и Joomla (https://javascript.ru/forum/offtopic/13822-firebug-i-joomla.html)

emkon 15.12.2010 13:51

Firebug и Joomla
 
А как с помощью Firebug узнать, в какой из файлов Jooml'ы надо внести изменения ? Т.е. я с помощью Firebug понял, что и на что надо поменять, но где это все находится в папках Joomlы - их ведь немало. Есть ли в Firebug такая возможность?

emkon 15.12.2010 13:54

допустим пример такой: надо убрать/заменить надпись/значок "Купить" в корзине. Firebug показывает кусок кода. Допустим, я в нем разобрался и понял, что надо поменять. А где этот кусок хранится ? Где, в каком файле вносить окончательные изменения на сайте ?

Пример условный.

Gozar 15.12.2010 16:45

удалено.

monolithed 15.12.2010 17:01

emkon

1. нужно узнать в каком модуле выводится контент для этого нужно в адресной строке добавить параметры tp, (пример: http://www.joomla.org/?tp=1)

2. Firebug при наведении на название css-файла показывает к нему путь

3. Если поиск нужно произвести по к.л. компоненте или модулю, то ищите в каталогах /administrator/components, /components, /administrator/modules/, modules/
3. Если нужно найти какую-то строчку кода то в Notepad++ выполнить поиск по файлам (с фильтром, чтобы отсечь лишнее)

emkon 15.12.2010 17:47

Цитата:

Сообщение от monolithed (Сообщение 84004)
emkon

1. нужно узнать в каком модуле выводится контент для этого нужно в адресной строке добавить параметры tp, (пример: http://www.joomla.org/?tp=1)

2. Firebug при наведении на название css-файла показывает к нему путь

3. Если поиск нужно произвести по к.л. компоненте или модулю, то ищите в каталогах /administrator/components, /components, /administrator/modules/, modules/
3. Если нужно найти какую-то строчку кода то в Notepad++ выполнить поиск по файлам (с фильтром, чтобы отсечь лишнее)

все верно. я так и делаю. Но думал, что в firebage с его функционалом найдется и такая фишка.
в реальности так и приходится искать по содержимому множества файлов,
а хотелось бы знать: код какого файла сейчас в текущем окошке firebug, чтобы сразу найти его и открыть для внесения исправлений. Иначе получается так: сначала исправил ошибку в самом firebug, потом начинаешь искать, где это место в джумле
в любом случае , спасибо.

Gozar 15.12.2010 17:55

удалено.

Gozar 15.12.2010 18:06

удалено.

monolithed 15.12.2010 18:17

Цитата:

Сообщение от Gozar
К примеру нет у меня такого элемента, нужно его создать со всеми мне нужными свойствами, как это делается или хотябы как они хранят затем данные этого элемента?

В каком контексте слово "элемент" (xml, элемент шаблонизатора) и для чего это нужно (создать: модуль, компонент, шаблон)?

monolithed 15.12.2010 18:40

<?php
$default = 1; // value  по умолчанию
$details = array(1 => '1', 2 => '2', 3 => '3');
$options = array();

foreach($details as $key => $value){
	$options[] = JHTML::_('select.option', $key, $value);
}

echo JHTML::_('select.genericlist', $options, 'select', 'style="float: left', 'value', 'text', $default);
	//<select name="select" style="float: left;"></select> 
?>


Если с из базы что-то нужно то так:
$database =& JFactory::getDBO();
$query = "SELECT * FROM table'";
$database->setQuery($query);
$categorylist = $database->loadObjectList();


Но я делаю по типу MVC, там немного по иному, но суть та же

monolithed 15.12.2010 19:57

Ну к примеру есть класс JHTML, у которого есть свои методы и предопределенный элемент SELECT (genericlist), в свою очередь у которого есть набор опциональных элементов JHTML

В итоге для того чтобы создать элемент SELECT, в котором значения элементов OPTION будут браться из БД:
<?php
     $db =& JFactory::getDBO();
     $query = "SELECT a.id AS value, a.title AS text FROM #__categories AS a WHERE a.section='com_qcontacts_details'";
     //#__categories === jos_categories
     $db->setQuery($query);
     $objectlist = $db->loadObjectList();
     $categories[] = JHTML::_('select.option',  '0', "select", 'value', 'text' ); //<option value="0">select</option>
     $categories = array_merge($categories, $objectlist);
     $element = JHTML::_( 
			'select.genericlist', //тип элемента формы
            $categories, //options
            'cid', //id и name элемента формы
            'class="select" style="float:left"', //атрибуты элемента
            'value', //value
            'text', //text
             0 // selected
     );
	 echo $element;
	/*
	<select name="select">
		<option value="0">select</option>
		//...
	 </select>
	*/
?>


Есть на эту тему кстати статья на русском

Цитата:

Сообщение от Gozar
в xml файлах они хранятся?

xml файлы используются для пакетной загрузки файлов и хранения различной информации о компоненте, пример создания компонента можно посмотреть тут

PS: лучше всего о их фреймворке написано здесь


Часовой пояс GMT +3, время: 17:30.