inc2734 / wp-plugin-view-controller
1.1.1
2020-11-17 17:30 UTC
Requires
- php: >=5.6
Requires (Dev)
README
安装
$ composer require inc2734/wp-plugin-view-controller
如何使用
use Inc2734\WP_Plugin_View_Controller\Bootstrap;
$bootstrap = new Bootstrap(
[
'prefix' => 'prefix_',
'path' => __DIR__ . '/templates/',
]
);
$bootstrap->render( $slug, $name, $args );
过滤钩子
<prefix>view_args
/**
* @param array $args
* @var string $slug
* @var string $name
* @var array $vars
* @param array
*/
add_filter(
'<prefix>view_args',
function( $args ) {
return $args;
}
);
<prefix>view_render_definition
/**
* @param null|string $html
* @param string $slug
* @param string $name
* @param array $vars
* @return string
*/
add_filter(
'<prefix>view_render_definition',
function( $html, $slug, $name, $vars ) {
return 'YOUR HTML';
},
10,
4
);
<prefix>view_render
/**
* @param string $html
* @param string $slug
* @param string $name
* @param array $vars
* @return string
*/
add_filter(
'<prefix>view_render',
function( $html, $slug, $name, $vars ) {
return $html;
},
10,
4
);
动作钩子
<prefix>view_pre_render
/**
* @param array $args
* @var string $slug
* @var string $name
* @var array $vars
*/
add_action(
'<prefix>view_pre_render',
function( $args ) {
}
);
<prefix>view_post_render
/**
* @param array $args
* @var string $slug
* @var string $name
* @var array $vars
*/
add_action(
'<prefix>view_post_render',
function( $args ) {
}
);
<prefix>view_
/**
* @param string $name
* @param array $vars
*/
add_action(
'<prefix>view_<slug>',
function( $name, $vars ) {
?>
HTML
<?php
},
10,
2
);
<prefix>view_
/**
* @param array $vars
*/
add_action(
'<prefix>view_<slug>-<name>',
function( $vars ) {
?>
HTML
<?php
}
);
/**
* @param string $name
* @param array $vars
*/
add_action(
'<prefix>view_<slug>',
function( $name, $vars ) {
?>
HTML
<?php
},
10,
2
);
<prefix>view_
/**
* @param array $vars
*/
add_action(
'<prefix>view_<slug>-<name>',
function( $vars ) {
?>
HTML
<?php
}
);
/**
* @param array $vars
*/
add_action(
'<prefix>view_<slug>-<name>',
function( $vars ) {
?>
HTML
<?php
}
);