Description
Blade is the template engine for Laravel, a very popular php framework, developed by Taylor Otwell. This plugin brings the same template engine to wordpress.
Using a template engine will result in much cleaner template files and quicker development. Normal php can still be used in the template files.
The plugin also adds a wordpress specific snippet to blade. Check out the examples for more info.
echo/print
{{$foo}}
Turns into…
if()
@if(has_post_thumbnail())
{{the_post_thumbnail() }}
@else
<img src="{{bloginfo( 'template_url' )}}/images/thumbnail-default.jpg" />
@endif
Turns into…
<img src="/images/thumbnail-default.jpg » />
the loop
@wpposts
<a href="{{the_permalink()}}">{{the_title()}}</a><br>
@wpempty
<p>404</p>
@wpend
Turns into…
<a href=" »>
404
wordpress query
<ul>
@wpquery(array('post_type' => 'post'))
<li><a href="{{the_permalink()}}">{{the_title()}}</a></li>
@wpempty
<li>{{ __('Sorry, no posts matched your criteria.') }}</li>
@wpend
</ul>
Turns into….
-
‘post’) ); ?>
- <a href=" »>
have_posts() ) : ?>
have_posts() ) : $query->the_post(); ?>
Personnalisation avancée de champ
<ul>
@acfrepeater('images')
<li>{{ get_sub_field( 'image' ) }}</li>
@acfend
</ul>
Turns into…
- <img src=" » />
Including other templates
To include a file with blade use:
@include(‘header’)
Note that you should not type “.php”. Files included with functions, e.g. the_header(), will not be compiled by Blade, however the php code in the file is still executed.
Mises en page
master.php:
@yield(‘content’)
page.php:
@layout(‘master’)
@section('content')
<p>Lorem ipsum</p>
@endsection
See the Blade documentation for more info.
Contribute on github: github.com/MikaelMattsson/blade
Installation
- Upload folder
blade
to the/wp-content/plugins/
directory - Activez-la via le menu Extensions dans l’admin WordPress
- Make sure that
/wp-content/plugins/blade/storage/views/
is writable by php - Done! You can now use Blade in your theme
Plus d’options
It is recommended thay you change the path to the location where the compiled views are stored to within your theme. This will fix problems with wpml. To do so, put the following code in your theme folder and create the folder/directory “bladecache” in your theme folder.
if(function_exists(‘blade_set_storage_path’)){
blade_set_storage_path(get_template_directory().’/bladecache’);
}
Avis
Contributeurs/contributrices & développeurs/développeuses
« Blade » est un logiciel libre. Les personnes suivantes ont contribué à cette extension.
ContributeursTraduisez « Blade » dans votre langue.
Le développement vous intéresse ?
Parcourir le code, consulter le SVN dépôt, ou s’inscrire au journal de développement par RSS.
Journal
0.3.7
- Added support for BuddyPress
0.3.6
- Fixed bug with incorrectly appending to unitialized variable. (perholmang)
- Fixed issues when using multiple @section. (perholmang)
0.3.5
- Added support for child/parent-themes (perholmang)
0.3.4
- Added acf repeater (jaggyspaghetti)
0.3.3
- Compatibility update for PHP 5.5 (relu)
0.3.2
- Added @wpposts (mykebates)
0.3.1
- Changed the structure of all files. (PabloVallejo)
0.2.0
- The view templates are now loaded differently.
- Better errorhandling.
- Added possibility to change the storage path.
0.1.1
- Added a fix for plugins that import the template file directly using the template path fetched using get_query_template() like WP e-Commerce;
0.1.0
- initial (beta)