Первоначально опубликовано наhttps://www.niit.com/india/

Система управления контентом (CMS) — это веб-приложение, которое используется для наблюдения за контентом с такими задачами, как создание, изменение и удаление контента различными пользователями для отображения конечным пользователям. CMS обычно имеет два важных сегмента: приложение для управления контентом (CMA) в качестве внешнего пользовательского интерфейса, которое позволяет клиенту, даже с ограниченными навыками, добавлять, изменять и удалять контент с сайта без вмешательства администратора веб-сайта. ; и приложение для доставки контента (CDA), которое накапливает информацию и обновляет сайт. Многие организации используют системы управления контентом на своих веб-сайтах для распространения контента, связанного с их бизнесом.

Чтобы понять концепции создания программного обеспечения, вы можете ознакомиться с Программой последипломного образования по полной разработке программного обеспечения в NIIT.

Начало работы: создание базы данных

Первое, что нам нужно сделать, это создать базу данных MySQL для хранения нашего контента.

  1. Откройте окно терминала и запустите клиентскую программу 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. Чтобы узнать больше о различных языках программирования, посетите курсы для разработчиков программного обеспечения от НИИТ.