我遇到问题,要在页面中显示搜索表单的结果。
我在header.php中有一个自定义搜索表单:
<form action="<?php echo site_url('/pagesearch/')?>" method="get" id="adminbarsearch">
<input type="search" id="place" name="mydata" />
<input type="submit" class="adminbar-button" value="Rechercher"/>*/?>
</form>
当用户提交表单时,我通过我的functions.php中的代码检索数据并对其进行修改:
if ((isset($_GET['mydata'])) && (!empty($_GET['mydata']))){
$q = sanitize_text_field($_GET['mydata']);
$search_posts_id = array();
$search_args = array(
's' => $q,
'fields' => array('ids', 'post_type'),
'post_type' => 'my_custom_posttype'
);
$search_query = new WP_Query($search_args);
if ( $search_query->have_posts() ) :
$search_posts_id = array_unique(wp_list_pluck( $search_query->posts, 'post_title', 'id' ));
$search_posts_id = implode( ',', $search_posts_id );
else :
$search_posts_id = implode( ',', $search_posts_id );
endif;
wp_reset_postdata();
echo $search_posts_id;
问题是我想在&#34; pagesearch&#34;中显示$search_posts_id
的结果。我网站的页面。
当我使用上面的代码时,它会显示在页面中,但是在页眉和页眉之前,而不是在页眉和页脚之间的内容中。
我不知道如何正确地将这些数据放入内容中。
非常感谢你的帮助!
答案 0 :(得分:0)
那是因为你正在回复你的functions.php文件 - 它在主题的标题和内容呈现之前运行,所以它只是在其他所有内容之前输出。
您需要采取不同的方法,例如可能在the_content()调用之前将此代码放在page.php(或您想要的任何模板)中,或者甚至可能创建自定义短代码以显示此内容无论你想要什么。
如果您可以提供更多信息,请详细说明您希望这些结果显示在哪里,我们可能会进一步提供帮助。祝你好运!