Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Samouchitel_po_razrabotke_rasshireny_dlya_Jooml....docx
Скачиваний:
3
Добавлен:
10.11.2018
Размер:
2.53 Mб
Скачать

Дополнительные пи

Если вы попытаетесь использовать любой из ПИ на любом из экранов с комментариями в ИА, вы не получите ожидаемые результаты. Это потому, что кнопки по-прежнему указывает на задачи для Обзоров. Чтобы это исправить, нам необходимо будет создать новые панели инструментов для комментариев. Откроем /administrator/components/com_reviews/toolbar.reviews.html.php и добавим класс:

class TOOLBAR_reviews_comments

{

function _EDIT()

{

JToolBarHelper::save('saveComment');

JToolBarHelper::cancel('comments');

}

function _DEFAULT()

{

JToolBarHelper::title( JText::_( 'Comments' ), 'generic.png' );

JToolBarHelper::editList('editComment');

JToolBarHelper::deleteList('Are you sure you want to remove

these comments?', 'removeComment');

}

}

Первый параметр JToolBarHelper функций save(), cancel() и editList() отменяет задачи по умолчанию, что позволяет нам устанавливать их по нашему усмотрению. Вызов title() позволяет использовать левую часть меню для определения экрана, как мы это делали с ПИ управления Обзорами. [Как мудрено: просто добавляется иконка. прим.переводчика]. Наконец, deleteList() принимает сообщение для подтверждения действия, в качестве первого параметра и требуемой задачи в качестве второго. На экране появится сообщение для подтверждения действия, если установлен чекбокс разрешающий спрашивать подтверждение пользователя, прежде чем приступить к удалению задачи.

Для отображения этих панелей инструментов, мы должны изменить switch() в toolbars.reviews.php, который был создан в главе 2. Дополнительный код выделен ниже:

switch($task)

{

case 'edit':

case 'add':

TOOLBAR_reviews::_NEW();

break;

case 'comments':

case 'saveComment':

case 'removeComment':

TOOLBAR_reviews_comments::_DEFAULT();

break;

case 'editComment':

TOOLBAR_reviews_comments::_EDIT();

break;

default:

TOOLBAR_reviews::_DEFAULT();

break;

}

Теперь вы должны увидеть такие ПИ. Они должны работать только на комментарии и не должны мешать функциональности управления Обзорами

Резюме

Начав с простого Компонента мы создали целое программное обеспечение, которое может быть легко расширено и обновлено в будущем. Теперь у нас есть Модели данных, которые представляют всю информацию что, мы показываем. Дополнительные Виды позволяют нашим администраторам по-разному выводить ссылки на Обзоры. Мы также получили больший контроль над публикацией [в смысле управлением Вкл/Выкл для статей. прим.переводчика] и комментариями, что будет иметь важное значение, так как популярность нашего сайта растет

За кулисами: Плагины (Plug-Ins)

Пока что по нашим Обзорам ресторанов относительно легко перемещаться и сайт тоже является дружественным к пользователю. Однако наши критики хотят, чтобы мы сделали для них несколько простых вещей. Периодически у нас может появляться желание создавать тематические статьи для сборников, таких как Late Night Dining Highlights или An All Asian Appetite. Мы хотим сделать так, чтобы критики как можно проще могли ссылаться на существующие Обзоры в статьях, а также сделать так, чтобы общий поиск по сайту учитывал и Обзоры.

Эти новые возможности можно сделать с помощью Плагинов. Joomla! предоставляет Плагины как способ внедрения [отработки, срабатывания. прим.переводчика] небольших кусков кода при наступлении определенных событий. Среди других задач, Плагины также могут быть использованы для запуска HTML-редакторов, производить поиск, форматировать контент и создавать логи пользователей в нескольких системах одновременно. Плагины могут взаимодействовать с Компонентами и Модулями без изменения их исходного кода. При написании Плагинов мы будем рассматривать такие темы:

  • Запросы к базе данных

  • Простой Плагин-ссылка

  • Информационное окно

  • Поиск Обзоров

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]