你必须朝相反的方向思考:不要pull 模板中的变量,push 让他们参与进来。模板应该尽可能简单,不应该知道代码其余部分的任何内容,例如函数名。
换句话说:使用挂钩。
在模板中:
// the numbers are just context examples
do_action( \'something\', \'one\' );
do_action( \'something\', \'two\' );
do_action( \'something\', \'three\' );
在您的
functions.php
, 向该操作添加回调:
// 1, 2, 3 are your variables
add_action( \'something\', function( $context ) {
switch ( $context )
{
case \'one\':
echo 1;
break;
case \'two\':
echo 2;
break;
case \'three\':
echo 3;
break;
default:
echo \'Context parameter is wrong!\';
}
});
当然,您还可以在回调处理程序中回显多行并执行一些更复杂的操作。