unisharp / laravel-widgetify
帮助处理Laravel中的部分视图中的数据。
dev-master
2015-11-10 03:17 UTC
Requires
- php: >=5.5.0
- illuminate/support: >=5.0.0
This package is auto-updated.
Last update: 2024-09-15 15:02:57 UTC
README
- 帮助您将部分视图作为小部件获取
安装
-
安装包
composer require unisharp/laravel-widgetify
-
编辑config/app.php
服务提供者
Unisharp\Widget\WidgetServiceProvider::class,
类别名
'Widget' => Unisharp\Widget\WidgetFacade::class,
-
发布小部件模板类
php artisan vendor:publish --tag=widget_example
用法
Widget::set('side', 'widget-class-name', $args = []]); // set widgets with position Widget::get('side'); // get all widgets of a position
示例
-
在
App\Widgets\Block.php
中class Block implements WidgetInterface { public $view = 'home.widgets.side_html'; public function getData($args) { return ['html' => \App\Utility::getPageByAlias($args['alias'])]; } }
-
在
home.widgets.side_html.blade.php
中@if(!empty($html->content)) <section class="facebook-plugin"> {!! $html->content !!} </section> @endif
-
在控制器中设置小部件
\Widget::set('side', 'block', ['alias' => 'side_top_html']); \Widget::set('side', 'facebook'); \Widget::set('side', 'block', ['alias' => 'side_mid_html']); \Widget::set('side', 'subscription'); \Widget::set('side', 'block', ['alias' => 'side_buttom_html']);
-
在视图中显示小部件
{!! \Widget::get('side') !!}