在连接的字符串变量上使用ADD_FILTER

时间:2018-08-16 作者:Scott Paterson

我有一个HTML表,我是这样连接的:

$admin_table_output .= "Item Description: </td><td>";
$admin_table_output .= "<input type=\'text\' name=\'name\' value=\'$name\'></td><td> (Optional)</td></tr><tr><td colspan=\'4\'>";
$admin\\u table\\u输出在末尾回显。这很好用。

我的问题是,我想使用apply\\u过滤器修改变量$admin\\u table\\u输出,如下所示:

$admin_table_output .= "Item Description: </td><td>";

apply_filters(\'tabs_page_static_value\',$admin_table_output);

$admin_table_output .= "<input type=\'text\' name=\'name\' value=\'$name\'></td><td> (Optional)</td></tr><tr><td colspan=\'4\'>";
使用如下挂钩:

function tabs_page_static_value_filter($admin_table_output) {

     $admin_table_output .= \'testing\';

     return $admin_table_output;

}
add_filter(\'tabs_page_static_value\',\'tabs_page_static_value_filter\',10,1);
但是,这不起作用。我还尝试使用do\\u操作,我尝试回显变量而不是返回它,并且在钩子内不连接。

我想我可能需要做一些可变的事情来解决这个问题。有什么想法吗?

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

正如@Sally在评论中提到的那样。如果你想让别人来扩展HTML代码。您还应该将它们返回的新HTML附加到过滤器中。

尝试下面的代码

$admin_table_output .= "Item Description: </td><td>";

$admin_table_output = apply_filters(\'tabs_page_static_value\',$admin_table_output);

$admin_table_output .= "<input type=\'text\' name=\'name\' value=\'$name\'></td><td> (Optional)</td></tr><tr><td colspan=\'4\'>";

结束