Найти в Дзене
Full Stack

Админка для блога на Laravel

Давайте прикинем, что вы совсем ничего не знаете о том, что такое PHP, Laravel, маршрутизация, ресурсные контроллеры и модели. Просто таким образом, каждый человек сможет собрать админку для блога на Laravel. Для создания админки, мы будем использовать пакет «BlogEtc», который включает в себя: админку, категории, текстовый редактор, RSS-ленту, поиск по сайту и комментарии. Пагинацию мы сделаем сами. Напрягаться мы особо не будем, поэтому соберем эту админку примерно за 10 минут. О том, как опубликовать на реальном хостинге веб-приложение, сделанное на Laravel - я расскажу вам в следующей статье. Подготовка к созданию блога на Laravel Итак, скачайте бесплатный локальный сервер - Open Server, запустите консоль, перейдите в папку domains, с помощью команды: cd domains и затем запустите следующую команду: $ composer create-project --prefer-dist laravel/laravel laravel.loc "5.7.*" Затем создайте базу данных, в моем случае это будет - laravebd и пропишите в файл .env необходимые параметры дл
Оглавление
Админка для блога на Laravel 5.7 в 2019 году
Админка для блога на Laravel 5.7 в 2019 году

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

Для создания админки, мы будем использовать пакет «BlogEtc», который включает в себя: админку, категории, текстовый редактор, RSS-ленту, поиск по сайту и комментарии. Пагинацию мы сделаем сами.

Напрягаться мы особо не будем, поэтому соберем эту админку примерно за 10 минут. О том, как опубликовать на реальном хостинге веб-приложение, сделанное на Laravel - я расскажу вам в следующей статье.

Подготовка к созданию блога на Laravel

Итак, скачайте бесплатный локальный сервер - Open Server, запустите консоль, перейдите в папку domains, с помощью команды: cd domains и затем запустите следующую команду:

$ composer create-project --prefer-dist laravel/laravel laravel.loc "5.7.*"
Команда для загрузки Laravel 5.7 в консоле программы Open Server.
Команда для загрузки Laravel 5.7 в консоле программы Open Server.

Затем создайте базу данных, в моем случае это будет - laravebd и пропишите в файл .env необходимые параметры для подключения к БД.

У вас должно получится, что-то типа следующего:

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelbd // Имя базы данных
DB_USERNAME=root //Имя пользователя
DB_PASSWORD= // Пароль

Теперь перейдите в консоле программы Open Srever в проект - cd laravel.loc и запустите следующие команды:

$ php artisan migrate
$ php artisan make:auth

И затем зарегистрируйтесь в своем приложении. Также, не забудьте создать файл .htaccess в корневой директории приложения для того, чтобы удалить public из URL веб-приложения Laravel:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>

Подключение пакетов BlogEtc

1. Установка пакетов BlogEtc:

$ composer require "webdevetc/blogetc"

2. Установка файлов миграций:

$ php artisan vendor:publish --provider="WebDevEtc\BlogEtc\BlogEtcServiceProvider"

3. Установка редактора для статей:

$ php artisan vendor:publish --tag=laravel-fulltext

4. Запустите миграции.

$ php artisan migrate

5. Найдите следующий код в файле app -> User.php:

protected $hidden = [
'password', 'remember_token',
];

И сразу ПОСЛЕ него вставьте следующий код:

public function canManageBlogEtcPosts() {
return $this->id === 1;
}

Теперь перейдите по адресу: http://laravel.loc/blog_admin и вы перед собой следующий интерфейс админки на Larave:

Готовая админка блога на Laravel 5.7, сделанная с помощью пакета BlogEtc.
Готовая админка блога на Laravel 5.7, сделанная с помощью пакета BlogEtc.

Чтобы изменить адрес админки, перейдите в config -> blogetc.php. Найдите строчку 'admin_prefix' => "blog_admin" и измените blog_admin, например, на admin.

Теперь перейдите по адресу: http://laravel.loc/admin и перед вами окажется та же самая админка, но уже по новому адресу.

В заключение подведем итоги

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

Для начинающих - это идеальный вариант, если вы устали от тормозных сайтов на WordPress. Со временем вы узнаете Laravel получше и тогда уже у вас появятся действительно крутые панели управления сайтом.

HTML-шаблон вы можете натянуть конечно же свой, о том, как это сделать - вы найдете достаточно много информации на русском языке в YouTube.

Если вам что-то не понятно, - пишите свои комментарии под этим постом, я всем отвечу и подскажу, если у вас что-то не получается.