该插件尚未通过WordPress的最新3个主要版本进行测试。 当与较新版本的WordPress一起使用时,可能不再受到维护或支持,并且可能会存在兼容性问题。

Blade

描述

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’) ); ?>
    have_posts() ) : ?>
    have_posts() ) : $query->the_post(); ?>

  • <a href="”>

Advanced Custom Fields

<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.

Layouts

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

安装

  1. Upload folder blade to the /wp-content/plugins/ directory
  2. 通过WordPress的“插件”菜单激活插件
  3. Make sure that /wp-content/plugins/blade/storage/views/ is writable by php
  4. Done! You can now use Blade in your theme

更多选项

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’);
}

评价

2018年12月1日
I've used this plugin for a large amount of websites, unfortunately it seems it's not being updated and I got an error in PHP 7.2. 4 Stars for making my develop life much easier, could had 5 stars if there was an regular update of the plugin. I'm now making a switch to Timber (Twig)
阅读所有7条评价

贡献者及开发者

“Blade” 是开源软件。 以下人员对此插件做出了贡献。

贡献者

将“Blade”翻译成您的语言。

对开发感兴趣吗?

您可以浏览代码,查看SVN仓库,或通过RSS订阅开发日志

更新日志

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)