我不知道你所说的“自定义循环”是什么意思(也许你使用的是自定义循环WP_Query
对象?)但在正常情况下(代码尚未测试),我会这样做:
Note: 我的初始解决方案使用add_rewrite_endpoint
该函数在分页工作方面被证明是无用的
function wt_rewrite_rule() {
add_rewrite_tag(\'%selfie%\', \'([^&]+)\');
add_rewrite_rule( \'author/([^/]+)/selfie/page/([0-9]+)/?$\', \'index.php?author_name=$matches[1]&selfie=1&paged=$matches[2]\', \'top\' );
add_rewrite_rule( \'author/([^/]+)/selfie/?$\', \'index.php?author_name=$matches[1]&selfie=1\', \'top\' );
}
add_action( \'init\', \'wt_rewrite_rule\' );
至于从循环中链接到作者页面,您只需构建如下URL:
$author_url = esc_url( get_author_posts_url( get_the_author_meta( \'ID\' ) ) ) . \'selfie/\';
您可以像这样检查var的存在:
global $wp_query;
if ( isset( $wp_query->query_vars[\'selfie\'] ) ) {
// Your custom code here
}
与使用不同
add_rewrite_endpoint
, 分页也应该有效。
我想说清楚,据我所知,你提到过这样一个页面链接:
http://localhost/author/ricky/selfie/page/2/
这行不通。上述解决方案旨在解决此问题并使其按预期工作。