widgets设置,voyager.php下找到'widgets':
'widgets' => [
'TCG\\Voyager\\Widgets\\UserDimmer',
'TCG\\Voyager\\Widgets\\PostDimmer',
],
效果如下:
根据命名空间查找:vendor/tcg/voyager/src/Widgets,下面我们进行自定义
在voyager.php添加 'App\Widgets\Products':
'widgets' => [
'TCG\\Voyager\\Widgets\\UserDimmer',
'TCG\\Voyager\\Widgets\\PostDimmer',
'App\\Widgets\\Products',
],
在app目录下创建Widgets文件夹,创建Products.php
<?php
namespace App\Widgets;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Str;
use TCG\Voyager\Facades\Voyager;
use Arrilot\Widgets\AbstractWidget;
class Products extends AbstractWidget
{
/**
* The configuration array.
*
* @var array
*/
protected $config = [];
/**
* Treat this method as a controller action.
* Return view() or other content to display.
*/
public function run()
{
$count = \App\Product::count();
$string = 'Products';
return view('voyager::dimmer', array_merge($this->config, [
'icon' => 'voyager-bag',
'title' => "{$count} {$string}",
'text' => __('voyager::dimmer.post_text', ['count' => $count, 'string' => Str::lower($string)]),
'button' => [
'text' => 'Products',
'link' => route('voyager.products.index'),
],
'image' => voyager_asset('images/widget-backgrounds/02.jpg'),
]));
}
/**
* Determine if the widget should be displayed.
*
* @return bool
*/
public function shouldBeDisplayed()
{
return Auth::user()->can('browse', Voyager::model('Post'));
}
}
最后一个是我们添加的:
修改背景图片:
上unsplush网站,找到一张合适的图片,然后修改image:
'image' =>'images/products-dimmer.jpg',
显示效果如下: