很难说在您的情况下如何准确地执行,因为我们不知道您的表单是如何生成的。。。但一般来说,您必须向该表单添加隐藏的输入。
因此,如果您使用searchform。在主题中添加php,然后向其中添加类似的内容:
<input type="hidden" name="name" value="<?php echo esc_attr( $_GET[\'name\'] ); ?>" />
如果没有searchform。主题中的php模板
get_search_form
函数,则必须使用如下过滤器:
function add_custom_name_to_search_form( $form ) {
$field = \'<input type="hidden" name="name" value="\'. esc_attr( $_GET[\'name\'] ) .\'" />\'
return str_replace( \'</form>\', $field . \'</form>\', $form );
}
add_filter( \'get_search_form\', \'add_custom_name_to_search_form\' );
但是。。。我的方法会有点不同。。。如果用户在URL中带有某个参数,而我想在他访问页面时使用该参数,我会将该值存储在cookie中。。。
function process_name_cookie() {
if ( isset($_GET[\'name\']) ) {
setcookie( \'myname\', $_GET[\'name\'], 0, \'/\' );
}
}
add_action( \'wp\', \'process_name_cookie\' );
然后您可以使用该cookie,这样就不必修改任何链接或表单。