Как мне управлять веб-сайтом, управляемым базой данных PHP, с большим количеством страниц / контента? - PullRequest
0 голосов
/ 02 сентября 2011

Пусть будет известно, что у меня есть опыт создания веб-сайтов только с 5 или 6 страницами. Я хотел бы сделать сайт журналистики PHP Gaming вроде http://www.escapistmagazine.com/

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

Проблема с хранением контента в базе данных заключалась в том, чтобы выяснить, как их получить. Я прикрепил переменную GET к URL, чтобы я мог извлечь любую статью из файла index.php; Однако я не мог скрыть переменную GET от URL, поэтому я отказался от этого метода. У меня нет свободных денег, чтобы купить CMS, и я пробовал бесплатные, такие как Drupal, к большому разочарованию.

Нужно ли создавать отдельный php-файл для каждой статьи? Что бы сделал профессионал / ветеран в моей ситуации?

Ответы [ 4 ]

3 голосов
/ 02 сентября 2011

Во-первых, я хотел бы заявить, что если у вас возникнут проблемы с поиском терпения для установки Drupal, Wordpress или аналогичной бесплатной CMS ', вам будет сложно найти терпение для создания такой с нуля.

Сказав это, чтобы удовлетворить конкретный запрос, который вы ищете, я полагаю, что вы хотите использовать mod_rewrite для направления ваших запросов через один файл, который, в свою очередь, перенаправит запрос в соответствующий файл. Например, Drupal использует следующие правила:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

которая направляет ваш URL в одну переменную, 'q'.

2 голосов
/ 02 сентября 2011

Я управляю CMS, которая публикует страницы PHP статически, как вы думаете.Исходя из дизайнов MVC, это ужасно, и я настоятельно рекомендую вам не идти по этому пути.

Я бы проверил одну из платформ, такую ​​как Code Igniter, Cake, или если вы чувствуете, что хотите мучить себяЗенд.Помимо шутки, вы сможете создавать маршруты, которые используют URL-запрос для поиска контента, который вы ищете.Я не буду вдаваться в подробности концепции MVC и маршрутизации здесь, так как она хорошо документирована в Интернете, но, по сути, она значительно упрощает управление шаблонами.На самом деле, все намного проще, и ваша кодовая база остается намного чище.

Сейчас у меня есть кодовая база для моей CMS почти 400 МБ.Это потому, что существует множество статических страниц, которые проиндексированы.Это было бы значительно сокращено до ~ 50 МБ (если это), если бы я преобразовал его в инфраструктуру MVC.Имейте в виду, это без пользовательского контента, такого как PDF, MP3 и т. Д.

Если это кажется пугающим, я настоятельно рекомендую использовать Joomla !, Drupal, Wordpress или любую другую систему CMS.Поверь мне, ты сэкономишь массу времени.

1 голос
/ 02 сентября 2011

Когда вы начинаете учитывать безопасность, ремонтопригодность, время и другие факторы - для того, что вы описываете, я бы просто использовал WordPress. Бесплатный, простой в настройке и проверенный . Это не просто создание внешнего интерфейса для ваших зрителей, вам также нужны все инструменты администратора для управления им.

Если вы создаете свой собственный, вы захотите использовать базу данных для хранения ваших данных. Вы не будете создавать php-файл для каждой статьи, скорее всего, у вас будет один или несколько php-файлов, которые предназначены только для загрузки страницы статьи из базы данных, используя правила rewrite для хороших URL. Удачи в выборе пути.

1 голос
/ 02 сентября 2011

Лучший совет, который я могу вам дать: используйте Wordpress , не перестраивайте его самостоятельно. Это действительно идеально подходит для этой работы.

Итог: 15% лучших сайтов работают на Wordpress.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...