Joomla! Программирование

Марк Декстер, Луис Лэндри

Овладев искусством программирования для Joomla!, вы сможете специально настраивать веб-сайты так, как того не позволяет сделать обычная настройка параметров, или устанавливать сторонние расширения. Это авторитетное и подробное руководство по программированию адресовано широкому кругу пользователей Joomla!: от начинающих, не имеющих никакого опыта работы с Joomla!, до опытных программистов, которым требуется быстро освоить последние версии Joomla!: 1.6, 1.7 и 2.5.

В книге представлены самые передовые приемы программирования, опробованные на практике ее авторами, Марком Декстером и Луисом Лэндри, написавшим немалую долю кода новой интегрированной среды Joomla!, подробно описаны многочисленные примеры исходного кода, а также приводится немало полезной справочной информации по всем затрагиваемым темам.

Это справочное и в то же время учебное пособие содержит подобные разъяснения всех вопросов написания программ для Joomla!: от самых простых задач создания замещений шаблонов до самых сложных, связанных с разработкой компонентов по шаблону MVC и приложений на платформе Joomla!.

Узнайте, как:

  • Подойти к Joomla! с точки зрения программирования.
  • Расширить Joomla! модулями, замещениями компоновок и подключаемыми модулями.
  • Выгодно использовать преимущества новой реализации шаблона проектирования MVC в Joomla!
  • Встраивать компоненты в пользовательскую и административную части веб-сайта.
  • Защищать веб-сайты с помощью новой, эффективной и удобной в работе системы списков контроля доступа.
  • Работать с базами данных и составлять сложные запросы к ним, в том числе и средствами нового класса JDatabaseQuery.
  • Расширять возможности веб-сайтов на Joomla! средствами JavaScript и интегрированной среды MooTools.
  • Разрабатывать специальные структуры категорий для собственных веб-сайтов и расширений Joomla!
  • Организовать оперативное обновление своих специальных расширений одним щелчком кнопкой мыши.
  • Пользоваться платформой Joomla! в качестве среды для разработки приложений.

Издательство: Вильямс, 2013 г.

ISBN 978-5-8459-1798-0

Количество страниц: 592.

Содержание книги «Joomla! Программирование»:

  • 19 Благодарности
  • 21 Об авторах
  • 23 Предисловие
    • 23 Опытные пользователи Joomla, только начинающие программировать
    • 24 Опытные программисты, только начинающие осваивать Joomla
    • 24 Разработчики, которым требуется быстро освоить версию 2.5 Joomla
    • 24 Читатели, которым требуется узнать больше о Joomla и разработке расширений
    • 24 Вопросы, не рассматриваемые в книге
    • 25 Структура книги
    • 25 Трудности веб-разработки — нужно слишком много знать!
    • 26 Нововведения в версии Joomla 2.5
      • 27 Система списков контроля доступа
      • 27 Определяемые пользователем уровни категорий (и больше никаких разделов)
      • 27 Класс JForm
      • 27 Класс JTableNested
      • 27 Класс JDatabaseQuery
      • 28 Версия PHP 5.2
      • 28 Версия MySQL 5.0.4
      • 28 Формат файлов языковой поддержки
      • 28 Упрощенная процедура обновления
      • 28 Усовершенствования шаблона MVC
      • 29 Поддержка других баз данных
      • 29 Усовершенствованный поиск
    • 29 Веб-сайт, сопровождающий книгу
    • 29 Добро пожаловать в сообщество разработчиков Joomla
  • 30 От издательства
  • 31 Глава 1. Основы разработки в Joomla!
    • 31 Разрабатывать в Joomla совсем не трудно!
      • 31 Техническая среда Joomla
    • 33 Требования к программированию для Joomla
    • 34 Способы расширения Joomla
      • 34 Открытость кода означает полный контроль над ним
      • 35 Изменения на веб-странице с помощью файлов замещения
      • 36 Расширения
      • 37 Подключаемые модули
      • 39 Модули
      • 40 Компоненты
      • 42 Языковые расширения
      • 44 Шаблоны
    • 46 Выбор типа расширения для конкретного проекта
    • 46 Применение Joomla в качестве платформы или интегрированной среды
    • 47 Резюме
  • 49 Глава 2. Подготовка рабочей станции к разработке в Joomla!
    • 49 Требования к запуску Joomla
      • 50 Папка DocumentRoot в Apache
      • 51 Получение своевременных инструкций
      • 51 Платформа Windows
      • 52 Платформа Mac OS X
      • 52 Платформа Linux
      • 53 Владелец файлов и папок по умолчанию
    • 53 Рабочие инструменты
      • 53 Интегрированная среда разработки в сравнении с текстовым редактором
      • 54 Варианты IDE с открытым кодом
      • 68 Коммерческие IDE
      • 68 Текстовые редакторы
    • 69 Другие инструментальные средства
      • 69 Программное обеспечение контроля версий
      • 70 Программное обеспечение автоматического построения проектов (Ant и Phing)
      • 70 Программы автоматизации тестирования
    • 71 Резюме
  • 73 Глава 3. Принцип действия Joomla!
    • 74 Краткий обзор папок Joomla
      • 74 Пользовательская и административная части
      • 75 Папка cache
      • 75 Папка cli
      • 76 Папка components
      • 77 Папка images
      • 78 Папка includes
      • 79 Папка installation
      • 79 Папка language
      • 80 Папка libraries
      • 80 Папка logs
      • 80 Папка media
      • 80 Папка modules
      • 82 Папка plugins
      • 83 Папка templates
      • 83 Папка tmp
      • 83 Папка administrator
    • 89 Платформа Joomla
    • 91 Веб-программирование в сравнении с обычным программированием
      • 92 Сохранение состояния программы
      • 94 Контроль и проверка команд
    • 96 Внутреннее строение цикла выполнения команд в Joomla
      • 96 Загрузка файла index.php
      • 97 Проверка среды выполнения
      • 98 Определение мест расположения файлов
      • 101 Загрузка интегрированной среды Joomla
      • 102 Начало или продолжение сеанса
      • 103 Маршрутизация URL
      • 105 Выполнение компонента
      • 111 Воспроизведение страницы
      • 116 Вывод страницы
      • 117 Краткие итоги сеанса работы с веб-сайтом Joomla
    • 119 Условные обозначения имен
    • 119 Глобальные объекты
    • 120 Краткий обзор таблиц базы данных
      • 121 О префиксах имен таблиц
    • 124 Резюме
  • 125 Глава 4. Расширение Joomla замещениями компоновки
    • 125 Основы применения шаблонов
      • 126 Папки и файлы шаблонов
      • 127 Файл шаблона index.php
      • 130 Места расположения в шаблонах
      • 134 Параметры настройки шаблонов
      • 137 Стилевая рамка модуля
    • 139 Копирование шаблона
    • 142 Замещение компоновки модуля последних статей в шаблоне
      • 142 Настройка модуля в выборочных данных
      • 144 Создание файла замещения компоновки
      • 145 Специальная настройка компоновки
      • 148 Устранение ошибки с помощью функции strip_tags()
      • 150 Применение метода truncate() из класса JHtmlString
      • 154 Применения синтаксиса подчеркивания
    • 155 Изменение внешнего вида компонента регистрации пользователя
    • 159 Альтернативные компоновки
    • 160 Добавление новой компоновки пункта меню
      • 161 Переопределение параметров
    • 163 О принципе действия замещений
    • 164 Замещение других элементов оформления веб-сайта
      • 164 Стилевая рамка модуля: добавление нового стиля оформления модуля
      • 169 Языковые замещения: добавление перевода в замещение
      • 172 Замещения таблиц и моделей
    • 172 Резюме
  • 173 Глава 5. Расширение Joomla подключаемыми модулями
    • 173 Что такое подключаемый модуль
    • 174 Принцип действия подключаемых модулей
      • 174 Условные обозначения подключаемых модулей
    • 175 Типы подключаемых модулей и место для их ввода
      • 175 Аутентификация
      • 175 Контрольное изображение
      • 175 Содержимое
      • 175 Редакторы
      • 176 Editors-XTD
      • 176 Расширение
      • 176 Поиск
      • 176 Интеллектуальный поиск
      • 176 Система
      • 176 Пользователь
    • 177 Краткий обзор избранных базовых подключаемых модулей
      • 177 Системный подключаемый модуль SEF
      • 180 Подключаемый модуль аутентификации
      • 189 Подключаемый модуль содержимого
      • 194 Подключаемый модуль для обработки события onBeforeCompileHead
    • 200 Подключаемый модуль для регистрации пользователей
      • 200 Обновление файла замещения подтверждения
      • 201 Ввод исходного XML-файла
      • 202 Ввод исходного PHP-файла
      • 204 Ввод файлов языковой поддержки
      • 206 Проверка подключаемого модуля
      • 207 Упаковка подключаемого модуля
    • 209 Усовершенствованный подключаемый модуль для регистрации пользователей
      • 210 Создание главного XML-файла для подключаемого модуля
      • 210 Создание XML-файла для разметки формы
      • 212 Создание исходного файла PHP для подключаемого модуля
      • 213 Ввод файлов языковой поддержки
      • 214 Проверка подключаемого модуля
      • 215 Упаковка подключаемого модуля
    • 215 Добавление параметров в подключаемый модуль
    • 218 Применение подключаемых модулей для замещения основных классов
      • 218 Каким образом импортируются подключаемые модули
      • 219 Каким образом загружаются классы
      • 220 Пример замещения класса JTableNested
    • 222 Передовой опыт разработки и применения подключаемых модулей
    • 223 Резюме
  • 225 Глава 6. Расширение Joomla модулями
    • 225 Что такое модуль
      • 225 Модули в сравнении с компонентами
    • 226 Краткий обзор базового модуля
      • 227 XML-файл модуля
      • 227 Главный файл модуля
      • 230 Вспомогательный класс модуля
      • 234 Файл исходной компоновки
    • 236 Отображение статей текущего автора
      • 236 Структура модуля
      • 237 XML-файл модуля
      • 241 Исходный файл PHP
      • 243 Вспомогательный файл
      • 254 Файл исходной компоновки
      • 255 Файлы языковой поддержки
      • 256 Проверка достоверности параметров средствами класса JForm
      • 264 Справочный файл
      • 265 Упаковка модуля
      • 265 Краткий обзор созданного модуля
      • 266 Передовой опыт разработки и применения модулей
    • 266 Резюме
  • 267 Глава 7. Компоненты, часть I. Контроллеры и модели
    • 267 Что такое компонент
      • 268 Основные функции компонентов
      • 268 Своеобразие компонентов
    • 269 Шаблон проектирования MVC
    • 270 Административная часть компонента Weblinks
      • 271 Установочные файлы
      • 272 Меню компонентов
      • 273 Параметры компонента
      • 273 Вспомогательные классы и методы
      • 274 Точка входа в компонент Weblinks
      • 276 Функции контроллера в компоненте Weblinks
      • 292 Модели компонента Weblinks
      • 300 Табличный класс компонента Weblinks
    • 303 Резюме
  • 305 Глава 8. Компоненты, часть II. Представления, класс JForm и пользовательская часть
    • 305 Представления и методы отображения
      • 306 Представление списка веб-ссылок
      • 309 Файл исходной компоновки
    • 317 Представление одиночных веб-ссылок
      • 318 Применение класса JForm в компоненте Weblinks
      • 323 Сохранение объекта типа JForm в оперативной памяти
      • 324 Видоизменение форм в динамическом режиме
      • 325 Воспроизведение формы
    • 331 Краткие итоги рассмотрения административной части компонента Weblinks
    • 331 Пользовательская часть компонента Weblinks
      • 331 Сходство структуры файлов и применения шаблона MVC
      • 334 Типы пунктов меню
      • 337 Маршрутизация в пользовательской части веб-сайта
      • 348 Пользовательское представление ленты новостей
    • 349 Резюме
  • 351 Глава 9. Компоненты, часть III. Пример разработки административной части компонента
    • 351 Краткий обзор назначения создаваемого примера компонента
    • 352 Детальная разработка компонента
    • 353 Файлы из административной части компонента
    • 355 Экран Subscriptions Manager: Subscriptions
      • 356 Исходный контроллер
      • 358 Контроллер подчиненного диспетчера и задачи на панели инструментов
      • 360 Представление диспетчера
      • 364 Вспомогательный класс
      • 365 Модель диспетчера
      • 370 Таблицы базы данных
      • 372 Компоновка экрана диспетчера
    • 376 Экран Subscriptions Manager: Add and Edit
      • 377 Задачи контроллера
      • 379 Представление ввода и редактирования подписки
      • 381 Модель ввода и редактирования подписок
      • 386 Форма ввода и редактирования подписок
      • 391 Табличный класс
    • 394 Файлы языковой поддержки
    • 396 Установка и настройка компонента
    • 398 Резюме
  • 399 Глава 10. Компоненты, часть IV. Пример разработки пользовательской части компонента
    • 399 Краткий обзор используемых файлов
    • 400 Установочный XML-файл
    • 401 Точка входа в компонент
    • 401 Исходный контроллер
    • 403 Представление категории подписок
      • 403 XML-файл для разметки пункта меню
      • 405 Представление категории
      • 410 Модель
      • 414 Вспомогательный файл категорий
      • 415 Файлы компоновки категорий
    • 419 Представление подписки
      • 420 Методы контроллера для редактирования подписки
      • 422 Представление и форма редактирования
      • 425 Компоновка формы редактирования
      • 426 Задача подписки
      • 429 Модель для формы
      • 433 Компоновка экрана с благодарностями за подписку
    • 435 Файл языковой поддержки
    • 437 Упаковка компонента
    • 437 Новая функция: отчет о подписчиках в административной части компонента
      • 438 Новая кнопка панели инструментов
      • 439 Метод контроллера для выполнения новой задачи
      • 439 Класс новой модели
      • 443 Метод контроллера для создания файла экспорта
      • 444 Составление отчета
      • 445 Практические соображения
    • 446 Резюме
  • 447 Глава 11. Работа с базой данных
    • 448 Краткий обзор баз данных
    • 449 Создание и видоизменение таблицы по командам DDL
      • 450 Команда CREATE TABLE
      • 453 Типы данных
      • 455 Атрибуты столбцов
    • 456 Команда ALTER TABLE
      • 457 Команда DROP TABLE
    • 457 Применение программы phpMyAdmin
      • 457 Тестирование и отладка запросов SQL
      • 459 Создание сценариев DDL
      • 461 Резервное и обычное копирование базы данных
    • 462 Формирование запросов SQL к базе данных с помощью команд DML
      • 462 Запросы по команде SELECT
      • 470 Запросы по команде UPDATE
      • 471 Запросы по команде INSERT
      • 471 Запросы по команде DELETE
      • 472 Запросы по команде UNION
      • 472 Выражения в запросах
    • 472 Разработка структуры таблиц
      • 473 Справочные таблицы
      • 473 Поля ключей и внешние ключи
      • 474 Таблицы соответствий
      • 475 Таблицы предыстории
    • 475 Работа с базой данных в среде Joomla
      • 476 Применение класса JDatabaseQuery
      • 482 Обработка данных по запросу
      • 482 Обработка запросов по командам INSERT, UPDATE и DELETE
      • 482 Обработка запросов по команде SELECT
    • 485 Резюме
  • 487 Глава 12. Применение JavaScript и MooTools в Joomla!
    • 487 Общее представление о JavaScript
    • 488 Принцип действия JavaScript
    • 489 Общее представление о MooTools
    • 490 Порядок применения JavaScript и MooTools в Joomla
    • 491 Встроенные средства JavaScript
      • 492 Поведение calendar
      • 493 Поведение caption
      • 493 Поведение colorpicker
      • 494 Проверка достоверности формы
      • 498 Поведение framework
      • 498 Поведение highlighter
      • 498 Поведение keepalive
      • 499 Поведение modal
      • 504 Виды поведения checkall и multiselect
      • 505 Поведение noframes
      • 506 Поведение switcher
      • 509 Поведение tooltip
      • 510 Поведение tree
      • 512 Поведение uploader
    • 513 Применение расширений MooTools
    • 514 Применение AJAX в Joomla
    • 518 Применение других интегрированных сред JavaScript
    • 520 Резюме
  • 521 Глава 13. Применение платформы Joomla! в качестве среды для разработки приложений
    • 521 Общее представление о платформе Joomla
    • 522 Причины выделения платформы Joomla в отдельный проект
    • 522 Назначение платформы Joomla
    • 523 Примеры разработки программ на платформе Joomla
      • 523 Подготовка проекта на платформе
      • 525 Приложение командной строки Hello World
      • 526 Веб-приложение Hello WWW
    • 528 Пример текущего контроля подписок
      • 529 Структура проекта
      • 529 Конфигурационный файл
      • 530 Контрольный файл
      • 532 Файл текущего контроля подписок
      • 542 Выполнение приложения для текущего контроля подписок
      • 543 Выполнение программ командной строки в системе Joomla CMS
    • 544 Резюме
  • 545 Приложение А. Краткий курс PHP и ООП
    • 545 Структура файлов PHP
      • 545 Файлы, содержащие только исходный код PHP
      • 545 Файлы, содержащие исходный код PHP и HTML
    • 546 Основы синтаксиса языка PHP
      • 546 Наиболее важные символы
    • 548 Наиболее употребительные операторы
      • 548 Арифметические и строковые операторы
      • 548 Задание и приведение типов переменных
      • 549 Логические операторы
    • 549 Условные операторы
    • 551 Оператор выбора switch
    • 551 Операторы цикла
      • 551 Циклы foreach
      • 552 Циклы for
      • 552 Циклы do/while
      • 553 Оператор continue
    • 553 Альтернативный синтаксис
    • 554 Переменные
      • 554 Объявление переменных
      • 554 Область действия переменных
    • 555 Массивы
      • 556 Обращение с массивами
      • 556 Символьные строки
    • 556 Константы и текущий каталог
    • 557 Функции и методы
      • 557 Структура функции
      • 558 Область действия переменной в функции
      • 558 Передача значений по ссылке
    • 559 Включение файлов и их типы
      • 559 Файлы объявления классов
      • 559 Файлы объявления функций
      • 560 Простые сценарии
      • 560 Смешанные файлы
      • 560 Включение файлов
    • 561 Основы ООП
      • 561 Классы и объекты
      • 561 Метод-конструктор
      • 561 Создание объектов
      • 562 Стандартный класс
      • 562 Расширение классов и наследование
      • 563 Переопределение методов
      • 563 Модификаторы public, protected и private
      • 563 Статические методы, поля и переменные
      • 564 Переменная $this и ключевые слова self и parent
    • 565 Простая отладка программ
      • 565 Просмотр определенных переменных
      • 565 Просмотр трассировки стека
    • 566 Более совершенные приемы программирования
      • 566 Применение логического оператора || вместо условного оператора if
      • 566 Связывание методов в цепочку
      • 567 Волшебные методы PHP
      • 568 Переменные в качестве имен классов и методов
      • 568 Регулярные выражения
  • 569 Приложение Б. Типы фильтров в Joomla!
    • 570 Фильтрация элементов разметки в коде HTML
    • 570 Фильтрация данных в приложениях Joomla
      • 570 Фильтрация в классе JForm
      • 571 Фильтрация в классах JRequest и JInput
      • 572 Непосредственное применение класса JFilterInput для фильтрации данных
  • 573 Приложение В. Методы из класса JHtml
    • 573 Вызов методов из класса JHtml
      • 574 Специальные классы типа JHtml
    • 574 Методы из класса JHtml
      • 574 Метод link()
      • 574 Метод image()
      • 574 Метод stylesheet()
      • 575 Метод script()
      • 575 Метод calendar()
      • 575 Метод date()
    • 575 Классы из папки html
      • 575 Класс JHtmlBatch
      • 576 Класс JHtmlBehavior
      • 576 Класс JHtmlCategory
      • 576 Класс JHtmlContent
      • 576 Класс JHtmlContentLanguage
      • 576 Класс JHtmlEmail
      • 576 Класс JHtmlForm
      • 577 Класс JHtmlGrid
      • 577 Класс JHtmlImage
      • 577 Класс JHtmlJGrid
      • 577 Класс JHtmlList
      • 577 Класс JHtmSelect
      • 578 Класс JHtmSliders
      • 578 Класс JHtmString
      • 578 Класс JHtmTabs
  • 579 Приложение Г. Словарь специальных терминов
  • 585 Предметный указатель

Инструкция как скачать книгу Марк Декстер, Луис Лэндри: Joomla! Программирование в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
Joomla! Программирование
Рейтинг книги:
0 голосов
2558

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: