首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WP自定义post类型分页/404错误

问WP自定义post类型分页/404错误
EN

Stack Overflow用户
提问于 2012-02-03 06:53:50
回答 1查看 1.9K关注 0票数 1

我在WordPress中使用了一个自定义的post类型(称为"ns_news_article“,由Magic Field生成),它已经注册并且正在运行。这会重写URL,在域名后面添加“类别/新闻”(so: www.mydomain.com/category/news/custom-post-1).我得把“假目录”放进去。

我在functions.php中有以下内容:

代码语言:javascript
复制
add_rewrite_rule("[ns_news_article]" . '$', "index.php?pagename=[ns_news_article]", "top");
add_rewrite_rule("[ns_news_article]" . '/page/([0-9])*/?', "index.php?pagename=[ns_news_article]" . '&paged=$matches[1]', "top"); 
global $wp_rewrite;
$wp_rewrite->flush_rules();

第二行解决了作为多页列表查看时的分页404问题,但在尝试查看单个帖子时给出了404错误。如果我去掉它,你可以查看帖子,但是分页不起作用。

我能解决这个问题吗?还是应该用另一种方法来解决?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-03 18:22:46

我最近做了自定义post类型的分页,所以这就是我所做的。假设你的自定义帖子类型叫做"customp“。

  1. 在您的主题中创建一个名为page-customp.php的文件。然后发布一个标题为"Customp“的空页。现在,当您访问www.yourdomain.com/customp时,您将看到一个使用page-customp.php作为模板的页面。现在,我们将使用此页面来显示自定义帖子,并在your page-customp.php文件中使用pagination.
  2. Place编写以下代码:

$paged = 1;$postsPerPage = 5;if ( get_query_var('page') ) $paged = get_query_var('page');if (get_query_var(‘page’)) $paged =get_query_var(‘page’);query_posts( '&post_type=customp&paged=‘)。$paged。'&posts_per_page='.$postsPerPage );while ( have_posts() ):the_post();the_title();echo get_the_excerpt();endwhile;customp_paginate();

  • In您的functions.php文件放置如下:

函数customp_paginate() {全局查询,$wp_rewrite;$wp_ $wp_query ->query_vars‘分页’>1?$current =$wp_query->query_vars‘分页’:$current = 1;$pagination = => (‘基本’页面查询(‘@add_query_arg’,'%#%'),'format‘=> '',’=>‘=> $wp_query->max_num_pages,'current’=> $current,'show_all‘=> true,’=> 'list','prev_text‘=> '«','next_text’=> '»',);如果($wp_rewrite->using_permalinks()) $pagination‘’base‘= user_trailingslashit(trailingslashit(remove_query_arg('s',get_pagenum_link(1)。‘Pages/%#%/’,'paged');if (!empty($wp_query) && $pagination‘’total‘!= 1) {$pagination’‘add_args’= array('s‘=> get_query_var('s'));echo "Pages:“。paginate_links($pagination)。"";} }

我希望它能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9121234

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档