Новости Joomla

Nevigen Audit JoomShopping 5+Расширение представляет собой большой дашборд для управления...

Nevigen Audit JoomShopping 5+Расширение представляет собой большой дашборд для управления...

Nevigen Audit JoomShopping 5+Расширение представляет собой большой дашборд для управления JoomShopping и работы с его данными. Расширение может:Товары:- отображение списка товаров в удобном информативном виде,- дополненные возможности фильтрации товаров в списке,- возможность быстрого удобного просмотра базовой статистики по товарам.- расширенные возможности поиска по товарам,- возможности анализа базовой подготовки SEO параметров товаров, с возможностью перехода к отфильтрованным товарам с "проблемами"- анализ базовой SEO подготовки товаров проводится по всем установленным для магазина языкам- редактирование товара (в апдейтах)Заказы:- отображать заказы в удобном виде,- обеспечивает широкие дополненные возможности фильтрации,- предоставляет расширенные возможности поиска по полям заказов,- возможность быстрого удобного просмотра базовой статистики по заказам.- планируются дополнительные возможности статистики и анализа продаж. (отдельными расширениями)Клиенты:- отображать список клиентов в удобном виде,- предоставляет расширенные возможности поиска по полям клиентов,- возможность быстрого удобного просмотра базовой статистики по клиентам.- исключена возможность блокировки собственной учетной записи, чтобы не утратить контроль для доступа в админпанель,- добавлено поле заметок для клиента (интегрированы заметки пользователя Joomla), что дает дополнительные возможности для работы разных менеджеров с клиентом.- планируются дополнительные возможности работы с клиентами (отдельными расширениями)Системные требования: JoomShopping 5.5+, PHP 8.1+Вопросы по расширению к участнику нашего сообщества @IhorNVGСтраница расширения#JoomShopping #расширения

Собственные макеты вывода для пользовательских полей JoomlaМы привыкли использовать механизм...

Собственные макеты вывода для пользовательских полей JoomlaМы привыкли использовать механизм...

Собственные макеты вывода для пользовательских полей JoomlaМы привыкли использовать механизм переопределения макетов Joomla: скопируй нужный тебе файл макета в папку html шаблона и твори там что хочешь. Это в полной мере относится и к пользовательским полям Joomla.Joomla ищет макеты рендера всех пользовательских полей в следующем порядке:- Есть ли файл templates/[template name]/html/layouts/[component name]/fields/render.php , переопределяющий макет вывода полей для конкретного компонента? Да - используем его.- Нет? Есть ли файл components/[component name]/layouts/fields/render.php в папке компонента? Да - используем его.- Нет? Есть ли файл templates/[template name]/html/layouts/com_fields/fields/render.php, переопределяющий вывод полей для com_fields? Да - используем его.- Нет? Используем файл components/com_fields/layouts/fields/render.phpЭто механизм поиска переопределений файлов макетов. Вчера столкнулся с тем, что если поле вставлено в текст материала с помощью шорт-кода (кнопкой редактора) вида {field 25}, то переопределения не сработали. Поэтому стал вспоминать как сделать свой макет для поля Joomla. Файл components/com_fields/layouts/field/render.php копируем в templates/YOUR_TEMPLATE/html/layouts/com_fields/field/etapy-raboty-nad-proektom.php. Обратите внимание, что мы файл переименовали, чтобы в настройках поля видеть его в выпадающем списке. После этого всё заработало как надо. Благо, переводил уже раньше статью Как происходит рендер пользовательских полей в Joomla?. Потом, порывшись по своему же переводу увидел, что эта особенность работы Joomla в статье уже в ней описана 😂. А также напомнил себе о возможности указывать макет поля прямо в шорт-коде, через запятую: {field 25,etapy-raboty-nad-proektom}. Правда, если честно, никогда этой возможностью не пользовался. @webtolkru#joomla #php #разработка #webdev

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

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Помогите разобраться...

Сперва интересует админка и в частности база данных. Под все расширения, теперь одна таблица - jos__extensions.
Но самое непонятное тут:

поле - manifest_cache
Код
a:11:{s:6:"legacy";b:0;s:4:"name";s:14:"PhocaGuestbook";s:4:"type";s:9:"component";s:12:"creationDate";s:10:"04/10/2010";s:6:"author";s:26:"Jan Pavelka (www.phoca.cz)";s:9:"copyright";s:11:"Jan Pavelka";s:11:"authorEmail";s:0:"";s:9:"authorUrl";s:12:"www.phoca.cz";s:7:"version";s:11:"2.0.0 Beta1";s:11:"description";s:15:"Phoca Guestbook";s:5:"group";s:0:"";}

и поле - params
Код
{"display_title_form":"2","display_name_form":"2","display_email_form":"1","display_website_form":"0","display_content_form":"2","enable_editor":"1","display_path_editor":"1","display_form":"0","form_position":"1","editor_width":"350","editor_height":"200","table_width":"350","predefined_name":"","username_or_name":"0","disable_user_check":"0","registered_users_only":"0","review_item":"1","send_mail":"0","display_name":"1","display_email":"0","display_website":"1","date_format":"DATE_FORMAT_LC","font_color":"#000000","second_font_color":"#dddddd","background_color":"#C8DFF9","border_color":"#E6E6E6","default_pagination":"10","pagination":"5,10,15,20,50","pagination_hide_all":"1","forbidden_word_filter":"","forbidden_whole_word_filter":"","ip_ban":"","max_char":"2000","max_url":"5","deny_url_words":"","enable_captcha":"1","enable_captcha_users":"0","standard_captcha_chars":"1,2,3,4,5,6,7,8,9, a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z, A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z","math_captcha_chars":"1,2,3,4,5,6,7,8,9, a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z, A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z","ttf_captcha_chars":"1,2,3,4,5,6,7,8,9, a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z, A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z","recaptcha_publickey":"","recaptcha_privatekey":"","enable_html_purifier":"1"}
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #1 : 03.01.2011, 04:24:58 »
Итак продолжим операцию... ТЗ простое... Нужно всего лишь заполнять, удалять и редактировать строки однои таблицы. Поля таблицы:

Код

CREATE TABLE IF NOT EXISTS `jos_advsearch` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `itemid` int(11) NOT NULL,
  `articleid` int(11) NOT NULL,
  `title` varchar(200) NOT NULL,
  `yearwrite` int(11) NOT NULL,
  `number` varchar(255) NOT NULL,
  `author` varchar(200) NOT NULL,
  `keywords` text NOT NULL,
  `published` tinyint(2) NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `id` (`id`),
  UNIQUE KEY `id_3` (`id`),
  KEY `id_2` (`id`),
  KEY `id_4` (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=21 ;


Я не знаю, может теперь нужно дополнительно какие-то поля вводить... Но, если что добавим...

Фронтэнд у меня отлично работает... Писал без MVC, так как задача достаточно специфическая, по сути дела, просто расширенный фильтр(поиск). Фильтр ищет по полям таблицы. Т.к. в контенте не указаны иногда поле автор, ключевые слова и прочие. Возможно это будет несколько неправильно и может неудобно вести контент и заполнять отдельно таблицу. Но, так зато будет работать быстрее. И не нужно будет патчить, добавлять новые поля и редактировать файлы, которые можно случайно при обновлении потрать. Кроме того, это даст возможно некоторые новые возможности.

фронэнд тут:
vmpr.ru

В поиске, если что-то набрать выводиться результат. С постраничной навигацией проблемы. Теряются элементы запроса... Таким образом на второй странице уже неправильный запрос SQL. И с работой в режиме ЧПУ, с постраничной навигацией  были проблемы. Но, это не смертельно важно щас...
« Последнее редактирование: 03.01.2011, 05:24:46 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #2 : 03.01.2011, 06:48:49 »
Легализация

переименовал уже сделанное в \components\temp. Сперва нам нужно, установить компонент... Что почему то у меня не получилось...
Для образца я разобрал XML - PhocaGuestbook ( http://www.phoca.cz/download/category/5-phoca-guestbook-component ). Он кстати уже установлен и работает на этом саите.

Код
<?xml version="1.0" encoding="utf-8"?>
<extension method="upgrade" type="component" version="1.6.0">
<name>PhocaGuestbook</name>
<author>Jan Pavelka (www.phoca.cz)</author>
<creationDate>02/12/2010</creationDate>
<authorEmail></authorEmail>
<authorUrl>www.phoca.cz</authorUrl>
<copyright>Jan Pavelka</copyright>
<license>GNU/GPL</license>
<version>2.0.0 Beta2</version>
<description>Phoca Guestbook</description>

<install>
<sql>
<file driver="mysql" charset="utf8">install.sql</file>
</sql>
</install>

<uninstall>
<sql>
<file driver="mysql" charset="utf8">uninstall.sql</file>
</sql>
</uninstall>

<installfile>install.phocaguestbook.php</installfile>

<uninstallfile>uninstall.phocaguestbook.php</uninstallfile>

<files folder="site">
<filename>controller.php</filename>
<filename>index.html</filename>
<filename>metadata.xml</filename>
<filename>phocaguestbook.php</filename>
<filename>router.php</filename>
<folder>assets</folder>
<folder>controllers</folder>
<folder>helpers</folder>
<folder>models</folder>
<folder>views</folder>
</files>

<languages>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_phocaguestbook.ini</language>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_phocaguestbook.sys.ini</language>
</languages>

<administration>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu.png" link="option=com_phocaguestbook">COM_PHOCAGUESTBOOK</menu>
<submenu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-cp.png" alt="COM_PHOCAGUESTBOOK_CONTROLPANEL" view="phocaguestbookcp" link="option=com_phocaguestbook">COM_PHOCAGUESTBOOK_CONTROLPANEL</menu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-item.png" alt="COM_PHOCAGUESTBOOK_ITEMS" view="phocaguestbooks" link="option=com_phocaguestbook&amp;amp;view=phocaguestbooks">COM_PHOCAGUESTBOOK_ITEMS</menu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-guestbook.png" alt="COM_PHOCAGUESTBOOK_GUESTBOOKS" view="phocaguestbookbs" link="option=com_phocaguestbook&amp;amp;view=phocaguestbookbs">COM_PHOCAGUESTBOOK_GUESTBOOKS</menu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-info.png" alt="COM_PHOCAGUESTBOOK_INFO" view="phocaguestbookin" link="option=com_phocaguestbook&amp;amp;view=phocaguestbookin">COM_PHOCAGUESTBOOK_INFO</menu>
</submenu>

<files folder="admin">
<filename>access.xml</filename>
<filename>config.xml</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
<filename>install.bak.sql</filename>
<filename>install.phocaguestbook.php</filename>
<filename>install.sql</filename>
<filename>phocaguestbook.php</filename>
<filename>phocaguestbook.xml</filename>
<filename>uninstall.phocaguestbook.php</filename>
<filename>uninstall.sql</filename>
<folder>assets</folder>
<folder>controllers</folder>
<folder>help</folder>
<folder>helpers</folder>
<folder>models</folder>
<folder>tables</folder>
<folder>views</folder>
</files>

<languages>
<language tag="en-GB">language/en-GB/en-GB.com_phocaguestbook.ini</language>
<language tag="en-GB">language/en-GB/en-GB.com_phocaguestbook.sys.ini</language>
</languages>

</administration>
</extension>


Вот моё:
Код
<?xml version="1.0" encoding="utf-8"?>
<extension method="upgrade" type="component" version="1.6.0">
<name>AdvSearch</name>
<author>dremora</author>
<creationDate>03/01/2011</creationDate>
<authorEmail></authorEmail>
<authorUrl></authorUrl>
<copyright>dremora</copyright>
<license>GNU/GPL</license>
<version>1.0.0 Beta</version>
<description>AdvSearch for vmpr.ru</description>

<install>
<sql>
<file driver="mysql" charset="utf8">install.sql</file>
</sql>
</install>

<install>
<sql>
<file driver="mysql" charset="utf8">install.sql</file>
</sql>
</install>

<installfile>install.advsearch.php</installfile>

<uninstallfile>uninstall.advsearch.php</uninstallfile>

<files folder="site">
<filename>advsearch.php</filename>
</files>

<languages>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.ini</language>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.sys.ini</language>
</languages>

<administration>
<menu img="components/com_advsearch/assets/images/icon-16-pgb-menu.png" link="option=com_phocaguestbook">AdvSearch</menu>

<files folder="admin">
<filename>access.xml</filename>
<filename>config.xml</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
<filename>install.bak.sql</filename>
<filename>install.advsearch.php</filename>
<filename>install.sql</filename>
<filename>advsearch.php</filename>
<filename>advsearch.xml</filename>
<filename>uninstall.advsearch.php</filename>
<filename>uninstall.sql</filename>
<folder>assets</folder>
<folder>controllers</folder>
<folder>help</folder>
<folder>helpers</folder>
<folder>models</folder>
<folder>tables</folder>
<folder>views</folder>
</files>

<languages>
 <language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.ini</language>
 <language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.sys.ini</language>
</languages>


</administration>

</extension>

Создал всё что он требует пустое(без внутреннего содержимого )...



И видимо, потому, что пустое установка дальше не пошла...



---после чашки чаю и немного времени---

Три ошибки в установщике исправил, тем не менее, ошибка 500 сохранилась...

Код
<?xml version="1.0" encoding="utf-8"?>
<extension method="upgrade" type="component" version="1.6.0">
<name>AdvSearch</name>
<author>dremora</author>
<creationDate>03/01/2011</creationDate>
<authorEmail></authorEmail>
<authorUrl></authorUrl>
<copyright>dremora</copyright>
<license>GNU/GPL</license>
<version>1.0.0 Beta</version>
<description>AdvSearch for vmpr.ru</description>

<install>
<sql>
<file driver="mysql" charset="utf8">install.sql</file>
</sql>
</install>

<uninstall>
<sql>
<file driver="mysql" charset="utf8">uninstall.sql</file>
</sql>
</uninstall>

<installfile>install.advsearch.php</installfile>

<uninstallfile>uninstall.advsearch.php</uninstallfile>

<files folder="site">
<filename>advsearch.php</filename>
<filename>index.html</filename>
</files>

<languages>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.ini</language>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.sys.ini</language>
</languages>

<administration>
<menu img="components/com_advsearch/assets/images/icon-16-pgb-menu.png" link="option=com_advsearch">AdvSearch</menu>

<files folder="admin">
<filename>access.xml</filename>
<filename>config.xml</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
<filename>install.bak.sql</filename>
<filename>install.advsearch.php</filename>
<filename>install.sql</filename>
<filename>advsearch.php</filename>
<filename>advsearch.xml</filename>
<filename>uninstall.advsearch.php</filename>
<filename>uninstall.sql</filename>
<folder>assets</folder>
<folder>controllers</folder>
<folder>help</folder>
<folder>helpers</folder>
<folder>models</folder>
<folder>tables</folder>
<folder>views</folder>
</files>

<languages>
  <language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.ini</language>
  <language tag="en-GB" client="site">language/en-GB/en-GB.com_advsearch.sys.ini</language>
</languages>


</administration>

</extension>
« Последнее редактирование: 03.01.2011, 07:29:54 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #3 : 03.01.2011, 09:02:56 »
Итак... Первыи блин оказался комом... И непонятно, почему не захотел устанавливаться.

Зато по инструкции всё хорошо установилось:
http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!1.6_-_Part_01#admin.2Fsql.2Fupdates.2Fmysql.2F0.0.1.sql

По видимому все папки должны обязательно содержать index.html, обязательно не пустые.

UPD

Точно, добавил не пустои index.html ко всему, и всё нормально установилось.
« Последнее редактирование: 03.01.2011, 09:09:25 от dremora »
Всё что не анархия, то фашизм...
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #4 : 03.01.2011, 12:17:23 »
Нового в 1.6 для разработчика много всего. Особенно это касается работой с формами. В соседней теме обсуждаем.
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Re: Написание компонента для Joomla 1.6
« Ответ #5 : 03.01.2011, 12:57:38 »

Но самое непонятное тут:

поле - manifest_cache
Код
a:11:{s:6:"legacy";b:0;s:4:"name";s:14:"PhocaGuestbook";s:4:"type";s:9:"component";s:12:"creationDate";s:10:"04/10/2010";s:6:"author";s:26:"Jan Pavelka (www.phoca.cz)";s:9:"copyright";s:11:"Jan Pavelka";s:11:"authorEmail";s:0:"";s:9:"authorUrl";s:12:"www.phoca.cz";s:7:"version";s:11:"2.0.0 Beta1";s:11:"description";s:15:"Phoca Guestbook";s:5:"group";s:0:"";}


Это массив, преобразованный в строку функцией serialize()

Разворачивается обратно в массив функцией unserialize()
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #6 : 03.01.2011, 13:56:57 »
Я продолжу постить сюда... Только чуть позже (спать хочу), в стиле ежедневника/блога. Потом можно отредактировать и выделить главные моменты.
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #7 : 04.01.2011, 05:12:53 »
Запускаем админку...

Итак... Дальше судя по мануалу становиться немного непонятно...

http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!1.6_-_Part_06

Нужно создавать на фронте определённые папки и фаилы. Только тогда по идее мы сможем подключить таблицу.

.../administrator/components/com_advsearch/tables/advsearch.php
Код
<?php
// No direct access
defined('_JEXEC') or die('Restricted access');
 
// import Joomla table library
jimport('joomla.database.table');
 
/**
 * Hello Table class
 */
class AdvSearchTableAdvSearch extends JTable
{
        /**
         * Constructor
         *
         * @param object Database connector object
         */
        function __construct(&$db)
        {
                parent::__construct('#__advsearch', 'id', $db);
        }
}

Что делать, если я разрабатывал фронтэнд без MVC?
« Последнее редактирование: 04.01.2011, 08:23:49 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #8 : 04.01.2011, 07:28:22 »
Итак... бекэнд вроде завёлся... Фаил, для работы с БД, описанныи выше, всё-же заработал.

http://docs.joomla.org/Developing_a_Model-View-Controller_%28MVC%29_Component_for_Joomla!1.6_-_Part_07

заполняем
...\administrator\components\com_advsearch\advsearch.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla controller library
jimport('joomla.application.component.controller');
 
// Get an instance of the controller prefixed by HelloWorld
$controller = JController::getInstance('AdvSearch');
 
// Perform the Request task
$controller->execute(JRequest::getCmd('task'));
 
// Redirect if set by the controller
$controller->redirect();

?>

заполняем контроллер
...\administrator\components\com_advsearch\controller.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla controller library
jimport('joomla.application.component.controller');
 
/**
 * General Controller of HelloWorld component
 */
class AdvSearchController extends JController
{
        /**
         * display task
         *
         * @return void
         */
        function display($cachable = false)
        {
                // set default view if not set
                JRequest::setVar('view', JRequest::getCmd('view', 'AdvSearch'));
 
                // call parent behavior
                parent::display($cachable);
        }
}

Заполняем представление, оно у нас в данном ТЗ одно лишь.
...\administrator\components\com_advsearch\views\advsearch\view.html.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla view library
jimport('joomla.application.component.view');
 
/**
 * HelloWorlds View
 */
class AdvSearchViewAdvSearch extends JView
{
        /**
         * HelloWorlds view display method
         * @return void
         */
        function display($tpl = null)
        {
                // Get data from the model
                $items = $this->get('Items');
                $pagination = $this->get('Pagination');
 
                // Check for errors.
                if (count($errors = $this->get('Errors')))
                {
                        JError::raiseError(500, implode('<br />', $errors));
                        return false;
                }
                // Assign data to the view
                $this->items = $items;
                $this->pagination = $pagination;
 
                // Display the template
                parent::display($tpl);
        }
}

И шаблон к нему
...\administrator\components\com_advsearch\views\advsearch\tmpl\default.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted Access');
 
// load tooltip behavior
JHtml::_('behavior.tooltip');
?>
<form action="<?php echo JRoute::_('index.php?option=com_advsearch'); ?>" method="post" name="adminForm">
        <table class="adminlist">
                <thead><?php echo $this->loadTemplate('head');?></thead>
                <tfoot><?php echo $this->loadTemplate('foot');?></tfoot>
                <tbody><?php echo $this->loadTemplate('body');?></tbody>
        </table>
</form>

Связанные шаблоны, head:
...\administrator\components\com_advsearch\views\advsearch\tmpl\default_head.php

Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted Access');
?>
<tr>
        <th width="5">
                <?php echo JText::_('COM_ADVSEARCH_HEADING_ID'); ?>
        </th>
        <th width="20">
                <input type="checkbox" name="toggle" value="" onclick="checkAll(<?php echo count($this->items); ?>);" />
        </th>                    
        <th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_ITEMID'); ?>
        </th>
<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_ARTICLEID'); ?>
        </th>

<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_TITLE'); ?>
        </th>

<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_YEARWRITE'); ?>
        </th>

<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_NUMBER'); ?>
        </th>

<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_AUTHOR'); ?>
        </th>

<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_KEYWORDS'); ?>
        </th>

<th>
                <?php echo JText::_('COM_ADVSEARCH_HEADING_PUBLISHED'); ?>
        </th>
</tr>

Связанные шаблоны, body:
...\administrator\components\com_advsearch\views\advsearch\tmpl\default_body.php

Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted Access');
?>
<?php foreach($this->items as $i => $item): ?>
        <tr class="row<?php echo $i % 2; ?>">
                <td>
                        <?php echo $item->id; ?>
                </td>
                <td>
                        <?php echo JHtml::_('grid.id', $i, $item->id); ?>
                </td>

                <td>
                        <?php echo $item->itemid; ?>
                </td>

<td>
                        <?php echo $item->articleid ; ?>
                </td>

<td>
                        <?php echo $item->title; ?>
                </td>

<td>
                        <?php echo $item->yearwrite; ?>
                </td>

<td>
                        <?php echo $item->number; ?>
                </td>

<td>
                        <?php echo $item->author; ?>
                </td>

<td>
                        <?php echo $item->keywords; ?>
                </td>

<td>
                        <?php echo $item->published; ?>
                </td>
        </tr>
<?php endforeach; ?>

Связанные шаблоны, foot:
...\administrator\components\com_advsearch\views\advsearch\tmpl\default_foot.php

Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted Access');
?>
<tr>
        <td colspan="10"><?php echo $this->pagination->getListFooter(); ?></td>
</tr>

Педжинация почему-то у меня не заработала, потому я её отключил(закоментировал). Будем потом думать почему...
« Последнее редактирование: 04.01.2011, 08:20:58 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #9 : 04.01.2011, 07:49:22 »
Модель к нему:

\administrator\components\com_advsearch\models\advsearch.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
// import the Joomla modellist library
jimport('joomla.application.component.modellist');
/**
 * HelloWorldList Model
 */
class AdvSearchModelAdvSearch extends JModelList
{
        /**
         * Method to build an SQL query to load the list data.
         *
         * @return      string  An SQL query
         */
        protected function getListQuery()
        {
                // Create a new query object.        
                $db = JFactory::getDBO();
                $query = $db->getQuery(true);
                // Select some fields
                $query->select('id,itemid,articleid,title,yearwrite,number,author,keywords,published');
                // From the hello table
                $query->from('#__advsearch');
                return $query;
        }
}

Итак, всё вроде работает... Кроме "педжинации". Нужен "русик"... Но, я сделал всё на англ. Время перехода на русскии в админке, ещё не пришло.

Удивился, почему в
\administrator\language\en-GB\

нет моих фаилов, которые должны быть после установки...

И пришлось, снова поправить главныи XML фаил.

Код
<?xml version="1.0" encoding="utf-8"?>
<extension method="upgrade" type="component" version="1.6.0">
<name>PhocaGuestbook</name>
<author>Jan Pavelka (www.phoca.cz)</author>
<creationDate>04/10/2010</creationDate>
<authorEmail></authorEmail>
<authorUrl>www.phoca.cz</authorUrl>
<copyright>Jan Pavelka</copyright>
<license>GNU/GPL</license>
<version>2.0.0 Beta1</version>
<description>Phoca Guestbook</description>

<install>
<sql>
<file driver="mysql" charset="utf8">install.sql</file>
</sql>
</install>

<uninstall>
<sql>
<file driver="mysql" charset="utf8">uninstall.sql</file>
</sql>
</uninstall>

<installfile>install.phocaguestbook.php</installfile>

<uninstallfile>uninstall.phocaguestbook.php</uninstallfile>

<files folder="site">
<filename>controller.php</filename>
<filename>index.html</filename>
<filename>metadata.xml</filename>
<filename>phocaguestbook.php</filename>
<filename>router.php</filename>
<folder>assets</folder>
<folder>controllers</folder>
<folder>helpers</folder>
<folder>models</folder>
<folder>views</folder>
</files>

<languages>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_phocaguestbook.ini</language>
<language tag="en-GB" client="site">language/en-GB/en-GB.com_phocaguestbook.sys.ini</language>
</languages>

<administration>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu.png" link="option=com_phocaguestbook">COM_PHOCAGUESTBOOK</menu>
<submenu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-cp.png" alt="COM_PHOCAGUESTBOOK_CONTROLPANEL" view="phocaguestbookcp" link="option=com_phocaguestbook">COM_PHOCAGUESTBOOK_CONTROLPANEL</menu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-item.png" alt="COM_PHOCAGUESTBOOK_ITEMS" view="phocaguestbooks" link="option=com_phocaguestbook&amp;amp;view=phocaguestbooks">COM_PHOCAGUESTBOOK_ITEMS</menu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-guestbook.png" alt="COM_PHOCAGUESTBOOK_GUESTBOOKS" view="phocaguestbookbs" link="option=com_phocaguestbook&amp;amp;view=phocaguestbookbs">COM_PHOCAGUESTBOOK_GUESTBOOKS</menu>
<menu img="components/com_phocaguestbook/assets/images/icon-16-pgb-menu-info.png" alt="COM_PHOCAGUESTBOOK_INFO" view="phocaguestbookin" link="option=com_phocaguestbook&amp;amp;view=phocaguestbookin">COM_PHOCAGUESTBOOK_INFO</menu>
</submenu>

<files folder="admin">
<filename>access.xml</filename>
<filename>config.xml</filename>
<filename>controller.php</filename>
<filename>index.html</filename>
<filename>install.bak.sql</filename>
<filename>install.phocaguestbook.php</filename>
<filename>install.sql</filename>
<filename>phocaguestbook.php</filename>
<filename>phocaguestbook.xml</filename>
<filename>uninstall.phocaguestbook.php</filename>
<filename>uninstall.sql</filename>
<folder>assets</folder>
<folder>controllers</folder>
<folder>help</folder>
<folder>helpers</folder>
<folder>models</folder>
<folder>tables</folder>
<folder>views</folder>
</files>

<languages>
<language tag="en-GB">language/en-GB/en-GB.com_phocaguestbook.ini</language>
<language tag="en-GB">language/en-GB/en-GB.com_phocaguestbook.sys.ini</language>
</languages>

</administration>
</extension>

      <languages>
         <language tag="en-GB" client="site">language/en-GB/en-GB.com_phocaguestbook.ini</language>
         <language tag="en-GB" client="site">language/en-GB/en-GB.com_phocaguestbook.sys.ini</language>
      </languages>

должно быть без параметра...

Едем дальше... Язык. Наверное, мы будем к нему ещё возвращаться потом... Кстати не понял, зачем у разработчика com_phocaguestbook ещё есть - en-GB.com_phocaguestbook.sys.ini. Но, с этим мы наверное в будущем разберёмся.

...\administrator\language\en-GB\en-GB.com_advsearch.ini
Код
COM_ADVSEARCH_HEADING_ID="#"
COM_ADVSEARCH_HEADING_ITEMID="ItemID"
COM_ADVSEARCH_HEADING_ARTICLEID="ArticleID"
COM_ADVSEARCH_HEADING_TITLE="Title"
COM_ADVSEARCH_HEADING_YEARWRITE="Year write"
COM_ADVSEARCH_HEADING_AUTHOR="Author"
COM_ADVSEARCH_HEADING_KEYWORDS="Keywords"
COM_ADVSEARCH_HEADING_PUBLISHED="Published"
COM_ADVSEARCH_HEADING_NUMBER="Number"

И результат:



UPD
"педжинация", сама, как-то заработала... Это радует)))
« Последнее редактирование: 04.01.2011, 08:18:20 от dremora »
Всё что не анархия, то фашизм...
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #10 : 04.01.2011, 10:13:41 »
.sys.ini файлы нужны для локализации админки. Например, для работы с пунктами меню.

Кстати, я заметил, что $db вызывается не по ссылке (не используется &). Интересно, это ошибка или так и должно быть? Походу так и должно быть, потому что во всех примерах JFactory используется без &
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #11 : 04.01.2011, 10:56:17 »
.sys.ini файлы нужны для локализации админки. Например, для работы с пунктами меню.

Кстати, я заметил, что $db вызывается не по ссылке (не используется &). Интересно, это ошибка или так и должно быть? Походу так и должно быть, потому что во всех примерах JFactory используется без &
Я фронт делал без ссылки... Хотя, ссылка это полезная вещь... Т.е. работает и так и так...

В общем накуралесил я немного... Это у нас - advsearchs - представление и контроллер. А advsearch будет - редактирование или создание нового. Можно, конечно обоити(оставить) это и сделать через AJAX.

Когда посплю продолжу остался финал.
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #12 : 07.01.2011, 13:23:22 »
Итак поправил, части(advsearch и advsearchs).

Но почему-то нет тулбара...

Для тулбара прописал:
...\administrator\components\com_advsearch\views\advsearchs\view.html.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla view library
jimport('joomla.application.component.view');
 
/**
 * HelloWorlds View
 */
class AdvSearchViewAdvSearchs extends JView
{
        /**
         * HelloWorlds view display method
         * @return void
         */
        function display($tpl = null)
        {
                // Get data from the model
                $items = $this->get('Items');
                $pagination = $this->get('Pagination');
 
                // Check for errors.
                if (count($errors = $this->get('Errors')))
                {
                        JError::raiseError(500, implode('<br />', $errors));
                        return false;
                }
                // Assign data to the view
                $this->items = $items;
                $this->pagination = $pagination;
 
                // Display the template
                parent::display($tpl);
        }

protected function addToolBar()
        {
                JToolBarHelper::title(JText::_('COM_ADVSEARCH_TITLE'));
                JToolBarHelper::deleteListX('', 'advsearchs.delete');
                JToolBarHelper::editListX('advsearch.edit');
                JToolBarHelper::addNewX('advsearch.add');
        }

protected function setDocument()
        {
                $document = JFactory::getDocument();
                $document->setTitle(JText::_('COM_ADVSEARCH_ADMINISTRATION'));
        }
}

Добавил в язык нужное и в "sys" то-же. Может быть дело в кнопках, но title(заголовок компонента) почему-то то-же не выводиться.

Думаю почему... У PhocaGuestbook такая же запись(синтаксис), но почему-то всё работает.
Всё что не анархия, то фашизм...
*

zuich

  • Новичок
  • 9
  • 3 / 0
Re: Написание компонента для Joomla 1.6
« Ответ #13 : 07.01.2011, 13:38:55 »
У вас  "addToolBar()" в  "function display" не прописана
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #14 : 07.01.2011, 13:52:32 »
У вас  "addToolBar()" в  "function display" не прописана
Точнее вот так в display():
$this->addToolBar();

Здесь есть немного основной инфы на русском, а здесь достаточно много на английском.



*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #15 : 07.01.2011, 13:54:23 »
оу... точно, спс

"+" в карму...

Беда, я немного невнимательный...

UPD

Теперь тулбар заработал...
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #16 : 10.01.2011, 10:37:12 »
Есть одна проблема, которую  никак не могу решить... Казалось бы, опять невнимательность и опечатка... Но, после того, как добавляю или редактирую запись. Когда, жму отмену или сохранить.

Попадаю на - [домен]/administrator/index.php?option=com_advsearch&view=advsearches
И естественно получаю ошибку - 500

А должно быть:
[домен]/administrator/index.php?option=com_advsearch&view=advsearchs

Много раз раз проверял код через поиск -  "advsearches". А так-же фаилы и папки на - "advsearches". Сверился полностью с мануалом. И вроде всё верно. Но, тем не менее, как, чья-то нехороша шутка - не работает. Удаляет хорошо... А добавить или отредактировать запись не получается.

Скорее всего ошибка в контроллере или в модели. Но там её нет..
...\administrator\components\com_advsearch\models\advsearch.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla modelform library
jimport('joomla.application.component.modeladmin');
 
/**
 * HelloWorld Model
 */
class AdvSearchModelAdvSearch extends JModelAdmin
{
        /**
         * Returns a reference to the a Table object, always creating it.
         *
         * @param       type    The table type to instantiate
         * @param       string  A prefix for the table class name. Optional.
         * @param       array   Configuration array for model. Optional.
         * @return      JTable  A database object
         * @since       1.6
         */
        public function getTable($type = 'AdvSearch', $prefix = 'AdvSearchTable', $config = array())
        {
                return JTable::getInstance($type, $prefix, $config);
        }
        /**
         * Method to get the record form.
         *
         * @param       array   $data           Data for the form.
         * @param       boolean $loadData       True if the form is to load its own data (default case), false if not.
         * @return      mixed   A JForm object on success, false on failure
         * @since       1.6
         */
        public function getForm($data = array(), $loadData = true)
        {
                // Get the form.
                $form = $this->loadForm('com_advsearch.advsearch', 'advsearch', array('control' => 'jform', 'load_data' => $loadData));
                if (empty($form))
                {
                        return false;
                }
                return $form;
        }
        /**
         * Method to get the data that should be injected in the form.
         *
         * @return      mixed   The data for the form.
         * @since       1.6
         */
        protected function loadFormData()
        {
                // Check the session for previously entered form data.
                $data = JFactory::getApplication()->getUserState('com_advsearch.edit.advsearch.data', array());
                if (empty($data))
                {
                        $data = $this->getItem();
                }
                return $data;
        }
}

...\administrator\components\com_advsearch\controllers\advsearch.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla controllerform library
jimport('joomla.application.component.controllerform');
 
/**
 * HelloWorld Controller
 */
class AdvSearchControllerAdvSearch extends JControllerForm
{
}

...\administrator\components\com_advsearch\controllers\advsearch.php
Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla controlleradmin library
jimport('joomla.application.component.controlleradmin');
 
/**
 * HelloWorlds Controller
 */
class AdvSearchControllerAdvSearchs extends JControllerAdmin
{
        /**
         * Proxy for getModel.
         * @since       1.6
         */
        public function getModel($name = 'AdvSearch', $prefix = 'AdvSearchModel')
        {
                $model = parent::getModel($name, $prefix, array('ignore_request' => true));
                return $model;
        }
}
Всё что не анархия, то фашизм...
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #17 : 10.01.2011, 11:07:52 »
dremora - покажите код вида AdvSearchViewAdvSearch и шаблона edit.php

Я так понимаю, что view=advsearchs - это список, а view=advsearch - это одна запись?
А то у Вас написано
Цитировать
попадаю на - [домен]/administrator/index.php?option=com_advsearch&view=advsearches
view=advsearches - ? Тут разве не view=advsearchs?

и

Цитировать
А должно быть:
[домен]/administrator/index.php?option=com_advsearch&view=advsearchs
view=advsearchs - ? Тут по идее должно быть advsearch.
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #18 : 10.01.2011, 11:25:03 »
dremora - покажите код вида AdvSearchViewAdvSearch и шаблона edit.php

Код
<?php
// No direct access
defined('_JEXEC') or die('Restricted access');
JHtml::_('behavior.tooltip');
?>
<form action="<?php echo JRoute::_('index.php?option=com_advsearch&layout=edit&id='.(int) $this->item->id); ?>" method="post" name="adminForm" id="advsearch-form">
        <fieldset class="adminform">
                <legend><?php echo JText::_( 'COM_HELLOWORLD_HELLOWORLD_DETAILS' ); ?></legend>
                <ul class="adminformlist">
<?php foreach($this->form->getFieldset() as $field): ?>
                        <li><?php echo $field->label;echo $field->input;?></li>
<?php endforeach; ?>
                </ul>
        </fieldset>
        <div>
                <input type="hidden" name="task" value="advsearch.edit" />
                <?php echo JHtml::_('form.token'); ?>
        </div>
</form>

Я так понимаю, что view=advsearchs - это список, а view=advsearch - это одна запись?

Да вы всё правильно поняли...
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #19 : 10.01.2011, 11:26:13 »
код вида:

Код
<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla view library
jimport('joomla.application.component.view');
 
/**
 * HelloWorld View
 */
class AdvSearchViewAdvSearch extends JView
{
        /**
         * display method of Hello view
         * @return void
         */
        public function display($tpl = null)
        {
                // get the Data
                $form = $this->get('Form');
                $item = $this->get('Item');
 
                // Check for errors.
                if (count($errors = $this->get('Errors')))
                {
                        JError::raiseError(500, implode('<br />', $errors));
                        return false;
                }
                // Assign the Data
                $this->form = $form;
                $this->item = $item;
 
                // Set the toolbar
                $this->addToolBar();
 
                // Display the template
                parent::display($tpl);
        }
 
        /**
         * Setting the toolbar
         */
        protected function addToolBar()
        {
                JRequest::setVar('hidemainmenu', true);
                $isNew = ($this->item->id == 0);
                JToolBarHelper::title($isNew ? JText::_('COM_HELLOWORLD_MANAGER_HELLOWORLD_NEW') : JText::_('COM_HELLOWORLD_MANAGER_HELLOWORLD_EDIT'));
                JToolBarHelper::save('advsearch.save');
                JToolBarHelper::cancel('advsearch.cancel', $isNew ? 'JTOOLBAR_CANCEL' : 'JTOOLBAR_CLOSE');
        }
}
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #20 : 10.01.2011, 11:34:37 »
view=advsearchs - ? Тут по идее должно быть advsearch.
После сохранения, мы по идее идём к списку... Соответственно, после записи должно идти на view=advsearchs

Щас уже обдумываю переписать список под - advsearches, т.к. нигде не могу встретить ошибку.
Всё что не анархия, то фашизм...
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #21 : 10.01.2011, 11:41:59 »
После сохранения, мы по идее идём к списку... Соответственно, после записи должно идти на view=advsearchs

Щас уже обдумываю переписать список под - advsearches, т.к. нигде не могу встретить ошибку.
А, ну да. Здесь верно.
В коде я вроде тоже не заметил ошибок. Но возможно, у Вас где-то ошибка в названиях классов или ещё какая-то мелочь. Я на выходных админку своего компонента начал переделывать, у меня все ок было.
*

SmokerMan

  • Гуру
  • 5291
  • 720 / 26
Re: Написание компонента для Joomla 1.6
« Ответ #22 : 11.01.2011, 12:14:05 »
После сохранения, мы по идее идём к списку... Соответственно, после записи должно идти на view=advsearchs
Во первых какой родительский контроллер используется то ли JControllerForm или JControllerAdmin не понятно.
Если JControllerForm тут написано
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #23 : 11.01.2011, 12:17:32 »
Да я уже переписал под "advsearches".

Вообще очень странная ошибка... Ещё более сложно её отловить.

Во первых какой родительский контроллер используется то ли JControllerForm или JControllerAdmin не понятно.
Если JControllerForm тут написано

Я делал строго по мануалу.
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #24 : 11.01.2011, 12:25:24 »
Админка по сути готова... Осталось повозиться с языком, но это мелочи.

Как бонус, нужно сделать импорт записей из com_content. Т.е. импортировать(title, articleid и если возможно itemid). Возможно ещё попробовать импортировать ключевики с метатэгов.

По моему в мануале этот урок не представлен. Либо, можно выполнять импорт при установке компонента. Что, не совсем то.
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #25 : 11.01.2011, 18:43:02 »
Народ, кто поможет... Как будет написать
INSERT запрос новым методом.

Есть таблица:
id session_id this_query life_time

Как составить запрос?

С селектом как то проще всё:

  
Код
$this->query->select($this->db->nameQuote('itemid'));
  $this->query->select($this->db->nameQuote('articleid'));
  $this->query->select($this->db->nameQuote('title'));
  $this->query->select($this->db->nameQuote('yearwrite'));
  $this->query->select($this->db->nameQuote('number'));
  $this->query->select($this->db->nameQuote('author'));
  $this->query->select($this->db->nameQuote('keywords'));
  $this->query->from($this->db->nameQuote('#__advsearch'));

Тут они у меня загнаны в св-ва класса(БД и Объект), а в остальном то-же самое.

То ли устал, то ли что... Но не могу сам въехать.
« Последнее редактирование: 11.01.2011, 18:48:15 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #26 : 11.01.2011, 19:12:27 »
Скорее всего будет так начинаться:

Код
$query->insert($db->nameQuote('#__advsearch_c'));

А дальше как писать? Список параметров и значение?

UPD

вопрос снят:

Код
$query        = $db->getQuery(true);
$query->insert('#__tableName');
 
$query->set('id=4');
 
$db->setQuery( $query );
$result        = $db->loadResult();
« Последнее редактирование: 11.01.2011, 19:38:17 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #27 : 12.01.2011, 03:41:35 »
потёрто
« Последнее редактирование: 12.01.2011, 03:55:53 от dremora »
Всё что не анархия, то фашизм...
*

dremora

  • Захожу иногда
  • 461
  • 48 / 12
Re: Написание компонента для Joomla 1.6
« Ответ #28 : 12.01.2011, 16:27:23 »
В финале... У меня два-три вопроса...

а) Почему в режиме SEF теряется itemid? (Если его отключить, то всё работает как нужно)
Как проверить?
Забиваем в поиск год - 1999, кликаем искать.
Переходим на вторую страницу. Нормально всё... Переходим снова на первую страницу - пропадает Itemid. Соответственно левыи модуль отсутствует и выглядит всё - страшно.
б) Как сделать, что-бы при клике по Искать, сразу была ссылка, в стиле ЧПУ?
в) Как добавить заголовок для компонента - своё содержимое тэга "<title></title>" В 1.0xx я помню как это делается... Но тут...
Всё что не анархия, то фашизм...
*

b2z

  • Глобальный модератор
  • 7284
  • 778 / 0
  • Разраблю понемногу
Re: Написание компонента для Joomla 1.6
« Ответ #29 : 12.01.2011, 17:11:01 »
в) Как добавить заголовок для компонента - своё содержимое тэга "<title></title>" В 1.0xx я помню как это делается... Но тут...
$title = 'Моя страница';
$document = JFactory::getDocument();
$document->setTitle($title);
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Документация по созданию модуля для Joomla 2.5 и Joomla 3.x

Автор b2z

Ответов: 1
Просмотров: 2119
Последний ответ 29.07.2015, 09:40:30
от b2z
Создание компонента MVC

Автор borodatych

Ответов: 36
Просмотров: 4191
Последний ответ 13.04.2015, 08:17:30
от flyingspook
Подскажите как сделать русификацию компонента)

Автор stardel

Ответов: 4
Просмотров: 6752
Последний ответ 08.04.2015, 09:08:00
от oxotnikkz
JPluginHelper::importPlugin('content') в Joomla 1.7

Автор Dutch

Ответов: 2
Просмотров: 4629
Последний ответ 30.03.2015, 14:22:51
от twins717
Документация по созданию компонента для Joomla 2.5

Автор Sulpher

Ответов: 74
Просмотров: 56626
Последний ответ 17.11.2014, 13:43:07
от limon142