Wordpress 自定义帖子类型过滤、排序和搜索

Wordpress 自定义帖子类型过滤、排序和搜索,wordpress,filter,custom-post-type,Wordpress,Filter,Custom Post Type,我使用自定义帖子类型在页面上显示一些信息 是否有办法向数据添加过滤、排序和搜索功能 我已设法使分页“domain.com/page/2”正常工作 我使用jquerydatatable()添加排序、分页和搜索,但是当您在1000多条记录上使用DataTable时,它会变得非常缓慢,有时会显示关于内存不足的php错误。 这一直是一个临时解决方案,直到我找到了一种使用Wordpress正确完成这项工作的方法。您提到了一个jQuery工具来对数据进行排序,但对于来自数据库的数据来说,这不是一个好主意。

我使用自定义帖子类型在页面上显示一些信息

是否有办法向数据添加过滤、排序和搜索功能

我已设法使分页“domain.com/page/2”正常工作

我使用jquerydatatable()添加排序、分页和搜索,但是当您在1000多条记录上使用DataTable时,它会变得非常缓慢,有时会显示关于内存不足的php错误。
这一直是一个临时解决方案,直到我找到了一种使用Wordpress正确完成这项工作的方法。您提到了一个jQuery工具来对数据进行排序,但对于来自数据库的数据来说,这不是一个好主意。jQuery排序工具的目的是使表更具可读性,并帮助用户处理页面上已经显示的数据。有了数据库,我们的想法更多的是只获取所需的数据,而不是获取页面中的所有内容,然后对元素进行排序或过滤以将其移出视图(但仍在页面中,这意味着它更重、下载时间更长、处理难度更大等等)。 您已经成功地实现了自定义帖子类型的分页,所以这很好。现在只需包含一个搜索表单。默认的WordPress searchform(searchform.php)如下所示:

            <form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>">
                <div><label class="screen-reader-text" for="s">Search for:</label>
                    <input type="text" value="" name="s" id="s" />
                    <input type="submit" id="searchsubmit" value="Search" />
                </div>
            </form>
            <form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>">
                <div><label class="screen-reader-text" for="s">Search for:</label>
                    <input type="text" value="" name="s" id="s" />
                    <input type="submit" id="searchsubmit" value="Search" />
                    <input type="hidden" name="post_type" value="name_of_your_post_type" />
                </div>
            </form>

谢谢barakadam,我还没有尝试过搜索,但我能找到order和orderby

我使用$\u GET获取order和orderby的值,并将这些变量传入

                    <input type="hidden" name="post_type" value="name_of_your_post_type" />
            <form role="search" method="get" id="searchform" action="<?php echo home_url( '/' ); ?>">
                <div><label class="screen-reader-text" for="s">Search for:</label>
                    <input type="text" value="" name="s" id="s" />
                    <input type="submit" id="searchsubmit" value="Search" />
                    <input type="hidden" name="post_type" value="name_of_your_post_type" />
                </div>
            </form>