lucass3na/laravel-blog

简单的Laravel博客包(包含管理面板),适用于Laravel 6.x和7.x。包含所有视图、控制器、路由,可以将博客添加到任何现有的Laravel应用程序中。完全可定制的博客(视图、URL和许多其他选项)。包括图片上传和美观的管理界面来管理您的博客。默认为

v9.2.1 2021-03-19 22:52 UTC

README

你使用过Wordpress吗?开发者称这个包为类似于Wordpress的Laravel博客。

联系我们进行任何定制

contact@binshops.com

轻量级且全面

具有令人难以置信的功能的轻量级Laravel博客包。我强烈推荐它,因为它

  • 快速安装(<3分钟)
  • 非常容易扩展
  • 开箱即用功能丰富
  • 其简单性使其易于与最新的Laravel兼容
  • 除Laravel知识外没有其他概念
  • 与Bagisto等其他Laravel平台兼容

卓越功能

  • 全文搜索 - 在所有博客文章中进行搜索
  • 多级分类 - 使用Baum嵌套集
  • 多语言支持

快速简单的安装

1- 通过Composer安装

composer require binshops/laravel-blog

对于新的Laravel安装,请运行以下命令

composer require laravel/ui
php artisan ui vue --auth

2- 运行以下两个命令以复制配置文件、迁移文件和视图文件

php artisan vendor:publish --provider="BinshopsBlog\BinshopsBlogServiceProvider"

3- 执行迁移以创建表

php artisan migrate;

4- 您必须在您的 \App\User(在Laravel 8 \App\Models\User)模型中添加一个方法。正如这个方法的名字所示,它确定哪个用户可以管理帖子。将您的逻辑放在那里

 /**
     * Enter your own logic (e.g. if ($this->id === 1) to
     *   enable this user to be able to add/edit blog posts
     *
     * @return bool - true = they can edit / manage blog posts,
     *        false = they have no access to the blog admin panel
     */
    public function canManageBinshopsBlogPosts()
    {
        // Enter the logic needed for your app.
        // Maybe you can just hardcode in a user id that you
        //   know is always an admin ID?

        if (       $this->id === 1
             && $this->email === "your_admin_user@your_site.com"
           ){

           // return true so this user CAN edit/post/delete
           // blog posts (and post any HTML/JS)

           return true;
        }

        // otherwise return false, so they have no access
        // to the admin panel (but can still view posts)

        return false;
    }

5- 在 public/ 中创建一个名为 blog_images 的目录

6- 以管理员身份登录并设置您的包: /blog_admin/setup

恭喜!您的博客已准备好使用。(URL可在配置文件中进行自定义)

管理面板URI: /blog_admin 前端URI: /en/blog

要查看Packagist上的包,请点击此 链接

单语言版本

要安装包的单语言版本,请使用版本v8.1x

1- composer require binshops/laravel-blog:v8.1.1

2- php artisan vendor:publish --provider="BinshopsBlog\BinshopsBlogServiceProvider"

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

4- php artisan migrate;

您可以在“single-lang”分支中查看单语言版本。

重要提示

  • 对于Laravel 8.x的默认认证用户模型,在 binshopsblog.php 中将用户模型更改为: \App\Models\User::class

功能

  • 与最新Laravel版本(Laravel 8.x)兼容
  • 与先前Laravel版本的向后兼容性
  • 全文搜索 - 在博客文章中进行搜索
  • 多级分类支持
  • 通过其 config/binshopsblog.php 配置文件进行完全配置
  • 现成可用的管理面板
  • 完全可定制管理视图和前端视图
  • 分页视图
  • 上传图片的能力
  • 管理帖子、分类
  • 管理评论和评论批准
  • 其他选项包括使用Disqus评论或禁用评论

近期更改

  • 9.1.x 多语言支持
  • 8.0.x 与Laravel 8.x兼容

此包适用于谁/什么

  • 适用于运行Laravel的网站
  • 谁想要拥有一个网站博客。这个Laravel博客提供了一个易于使用的界面来撰写博客文章/分配分类/管理现有文章
  • 只有管理员用户可以编辑/管理博客(这并不适合让您的网站上每个用户都能管理文章)
  • 为任何喜欢将类似WordPress的Laravel博客添加到Laravel网站中的人

如何自定义博客视图/模板

在正确执行vendor:publish后,所有默认模板文件都位于/resources/views/vendor/binshopsblog/中,并且很容易编辑以满足您的需求。

自定义管理员视图

如果您需要自定义管理员视图,只需将vendor/binshopsblog/src/Views/binshopsblog_admin中的文件复制到resources/views/vendor/binshopsblog_admin。然后您就可以像修改其他任何视图文件一样修改它们。

路由

它将自动设置所有必需的路由(包括面向公众的和管理员后端)。有一些配置选项(例如将/blog/ URL更改为其他内容),可以在binshopsblog.php文件中完成。

配置选项

所有配置选项都有注释,说明它们的功能。请参考/config/目录中的binshopsblog.php文件。

自定义用户模型

您可以通过配置文件更改默认用户模型。

事件

您可以在/src/Events目录中找到所有触发的事件。

将这些(以及事件监听器)添加到您的EventServiceProvider.php文件中,以便在事件触发时使用这些事件。

内置CAPTCHA/反垃圾邮件

有一个内置的CAPTCHA(反垃圾邮件评论)系统,您可以用自己的实现轻松替换。

有关详细信息,请参阅此CAPTCHA文档

图片上传错误

尝试将以下内容添加到config/app.php

'Image' => Intervention\Image\Facades\Image::class
  • 同时确保/tmp可写。如果您启用了open_basedir,请确保将其值添加:/tmp。
  • 确保服务器可写/public/blog_images(或您在配置中设置的任何目录)
  • 您可能需要设置更高的内存限制或上传更小的图片文件。这取决于您的服务器。我已经用它上传了巨大的(10mb+)jpg图片,一旦服务器正确设置以处理更大的文件上传,就不会有问题。

版本历史

  • 9.2.x 包的稳定版本
  • 9.0.x 多语言支持beta发布
  • 8.0.x 兼容Laravel 8
  • 7.3.2 一些错误修复
  • 7.3.0 新的管理员UI
  • 7.2.2
    • 错误修复:当禁用时不要显示搜索栏
    • 功能:配置显示全文文章或预览
  • 7.2.1 - 在管理员面板中添加登出按钮
  • 7.2.0
    • 为博客添加子分类功能
    • 添加阅读进度条功能(如果升级,重新发布配置文件和视图文件)
  • 7.1.8 - 从文章中删除图片的功能(此功能对旧文章不起作用)
  • 7.1.7 - 更新CKEditor
  • 7.1.5 - 最近文章的轻微修复
  • 7.1.4 - 更新全文搜索包,解决搜索问题
  • 7.1.2 - 在博客主页上显示分类 - 轻微修复(如果您升级,请尝试重新发布视图文件)
  • 7.1.1 - 轻微修复和一些管理员面板文本更改
  • 7.1.0 - 添加对自定义用户模型的支持(如果您升级,请尝试发布新的配置)
  • 7.0.2 - 列表文章和搜索页面的错误修复
  • 7.0.1 - 使其与Laravel 6.x和7.x兼容
  • 3.1 - 一些修复
  • 3.0.3 - 修复了RSS订阅缓存问题
  • 3.0.2 - 修复了默认中等图片大小(更改为600x400)
  • 3.0.1 - 将所有短标签(?)替换为完整打开标签(?php)
  • 3.0 - 添加了上传图片的独立功能(并在数据库中保存一些元数据)
  • 2.1 - 向数据库和表单中添加了 'short_description',BinshopsBlogPost::generate_introduction() 方法将尝试使用此字段生成简介文本。
  • 2.0 - 添加了全文搜索(通过配置文件启用,默认情况下是禁用的)。
  • 1.2 - 添加了所见即所得编辑器,以及一些小的修改。
  • 1.1.1 - 添加了基本的验证码。
  • 1.0.5 - composer.json 的修改。
  • 1.0 - 首次发布
  • 0.3 - 一些小的修改,packagist 设置。
  • 0.1 - 初始发布

联系方式: contact@binshops.com