我不知道你为什么想通过ID进行查询,但这说明这是有可能的(我喜欢这种方法,因为它很简单)。
add_action( \'parse_request\', \'idsearch\' );
function idsearch( $wp ) {
global $pagenow;
// If it\'s not the post listing return
if( \'edit.php\' != $pagenow )
return;
// If it\'s not a search return
if( !isset( $wp->query_vars[\'s\'] ) )
return;
// If it\'s a search but there\'s no prefix, return
if( \'#\' != substr( $wp->query_vars[\'s\'], 0, 1 ) )
return;
// Validate the numeric value
$id = absint( substr( $wp->query_vars[\'s\'], 1 ) );
if( !$id )
return; // Return if no ID, absint returns 0 for invalid values
// If we reach here, all criteria is fulfilled, unset search and select by ID instead
unset( $wp->query_vars[\'s\'] );
$wp->query_vars[\'p\'] = $id;
}
然后,您所要做的就是使用常规搜索框使用
#
(哈希)数字ID前面的前缀。
#123
。。将返回ID为123的帖子。
我确信有更复杂的途径可以做到这一点,但我认为这种方法没有任何问题,除非你有很多帖子的标题都是以哈希开头的(但你总是可以将哈希换成另一个字符)。
希望有帮助。:)