Создание блога на php

Создание блога на php

Вначале разберемся, что это за тип сайта – блог. Это такой сайт, где размещается текстовая, графическая или видеоинформация. Обязательная особенность – это возможность комментирования всей размещенной информации.

Если вы решили написать блог на PHP, выясним, какие знания будут необходимы. А если вы уже точно знаете для чего вам блог, то можете просто переходить к продвинутому курсу ООП в PHP, в рамках которого вы самостоятельно напишите свой блоговый движок на PHP и будете готовы к трудоустройству в хорошие компании.

Этапы создания блога

  1. Определяемся с тематикой. Задаем вопросы: кто и зачем будет делать посты, какой материал будет представлен и в каком виде. Набрасываем общий вид страниц сайта.
  2. Продумываем функциональную часть: какие действия может совершать пользователь, и как должна отреагировать система. Все это лучше записать в виде отдельных блоков.
  3. Определяемся, где и в каком виде будет храниться информация. Выбираем СУБД. Проектируем структуру базы данных.
  4. Выбираем, будем ли мы сами писать «движок» или возьмем уже существующий.

Движок блога на PHP

Движок или CMS – это набор некоторых функций, которые нужны для управления сайтом. Можно весь сайт написать с нуля, но можно значительно упростить задачу, если воспользоваться готовыми CMS.

Каждый вид сайта имеет особенности своей структуры. Пользователь привыкает к таким особенностям и, зайдя в интернет-магазин, будет искать фильтр или окно поиска – то, что должно быть присуще именно интернет-магазину. Аналогично и блоги. Здесь должна присутствовать страница с новостями, представленными в хронологическом порядке. Каждую новость можно посмотреть и прокомментировать.

Если вы принципиально решили писать блог на PHP самостоятельно, тогда рекомендуется разобраться в паттернах, т.е. шаблонах проектирования, чтобы не «изобретать велосипеды», ведь многие типичные проблемы решены и представлены в готовом виде. Рекомендуется посмотреть MVC и Singleton. Все это изучается в продвинутом курсе PHP.

Если же вы решили использовать CMS, перечислим некоторые из них: Joomla, Drupal, WordPress, Magento, OpenCart, osCommerce и т.п. И хотя большинство из них гибко настраиваемы, для блогов рекомендуются WordPress, vBulletin, phpBB , поэтому их и рассмотрим.

  • WordPress – наиболее универсальное и популярное средство, на котором возможно создать практически любой проект. Из преимуществ: множество бесплатных плагинов и шаблонов, понятный интерфейс, огромное количество материалов и уроков.
  • vBulletin – данное программное обеспечение ориентировано специально на форумы и блоги. Имеет большой набор плагинов для блогов, много компонентов для СЕО, высокий уровень безопасности. Но данный ресурс платный.
  • phpBB – бесплатное и удобное средство для форумов и блогов. Поддерживает множество баз данных, но является уязвимым к взломам.

Скрипт блога на PHP

Но есть еще один способ написать блог на PHP – это использовать скрипты. Скрипт – это некоторый программный код, который выполняет определенные функции. Зачастую, копаться в коде скрипта не нужно, достаточно выполнить инструкцию по установке и ввести требуемые данные. Причем скрипт может стать как основой вашего сайта, так и расширить уже существующий функционал.

В интернете можно найти массу подходящих скриптов, достаточно указать в поисковике, что вам требуется скрипт блога на PHP. Данные ресурсы в основном предлагают выполнение различных функций, например, быструю публикацию новостей, создание каталогов, записей и страниц. Как правило, название таких скриптов содержит слово blog.

Читайте также:  Восстановление загрузчика андроида кирпича

Заключение

Что бы вы ни выбрали, помните, что блоги уже давно придуманы, и не стоит ломать голову над выдумкой чего-то сверхъестественного. Гораздо важнее, если ваш сайт будет быстрым, удобным и внешне привлекательным для пользователя.

В данной статье я попытаюсь помочь начинающим программистам создать свой первый проект. Сегодня мы будем писать самый простой и быстрый движок блога.

Начнем с базы данных. Я считаю, что самым оптимальным вариантом будет mysql. Создадим через phpmyadmin новую таблицу со следующими полями: id (уникальный номер статьи), title (заголовок статьи), date (дата добавления статьи), content (текст статьи). Чтобы Вы не теряли время, я собрал sql запрос:

Давайте теперь добавим несколько записей для того, чтобы в дальнейшем мы смогли проверить работоспособность скрипта.

В первой части мы напишем скрипт, который будет выводит главную страницу со свежими статьями и сделаем постраничную навигацию.
Создадим конфигурационный файл, чтобы в будущем Вы всегда смогли изменить настройки блога. Я буду использовать ini файл т.к. такой способ оказался быстрым и удобным. Подробнее о файлах настроек Вы можете прочитать в интересной статье «Самые быстрые настройки для PHP-скриптов». Наш файл будет содержать следующие строки:
#Настройки базы данных
mysql_host = localhost
mysql_user = root
mysql_password = 12345
mysql_database = blog
#Количество статей на страницу
pp = 5
Сохраняем файл и даем ему произвольное название, я назвал просто — config.ini.
Приступаем к написанию главной страницы блога. Сначала нам предстоит собрать html каркас. За одно создадим файл стилей.

style.css
* <
font-family: Arial, Helvetica, sans-serif;
>

/* Блоки */
header <
width:850px;
height:200px;
margin:5px auto;
border-radius:6px;
background:white url(‘i/bg.jpg’) no-repeat top left; /* можете скачать картинку в интернете */
>

article <
width:850px;
height:auto;
margin:auto;
>

article section <
border-bottom:1px dashed #BDECFE;
>

article section h2 <
color:#41738A;
font-size:17pt;
>

article section p <
font-size:10pt;
>

article section p.date <
font-size:9pt;
color:#516168;
text-align:right;
margin-bottom:0px;
padding-bottom:0px;
>

Создадим еще один файл, в котором будет прописано подключение к базе данных, дадим ему имя con.php.

Теперь к индексному файлу подключим con.php и начнем писать запрос к базе данных для выборки свежих новостей.

Как вы уже заметили, мы и тут использовали наш файл настроек.
Теперь займемся выводом полученной информации. В нужном месте шаблона прописываем цикл:

Настало время попробовать сделать постраничную навигацию.

Вверху index.php, после подключения con.php, следует вставить следующие строки для того, чтобы узнать количество статей на сайте и общее количество страниц:

Проверяем, не передавал ли пользователь номер страницы и переделываем наш запрос.

Для проверки данного скрипта, вы можете в файле настроек заменить pp = 5 на pp = 1, чтобы на страницу выводилась только одна статья.

Осталось добавить кнопки навигации. Сразу после тега article пропишем:

Читайте также:  Intel crestline gml gl960 поддерживаемые процессоры

И не забудьте добавить стиль для данных ссылок. Давайте сделаем их в виде кнопок:

nav <
width:850px;
height:auto;
margin:10px auto;
text-align:center;
>

nav a <
padding:2px;
background-color:#EFEFEF;
border:1px solid #D5C2C2;
text-decoration:none;
color:black;
font-size:10pt;
margin:2px;
border-radius:5px;
>

Для тех, кто не разобрался в коде главной страницы, выкладываю его сюда:

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Хотел дописать свою CMS но увы дело это долгое по причине того, что постоянно придумываю что-то еще, и внедряю все новые элементы.. Боюсь что мое, так сказать, «дописывание» может никогда не закончится. Эта небольшая статья будет содержать цель, эдакий план, моего (и Вашего) проекта. Написание статей на блоге помогает мне разобраться в написанном коде, и улучшать его. Тем самым этот цикл статей мне поможет точно, возможно он и поможет Вам, ведь эти статьи можно расценивать как уроки php. Писать будем скрипт блога, то есть нарекаю этот цикл именем «создать блог с нуля»!

Во время создания скрипта блога мы будем пытаться не смешивать php код с html кодом. Я переписал код своего блога именно так, и скажу с уверенностью, что править такой сайт намного легче. Особенно если нужно сменить дизайн не трогая код.

В цикл войдут такие разделы как базовые навыки html, несколько уроков php, и само собой много много практики

Не советую пропускать ни одной из статей, начните с верстки, после почитайте материал из части «уроки php», далее изучите базовый функционал блога (Часть III и IV). Так Вы сможете понять как устроен сам движок. Уже под конец приступайте к самому сложному, это к улучшением. Приятного Вам изучения

Вот ссылки на уже написанные статьи:

Часть I — Получаем начальные навыки html и css, верстка

Часть II — Получаем начальные навыки php, уроки php

Часть III — Разработка пользовательской части блога

Часть IV — Разработка админ панели блога

Часть V — Улучшение

Приложение

Если у Вас есть какие либо идеи по улучшению проекта ( какая то интересная «фишка» ), с удовольствием выслушаю, и если мне ваша идея по силам, то обязательно опубликую ее на блоге!

Возможно Вам будут интересны следующие заметки

Комментарии (111)

Идея №1.

Вы не представляете, как меня в последнее время раздражают ссылки вида /index.php?blog=2. Ну просто бесит меня это 🙂
В связи с этим решил как-нибудь исправить это дело. Все конечно же знают (я надеюсь) что значит ЧПУ-ссылки. Именно они как раз бы здесь не помешали. Сейчас у меня ссылки отображаются как указано выше.

1) Создал файлик .htaccess и в него записал всего 2 строки:

RewriteEngine On
RewriteRule ^blog/([0-9]+)/? index.php?blog= [QSA,L]

Т.е. первая строка включает включает работу механизма преобразования модуля mod_rewrite, вторая строка представляет собой регулярное выражение, где index.php?blog=$1 мы заменяем на более читабельный адрес blog/([0-9]+)/

Читайте также:  Как из розетки 380 сделать 220

2) В файле index.html ОБЯЗАТЕЛЬНО прописать такую фишку:

Это сделано для задания абсолютного пути к документам(а именно это касается style.css).

Воооот. согласитесь, что теперь страшно-корявенький URL выглядит более привлекательно:

НО. Как теперь исправить чтобы ссылки у новостей с надписью "Читать дальше" отображали именно новый URL, или ХОТЯ БЫ при нажатии переходили к нему (хотя последний вариант не совсем гуд, т.к. дубликат контента появляется)?

Уж поверьте мне, я думал об этом =) В проект, которому посвящен мой блог, я обязательно включу ЧПУ, а вот у себя на блоге я пожалуй оставлю, пока что, так как есть. Не очень хочется ковыряться =)))

Что касается кнопки "читать дальше", то тут проблем не должно быть. Небольшие манипуляции с кодомhtml и php для придания нужного вида ссылке и усе =)

Графики нет потому что у Вас файл style.css не содержит графику. По всей видимости у Вас старый файл с стилями, это нестрашно, если Вы продолжите читать посты в том порядке в котором они были написаны, графика появится =)

Что касается всего остального. У Вас папка модули называется "module". В коде же Вы пишите "moduls". Исправьте либо в коде, либо поменяйте название папки с "module" на "moduls".

Людей, а именно конечный пользователь, можно разделить на два типа, те кто не знаю язык программирования, и те кто знает. Те кто не знает сами не лезут что либо править в коде, а те кто знают, им по барабану модульная CMS или нет, они все равно сделают с ней то, что хотят ( если конечно захотят =) ). Единственное, что было бы правильно сделать, это создать код таким образом, что бы другой программист в нем мог без труда разобраться.

Что же касается wordpress. Когда то программисты ( не считая разработчиков ) не знали как она работает, стало быть всяких новых, посторонних, возможностей для нее не было. И по сей день, что бы написать новый модуль для wp необходимо обладать не только языком программирования, но и технической информацией. За примером далеко бегать не буду. Я понятие не имею как работает этот популярный движок, и само собой не могу для нее ничего написать.

Теперь возьмем в пример Ваш движок. Если сторонний программист знает как она работает, ему не составит труда написать модуль который автоматический в строится в Ваш движок. Автоматический режим позволит пользователю не знающего языка программирования, расширить функционал Вашего движка.

Я до этого проекта писал код "сплошняком". Такой код было очень сложно переделывать, так как был написан сплошным текстом. Сейчас же у меня есть один файл к которому подключаются другие, совершено не зависимые друг от друга, файлы. Разве это не модульность?

Ссылка на основную публикацию
Смарт часы фикситайм 3 отзывы
Данный товар недоступен для доставки в Ваш регион Мы всегда стремимся к лучшему, чтобы радовать своих покупателей самыми выгодными ценами....
Сколько метров полоса разгона
Добрый день, уважаемый читатель. В этой статье речь пойдет про дополнительные полосы, предназначенные для разгона и торможения транспортных средств. Такие...
Сколько микрофонов в телефоне
Автор : Семён Романов Время чтения: 2 минуты Содержание Типы микрофонов Расположение в устройстве Возможности гарнитуры Как происходит подавление шумов...
Смарт часы эпл для детей
1 min Apple Watch — самые популярные умные часы в мире. Является ли это идеальным выбором для вашего ребенка, зависит...
Adblock detector