WordPress跳转到带搜索查询的页面/#/?s=term输入框

3
我正在使用一个分页插件,允许用户在下方的输入框中输入页面编号以跳转到指定页面。

但是当使用搜索分页时,这种功能无法正常使用。例如,在使用输入(跳到页面)时URL的输出如下 -> /page/2/

期望URL的行为 -> /page/2/?s=term

我希望搜索查询词也包含在URL中。

以下是相关代码:

    global $wp_query;

    $big = 999999999; // need an unlikely integer

    echo paginate_links( array(
        'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big 
) ) ),
        'format' => '?paged=%#%',
        'current' => max( 1, get_query_var('paged') ),
        'total' => $wp_query->max_num_pages
    ) ); ?>

    <form class="wpsp-page-nav-form" action="<?php echo  
     $_SERVER['REQUEST_URI'];?>" method="get">
        <label for="sortby" class="wpsp-label wpsp-hidden"><?php _e('Go to',  
         'wp-smart-pagination'); ?></label>
          <input class="wpsp-input-number" type="text" placeholder="Jump to" 
          size="6" name="paged" />
        <input class="wpsp-button" value="Go" type="submit" > 
    </form>

我注意到WordPress管理界面使用了与页面导航几乎完全相同的东西:
$html_current_page = sprintf( "%s<input class='current-page' id='current-
page-selector' type='text' name='paged' value='%s' size='%d' aria-
describedby='table-paging' /><span class='tablenav-paging-text'>",
        '<label for="current-page-selector" class="screen-reader-text">' . 
 __( 'Current Page' ) . '</label>',
        $current,
        strlen( $total_pages )
    );

资源: https://developer.wordpress.org/reference/classes/wp_list_table/pagination/

我曾尝试将其纳入我的代码,但没有成功。如何在跳转到页面输入时传递查询条件?任何帮助都将不胜感激,谢谢。

1个回答

2

我想到了一个办法,通过表单传递一个隐藏的输入框来搜索查询内容:

<input type="hidden" id="s" name="s" value="<?php echo get_search_query(); ?>" 
/>

虽然不是我想要的方式:?s=sea&page=2,但已经足够好了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接