Первоначально опубликовано наhttps://www.niit.com/india/
Система управления контентом (CMS) — это веб-приложение, которое используется для наблюдения за контентом с такими задачами, как создание, изменение и удаление контента различными пользователями для отображения конечным пользователям. CMS обычно имеет два важных сегмента: приложение для управления контентом (CMA) в качестве внешнего пользовательского интерфейса, которое позволяет клиенту, даже с ограниченными навыками, добавлять, изменять и удалять контент с сайта без вмешательства администратора веб-сайта. ; и приложение для доставки контента (CDA), которое накапливает информацию и обновляет сайт. Многие организации используют системы управления контентом на своих веб-сайтах для распространения контента, связанного с их бизнесом.
Чтобы понять концепции создания программного обеспечения, вы можете ознакомиться с Программой последипломного образования по полной разработке программного обеспечения в NIIT.
Начало работы: создание базы данных
Первое, что нам нужно сделать, это создать базу данных MySQL для хранения нашего контента.
- Откройте окно терминала и запустите клиентскую программу MySQL:
2. Теперь создайте базу данных
В командной строке mysql› введите:
3. Закройте клиентскую программу MySQL:
Вы создали новую и пустую базу данных, в которую вы можете поместить таблицы и содержимое базы данных.
Создайте таблицу базы данных articles.
Наша CMS имеет только одну таблицу базы данных: статьи. Это содержит все статьи в системе.
Создайте текстовый файл tables.sql. Схема таблицы отображает виды информации, которую может содержать таблица, наряду с другими данными о таблице.
Код характеризует схему таблицы articles. Он написан на языке SQL, используемом для создания и управления информационными базами в MySQL и некоторых других системах баз данных).
Разбивка кода:
- Сделать таблицу статей
УДАЛИТЬ ТАБЛИЦУ, ЕСЛИ СУЩЕСТВУЕТ: статьи удаляют любую текущую таблицу статей и информацию, если она уже существует. Мы делаем это, поскольку мы не можем охарактеризовать таблицу с таким же именем, как текущая таблица.
- Добавьте поле Дата публикации
Следующая строка создает поле publicationDate, в котором хранится дата распространения каждой статьи. Это поле имеет тип данных даты, что означает, что оно может хранить значения «даты».
- Добавить основной ключ
CREATE TABLE характеризует ключ для таблицы. Ключ также можно назвать индексом, и, говоря простыми словами, он ускоряет обнаружение данных в таблице в ущерб некоторому дополнительному пространству. Поэтому мы делаем поле id PRIMARY KEY. Каждая таблица может иметь единственный PRIMARY KEY; это ключ, который распознает каждую запись в таблице. Кроме того, добавив этот ключ, MySQL может быстро восстановить статью, зависящую от ее идентификатора.
Поскольку мы создали нашу схему таблицы, нам нужно сложить ее в MySQL, чтобы создать настоящую таблицу. Для этого откройте окно терминала и измените папку, содержащую ваш файл tables.sql:
Создайте файл конфигурации
Поскольку вы создали свою базу данных, вы начнете составлять свой PHP-код.
Создайте файл конфигурации для хранения различных настроек CMS. Этот файл будет использоваться всеми файлами сценариев в CMS.
В папке cms создайте файл с именем config.php:
Разбивка кода:
- Показать ошибки в программе
Строка ini_set() заставляет программу показывать сообщения об ошибках. Это полезно для устранения неполадок. Однако на действующем сайте для него следует установить значение false, поскольку это может представлять угрозу безопасности.
- Установите часовой пояс
CMS будет использовать функцию PHPdate(), и нам нужно указать часовой пояс сервера PHP.
- Установите тонкости доступа к базе данных
Теперь мы описываем постоянный DB_DSN, который показывает PHP, где найти базу данных MySQL. Убедитесь, что параметр dbname совпадает с именем вашей базы данных CMS. Точно так же мы сохраняем имя пользователя MySQL и секретный ключ для доступа к базе данных CMS в константах DB_USERNAME и DB_PASSWORD.
- Установите способы
Задайте двусторонние имена в документе конфигурации: CLASS_PATH, указывающий путь к файлам классов, и TEMPLATE_PATH, указывающий место, где контент должен искать HTML. файлы шаблонов.
- Задайте имя пользователя и секретный ключ администратора
Константы ADMIN_USERNAME и ADMIN_PASSWORD содержат тонкости входа в систему для администратора CMS. Еще раз, вам нужно будет изменить их на свои собственные качества.
- Включите класс Article
Файл класса Article требуется всем содержимым нашего приложения, и мы должны включить его сюда.
- Создать обработчик исключений
Мы характеризуем handleException(), базовую функцию для работы с любыми исключениями PHP, возникающими при выполнении кода. Функция показывает неэксклюзивное сообщение об ошибке и записывает фактическое сообщение об исключении в журнал ошибок веб-сервера.
Создайте класс статьи
Теперь создайте класс PHP Article, так как он выполняет базовые функции хранения статей в базе данных и восстановления статей из базы данных. После создания этого класса другим компонентам нашей CMS будет просто создавать, обновлять, восстанавливать и удалять статьи.
В папке cms создайте папку классов. В этой папке классов создайте новый файл с именем Article.php:
Внешний скрипт index.php
Теперь создайте index.php, скрипт, управляющий отображением интерфейсных страниц веб-сайта. Сохраните файл в созданной ранее папке cms:
Внутренний скрипт admin.php
Сценарий администратора немного сложнее, чем index.php, поскольку он управляет всеми функциями администрирования CMS. Однако основная структура аналогична index.php.
Сохраните файл admin.php в той же папке, что и ваш скрипт index.php:
Создайте интерфейсные шаблоны
Мы сделали весь PHP-код для функциональности нашей CMS. Следующим шагом будет создание HTML-шаблонов для интерфейсной и административной страниц.
- Включаемые файлы
Создайте папку с именем template в папке cms. Теперь создайте папку с именем include в папке шаблонов. В эту папку мы поместим разметку шапки и футера, общую для каждой страницы сайта.
Создайте новый файл с именем header.php в папке include:
Код в основном показывает разметку для начала HTML-страницы. Он использует переменную $results['pageTitle'], переданную из основного скрипта (index.php или admin.php), чтобы установить заголовок компонент и, кроме того, ссылки на таблицу стилей, style.css
Теперь создайте файл с именем footer.php в той же папке:
- homepage.php
Теперь перейдите в папку templates и создайте там файл шаблона homepage.php:
Шаблон показывает функции статьи на целевой странице в виде неупорядоченного списка. Он перебирает различные статьи, хранящиеся в $results[‘articles’], и отображает дату распространения каждой статьи, заголовок и краткое содержание. Заголовок соединяется обратно с '.' (index.php), передавая action=viewArticle и идентификатор статьи в URL-адресе. Это позволяет посетителю просмотреть статью, щелкнув ее название.
- архив.php
Теперь создайте файл шаблона archive.php в папке шаблонов:
Шаблон отображает архив статей в CMS. Он практически неотличим от homepage.php. Он добавляет класс CSS в неупорядоченный список, чтобы мы могли немного разнообразить элементы списка на целевой странице, а также добавляет год к датам распространения статьи.
Страница содержит полный список статей для базы данных, восстановленный с помощью $results[‘totalRows’]. Вместо ссылки на архив в конце страницы есть ссылка «Вернуться на главную».
- viewArticle.php
Этот интерфейсный шаблон показывает пользователю статью. Теперь создайте файл с именем viewArticle.php в папке шаблонов.
Внутренние шаблоны
Мы уже сделали шаблоны для лицевой части сайта. Теперь нам нужно создать три шаблона администратора.
- loginForm.php
Теперь создайте папку с именем admin внутри папки шаблонов. В папке admin создайте первый из трех шаблонов, loginForm.php:
- listArticles.php
Теперь создайте второй шаблон admin в папке администратора и назовите его listArticles.php:
Шаблон показывает список статей, которые администратор может изменить. После отображения любых сообщений об ошибках или статусе он перебирает различные объекты статей, хранящиеся в $results['articles'], показывая дату распространения каждой статьи и заголовок в строке таблицы.
- editArticles.php
Создайте окончательный шаблон editArticles.php в папке администратора:
Структура включает область для сообщений об ошибках и поля для заголовка статьи, содержания, сводки и даты распространения. Наконец, есть две кнопки для сохранения и удаления изменений и ссылка, позволяющая администратору удалить недавно измененную статью.
Заключение
CMS используется для управления корпоративным контентом (ECM) и управления веб-контентом (WCM). ECM обычно поддерживает различных пользователей в среде для совместной работы, координируя управление документами, расширенное управление ресурсами и ведение записей.
Язык программирования PHP является одним из решений для создания сайтов и онлайн-приложений. Поскольку PHP не может хранить информацию сам по себе и зависит от базы данных для безопасного хранения данных. MySQL — лучший вариант для разработчиков PHP. Как система управления реляционными базами данных (RDBMS) с открытым исходным кодом, использующая язык SQL, база данных MySQL помогает автоматизировать восстановление информации и предлагает помощь в разработке веб-приложений PHP-MySQL. CMS довольно стандартна, но дает отправную точку для создания веб-сайтов, управляемых CMS, с использованием PHP и MySQL. Чтобы узнать больше о различных языках программирования, посетите курсы для разработчиков программного обеспечения от НИИТ.