Wordpress-related blade directives
Diff
src/Providers/KoseligServiceProvider.php | 3 ++-
src/Providers/WordpressTemplatingServiceProvider.php | 38 +++++++++++++++++++++-
2 files changed, 41 insertions(+)
@@ -24,6 +24,9 @@ class KoseligServiceProvider extends ServiceProvider
$this->app->register(WordpressServiceProvider::class);
$this->app->register(ConfigServiceProvider::class);
// Blade service provider
$this->app->register(WordpressTemplatingServiceProvider::class);
// Routing service provider
$this->app->register(RoutingServiceProvider::class);
@@ -0,0 +1,38 @@
<?php
namespace Koselig\Providers;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\ServiceProvider;
/**
* Provide various blade directives to aid in Wordpress view development.
*
* @author Jordan Doyle <jordan@doyle.wf>
*/
class WordpressTemplatingServiceProvider extends ServiceProvider
{
/**
* Perform post-registration booting of services.
*
* @return void
*/
public function boot()
{
Blade::directive('loop', function ($expression) {
return '<?php if (Koselig\Facades\Query::hasPosts()): while (Koselig\Facades\Query::hasPosts()): '
. 'Koselig\Facades\Query::post(); ?>';
});
Blade::directive('endloop', function ($expression) {
return '<?php endwhile; endif; ?>';
});
Blade::directive('wphead', function ($expression) {
return '<?php wp_head(); ?>';
});
Blade::directive('wpfooter', function ($expression) {
return '<?php wp_footer(); ?>';
});
}
}