Functions Filter Question

时间:2016-10-30 作者:RodneyHawk

他为什么不输入“$美嫩根”?

    add_filter(\'wpseo_set_title\', \'wpseo_set_title_callback\');
$meinungen = Test;
function wpseo_set_title_callback($input) {
    if (is_single()) {
        return \'\'. $meinungen . \'\'. $input . \' \'. $input . \'\';
    }
    // return default
    return $input;
}

1 个回复
最合适的回答,由SO网友:Kanon Chowdhury 整理而成

这是针对变量范围的。

A variable declared within a function has a LOCAL SCOPE and can only be accessed within that function

A variable declared outside a function has a GLOBAL SCOPE and can only be accessed outside a function:

$meinungen = Test; // is in global scope
function wpseo_set_title_callback($input) {
if (is_single()) {
    return \'\'. $meinungen . \'\'. $input . \' \'. $input . \'\'; // now $meinungen local variable which you don not assign value.
}
// return default
return $input; }
要调用值,只需在函数中使用put global

function wpseo_set_title_callback($input) {
if (is_single()) {
   global $meinungen;
    return \'\'. $meinungen . \'\'. $input . \' \'. $input . \'\';
}
// return default
return $input;
}