在Wordpress中定义了特定post_type的帖子中的页面导航在Wordpress中不起作用 [英] Page Navigation Within a Post with Specific post_type defined not working in Wordpress

查看:92
本文介绍了在Wordpress中定义了特定post_type的帖子中的页面导航在Wordpress中不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

http://lakers.sonikastudios.com/gallery/sample- gallery-post-1/

该帖子有几页使用Wordpress的 快速标签.这篇文章也是一个自定义的post_type ..在主题模板中的functions.php中使用以下代码.

That post has several pages using the quicktag of Wordpress. This post is also is a custom post_type.. using the following code in the functions.php in the theme template.

add_action( 'init', 'create_post_type' );
    function create_post_type() {
        register_post_type( 'gallery',
            array(
                'labels' => array(
                'name' => __( 'Galleries' ),
                'singular_name' => __( 'Gallery' )
            ),
            'public' => true,
            'supports' => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields', 'comments')
            )
        );

使用此代码,我设法在admin部分中出现了一个自定义帖子类型.我在此处添加了一篇新文章,并附有鳍状肢.

With this code, I managed to get a custom post type appearing in the admin section just fine. I added a new article there, with the page flippers..

因此,使用wp_link_pages()函数,我可以使用页面翻转功能.但它仅适用于类别下的常规帖子,不适用于定义为"gallery" post_type的帖子.例如,此页面 http: //lakers.sonikastudios.com/editorials/catching-the-buss-to-the-hall-of-fame/3/与帖子中的分页效果很好.

So using the wp_link_pages() function, I got the page flipping functions working. But it only works on regular posts under the categories, but not for the posts that are defined as the 'gallery' post_type. For example, this page http://lakers.sonikastudios.com/editorials/catching-the-buss-to-the-hall-of-fame/3/ works just fine with the pagination within the post.

我没有使用任何会影响后期显示方法或导航的插件,而且我也没有弄乱.htaccess文件-WordPress所写的就是我所到之处.

I'm not using any plugins that affect the post display method or navigation, and I did not mess with the .htaccess file - whatever Wordpress wrote is what I got there.

任何帮助都将是非常有用的..该站点几乎已经准备就绪,我们遇到了这个瓶颈,它正在杀死我!

Any help would be great.. the site's almost ready and we hit this bottleneck and it's killing me!

我使用的是最新版本的Wordpress,我以Whiteboard主题(为WP3制作的新主题)开始开发. ]

I'm using the latest version of Wordpress, and I started development with the Whiteboard theme (the new one made for WP3). ]

已更新: gallery.php(通过页面"模块分配以显示post_type相册"-我确认这是加载画廊post_type帖子时要加载的文件)

UPDATED: gallery.php (assigned via the Page module to display the post_type "gallery" - I confirmed that this is the file that loads when I load a gallery post_type post)

<?php
/*
Template Name: Gallery
*/
?>

<?php get_header();

$exclude = array();

?>
<div class="grid_11" id="mainbar">



    <?php if ( have_posts() ) while ( have_posts() ) : the_post();

    $exclude[]=get_the_ID();
    ?>
            <div id="post-<?php the_ID(); ?>" <?php post_class('grid_11 alpha omega'); ?>>
                <h2><a href="<? the_permalink(); ?>" title="<? the_title();?>"><? the_title();?></a></h2>
                <div class="social_media_balloons">
                <?
                if (function_exists('fbshare_manual')) echo fbshare_manual();
                ?>
                <?
                if (function_exists('tweetmeme')) echo tweetmeme();
                ?>
                </div>
                    <?
                    $author_gravatar = get_gravatar(get_the_author_meta('user_email'));
                    ?>
                    <img src="<? echo $author_gravatar;?>" class="alignleft" />
            <?
            echo posted_by_and_category();

            ?>

                    <div class="grid_11 alpha omega">

                        <?php the_content(); ?>
                        <div id="single_article_selectors">

                        <?php wp_link_pages('before=<div class="single_article_selector">&after=</div>'); ?>
                        <?php wp_link_pages('before=<div class="single_article_selector">&after=</div>&next_or_number=next'); ?>

                        </div>

                        <div class="grid_11 alpha omega" id="social_media_links">
                        <div class="grid_5 alpha">
                            <p><a href="http://www.twitter.com/LakersNation" target="_blank"><img src="/images/twittericon.jpg" alt="Twitter" width="32" height="32" class="alignleft">Follow Lakers Nation </a></p>
                            <p><a href="http://feeds.feedburner.com/LakersNation" target="_blank"><img src="/images/rssicon.jpg" alt="Twitter" width="32" height="32" class="alignleft">Subscribe to Lakers Nation</a></p>
                        </div>
                        <div class="grid_5 omega">
                            <p><a href="http://www.facebook.com/lakersnation" target="_blank"><img src="/images/fbicon.jpg" alt="Twitter" width="32" class="alignleft">Become a Fan on Facebook</a></p>
                            <p><a href="http://itunes.apple.com/us/app/app-of-l-nation/id349346678?mt=8" target="_blank"><img src="/images/iphoneicon.png" alt="Twitter" width="32" height="32" class="alignleft">Download our Free iPhone App</a></p>
                        </div>
                    </div>


                        <div class="shadow_divider"></div>
                    </div><!--#post-content-->

                    <!-- If a user fills out their bio info, it's included here -->
                    <div id="post-author" class="grid_11 alpha omega">
                        <h3>Written by <?php the_author_posts_link() ?></h3>
                        <div id="author-gravatar">
                            <!-- This avatar is the user's gravatar (http://gravatar.com) based on their administrative email address -->
                            <?php echo get_avatar( $curauth->user_email, $default = '<path_to_url>' ); ?>
                        </div><!--#author-gravatar -->
                        <div id="authorDescription">
                            <?php the_author_meta('description') ?> 
                            <div id="author-link">
                                <p>View all posts by: <?php the_author_posts_link() ?></p>

                            </div><!--#author-link-->
                        </div><!--#author-description -->
                    </div><!--#post-author-->

                </div><!-- #post-## -->

                <div class="grid_11 alpha omega next_prev_links">
                    <div class="grid_3 alpha">
                        <p>
                            <?php previous_post_link('%link', '&laquo; Previous post') ?>
                        </p>
                    </div><!--.older-->
                    <div class="grid_3 omega" style="float:right; text-align:right;">
                        <p>
                            <?php next_post_link('%link', 'Next Post &raquo;') ?>
                        </p>
                    </div><!--.older-->
                </div><!--.newer-older-->

                <?php comments_template( '', true ); ?>

    <?php endwhile; ?><!--end loop-->
</div><!--#content-->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

single.php(默认情况下为常规帖子显示模板.)

single.php (regular post display template by default..)

<?php get_header();

$dirpath = str_replace(get_bloginfo('url'), '',get_bloginfo('template_directory'));
?>
<div class="grid_11" id="mainbar">



    <?php if ( have_posts() ) while ( have_posts() ) : the_post();

    $exclude[]=get_the_ID();
    ?>

            <div id="post-<?php the_ID(); ?>" <?php post_class('grid_11 alpha omega'); ?>>

            <?
            echo posted_by_single();
            ?>
            <div class="grid_11 alpha omega">
                <div id="single_post_title">
                <h1><a href="<? the_permalink(); ?>" title="<? the_title();?>"><? the_title();?></a></h1>

                </div>
                <div class="social_media_balloons">
                <?
                if (function_exists('fbshare_manual')) echo fbshare_manual();
                ?>
                <?
                if (function_exists('tweetmeme')) echo tweetmeme();
                ?>
                </div>

                <div class="grid_11 alpha omega">

                    <?php the_content(); ?>
                    <div id="single_article_selectors">

                    <?php wp_link_pages('before=<div class="single_article_selector">&after=</div>'); ?>
                    <?php wp_link_pages('before=<div class="single_article_selector">&after=</div>&next_or_number=next'); ?>

                    </div>

                    <div class="grid_11 alpha omega" id="social_media_links">
                        <div class="grid_5 alpha">
                            <p><a href="http://www.twitter.com/LakersNation" target="_blank"><img src="/images/twittericon.jpg" alt="Twitter" width="32" height="32" class="alignleft">Follow Lakers Nation </a></p>
                            <p><a href="http://feeds.feedburner.com/LakersNation" target="_blank"><img src="/images/rssicon.jpg" alt="Twitter" width="32" height="32" class="alignleft">Subscribe to Lakers Nation</a></p>
                        </div>
                        <div class="grid_5 omega">
                            <p><a href="http://www.facebook.com/lakersnation" target="_blank"><img src="/images/fbicon.jpg" alt="Twitter" width="32" class="alignleft">Become a Fan on Facebook</a></p>
                            <p><a href="http://itunes.apple.com/us/app/app-of-l-nation/id349346678?mt=8" target="_blank"><img src="/images/iphoneicon.png" alt="Twitter" width="32" height="32" class="alignleft">Download our Free iPhone App</a></p>
                        </div>
                    </div>

                    <div class="shadow_divider"></div>
                </div><!--#post-content-->


            </div><!-- #post-## -->



                <div class="grid_11 alpha omega next_prev_links">
                    <div class="grid_3 alpha">
                        <p>
                            <?php previous_post_link('%link', '&laquo; Previous post') ?>
                        </p>
                    </div><!--.older-->
                    <div class="grid_3 omega" style="float:right; text-align:right;">
                        <p>
                            <?php next_post_link('%link', 'Next Post &raquo;') ?>
                        </p>
                    </div><!--.older-->
                </div><!--.newer-older-->
            <div class="grid_11 alpha omega" id="comments_container">
            <?php comments_template( '', true ); ?>
            </div>
        </div>
    <?php endwhile; ?><!--end loop-->
</div><!--#mainbar-->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

推荐答案

您遇到的问题是自定义帖子类型的分页.在WordPress.org上有一个好线程,并附有一些示例和解决方案,以使其正常运行.

The issue your having is pagination with custom post type. There is a good thread on WordPress.org with some examples and solutions used to get it working.

StackOverflow上已经回答了类似的问题

请参阅:自定义帖子类型分页测试

要创建测试,我采取了以下步骤:

To create the test I took the following steps:

  1. 从主题主页上下载并安装了白板主题

  1. Uploaded and installed the Whiteboard theme from the themes home page

添加了提供给functions.php的示例代码以创建帖子类型

Added the sample code provided to functions.php to create the post type

复制提供的代码图库模板",并将其重命名为single-gallery.php

Copied the code provided "Gallery Template" and renamed it single-gallery.php

(模板层次结构在显示单个帖子类型页面时先查找single-PostType.php,然后查找single.php)

(Template hierarchy looks for single-PostType.php then single.php when displaying a single post type page)

  1. 通过单击添加新画廊

  1. Created a new gallery by clicking gallery add new

使用添加媒体插入4张图像

Inserted 4 images using add media

在每个图像之间插入<!--nextpage-->

已保存的帖子和更新的永久链接

Saved post and updated permalinks

测试环境

  • WordPress版本:3.0.1
  • PHP版本:5.2.13
  • 主题:白板
  • 永久链接:/%year%/%monthnum%/%postname%/

这篇关于在Wordpress中定义了特定post_type的帖子中的页面导航在Wordpress中不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆