我有Wordpress自定義頁面的問題。我想展示具體類別的新聞。Wordpress query_posts
<?php
/**
* Template Name: Tutorials
*
* A custom page template without sidebar.
*
* The "Template Name:" bit above allows this to be selectable
* from a dropdown menu on the edit page screen.
*
* @package WordPress
* @subpackage Twenty_Ten
* @since Twenty Ten 1.0
*/
get_header("custom"); ?>
<div id="container">
<div id="content" role="main">
<?php query_posts("cat=4,5,6"); ?>
<?php
/* Run the loop to output the posts.
* If you want to overload this in a child theme then include a file
* called loop-index.php and that will be used instead.
*/
get_template_part('loop', 'index');
?>
</div><!-- #content -->
<?php if(function_exists('wp_pagenavi')) { wp_pagenavi(); } ?>
</div><!-- #container -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>
問題是自定義頁面沒有添加正確的文件(?)。它(例如)不要添加正確的「更多」的鏈接(它不像前面的頁面),不要使用CodeColorer(高亮代碼插件)等等。有什麼問題?如何解決它?我想讓新聞看起來像在首頁。
loop.php
<?php
/**
* The loop that displays posts.
*
* The loop displays the posts and the post content. See
* http://codex.wordpress.org/The_Loop to understand it and
* http://codex.wordpress.org/Template_Tags to understand
* the tags used in it.
*
* This can be overridden in child themes with loop.php or
* loop-template.php, where 'template' is the loop context
* requested by a template. For example, loop-index.php would
* be used if it exists and we ask for the loop with:
* <code>get_template_part('loop', 'index');</code>
*
* @package WordPress
* @subpackage Twenty_Ten
* @since Twenty Ten 1.0
*/
?>
<?php /* Display navigation to next/previous pages when applicable */ ?>
<?php if ($wp_query->max_num_pages > 1) : ?>
<div id="nav-above" class="navigation">
<div class="nav-previous"><?php next_posts_link(__('<span class="meta-nav">←</span> Older posts', 'twentyten')); ?></div>
<div class="nav-next"><?php previous_posts_link(__('Newer posts <span class="meta-nav">→</span>', 'twentyten')); ?></div>
</div><!-- #nav-above -->
<?php endif; ?>
<?php /* If there are no posts to display, such as an empty archive page */ ?>
<?php if (! have_posts()) : ?>
<div id="post-0" class="post error404 not-found">
<h1 class="entry-title"><?php _e('Not Found', 'twentyten'); ?></h1>
<div class="entry-content">
<p><?php _e('Apologies, but no results were found for the requested archive. Perhaps searching will help find a related post.', 'twentyten'); ?></p>
<?php get_search_form(); ?>
</div><!-- .entry-content -->
</div><!-- #post-0 -->
<?php endif; ?>
<?php
/* Start the Loop.
*
* In Twenty Ten we use the same loop in multiple contexts.
* It is broken into three main parts: when we're displaying
* posts that are in the gallery category, when we're displaying
* posts in the asides category, and finally all other posts.
*
* Additionally, we sometimes check for whether we are on an
* archive page, a search page, etc., allowing for small differences
* in the loop on each template without actually duplicating
* the rest of the loop that is shared.
*
* Without further ado, the loop:
*/ ?>
<?php while (have_posts()) : the_post(); ?>
<?php /* How to display posts of the Gallery format. The gallery category is the old way. */ ?>
<?php if ((function_exists('get_post_format') && 'gallery' == get_post_format($post->ID)) || in_category(_x('gallery', 'gallery category slug', 'twentyten'))) : ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<h2 class="entry-title"><a href="<?php the_permalink(); ?>" title="<?php printf(esc_attr__('Permalink to %s', 'twentyten'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a><span class="data"><?php twentyten_posted_on(); ?></span></h2>
<!--<div class="entry-meta">
<?php twentyten_posted_on(); ?>
</div>--><!-- .entry-meta -->
<div class="entry-content">
<?php if (post_password_required()) : ?>
<?php the_content(); ?>
<?php else : ?>
<?php
$images = get_children(array('post_parent' => $post->ID, 'post_type' => 'attachment', 'post_mime_type' => 'image', 'orderby' => 'menu_order', 'order' => 'ASC', 'numberposts' => 999));
if ($images) :
$total_images = count($images);
$image = array_shift($images);
$image_img_tag = wp_get_attachment_image($image->ID, 'thumbnail');
?>
<div class="gallery-thumb">
<a class="size-thumbnail" href="<?php the_permalink(); ?>"><?php echo $image_img_tag; ?></a>
</div><!-- .gallery-thumb -->
<p><em><?php printf(_n('This gallery contains <a %1$s>%2$s photo</a>.', 'This gallery contains <a %1$s>%2$s photos</a>.', $total_images, 'twentyten'),
'href="' . get_permalink() . '" title="' . sprintf(esc_attr__('Permalink to %s', 'twentyten'), the_title_attribute('echo=0')) . '" rel="bookmark"',
number_format_i18n($total_images)
); ?></em></p>
<?php endif; ?>
<?php the_excerpt(); ?>
<?php endif; ?>
</div><!-- .entry-content -->
<div class="entry-utility">
<?php if (function_exists('get_post_format') && 'gallery' == get_post_format($post->ID)) : ?>
<a href="<?php echo get_post_format_link('gallery'); ?>" title="<?php esc_attr_e('View Galleries', 'twentyten'); ?>"><?php _e('More Galleries', 'twentyten'); ?></a>
<span class="meta-sep">|</span>
<?php elseif (in_category(_x('gallery', 'gallery category slug', 'twentyten'))) : ?>
<a href="<?php echo get_term_link(_x('gallery', 'gallery category slug', 'twentyten'), 'category'); ?>" title="<?php esc_attr_e('View posts in the Gallery category', 'twentyten'); ?>"><?php _e('More Galleries', 'twentyten'); ?></a>
<span class="meta-sep">|</span>
<?php endif; ?>
<span class="comments-link"><?php comments_popup_link(__('Leave a comment', 'twentyten'), __('1 Comment', 'twentyten'), __('% Comments', 'twentyten')); ?></span>
<?php edit_post_link(__('Edit', 'twentyten'), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>'); ?>
</div><!-- .entry-utility -->
</div><!-- #post-## -->
<?php /* How to display posts of the Aside format. The asides category is the old way. */ ?>
<?php elseif ((function_exists('get_post_format') && 'aside' == get_post_format($post->ID)) || in_category(_x('asides', 'asides category slug', 'twentyten')) ) : ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<?php if (is_archive() || is_search()) : // Display excerpts for archives and search. ?>
<div class="entry-summary">
<?php the_excerpt(); ?>
</div><!-- .entry-summary -->
<?php else : ?>
<div class="entry-content">
<?php the_content(__('Continue reading <span class="meta-nav">→</span>', 'twentyten')); ?>
</div><!-- .entry-content -->
<?php endif; ?>
<div class="entry-utility">
<?php twentyten_posted_on(); ?>
<span class="meta-sep">|</span>
<span class="comments-link"><?php comments_popup_link(__('Komentarze', 'twentyten'), __('1 Komentarz', 'twentyten'), __('% Komentarze', 'twentyten')); ?></span>
<?php edit_post_link(__('Edit', 'twentyten'), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>'); ?>
</div><!-- .entry-utility -->
</div><!-- #post-## -->
<?php /* How to display all other posts. */ ?>
<?php else : ?>
<div id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<h2 class="entry-title"><a href="<?php the_permalink(); ?>" title="<?php printf(esc_attr__('Permalink to %s', 'twentyten'), the_title_attribute('echo=0')); ?>" rel="bookmark"><?php the_title(); ?></a><span class="data"><?php the_time(__('j')); ?><span class="miesiac"> <?php the_time(__('M')); ?></span></span></h2>
<?php
printf(__('<span class="meta-sep">by</span> %1$s', 'pongsari'),
sprintf('<span class="autor"><a class="url fn n" href="%1$s" title="%2$s">%3$s</a></span>',
get_author_posts_url(get_the_author_meta('ID')),
sprintf(esc_attr__('View all posts by %s', 'pongsari'), get_the_author()),
get_the_author()
)
);
?>
<!-- <div class="entry-meta">
<?php twentyten_posted_on(); ?>
</div>-->
<!-- .entry-meta -->
<?php if (is_archive() || is_search()) : // Only display excerpts for archives and search. ?>
<div class="entry-summary">
<?php the_excerpt(); ?>
</div><!-- .entry-summary -->
<?php else : ?>
<div class="entry-content">
<?php the_content(__('Continue reading <span class="meta-nav">→</span>', 'twentyten')); ?>
<?php wp_link_pages(array('before' => '<div class="page-link">' . __('Pages:', 'twentyten'), 'after' => '</div>')); ?>
</div><!-- .entry-content -->
<?php endif; ?>
<div class="entry-utility">
<?php if (count(get_the_category())) : ?>
<span class="cat-links">
<?php printf(__('<span class="%1$s">Kategoria</span> %2$s', 'twentyten'), 'entry-utility-prep entry-utility-prep-cat-links', get_the_category_list(', ')); ?>
</span>
<span class="meta-sep">|</span>
<?php endif; ?>
<?php
$tags_list = get_the_tag_list('', ', ');
if ($tags_list):
?>
<span class="tag-links">
<?php printf(__('<span class="%1$s">Tagged</span> %2$s', 'twentyten'), 'entry-utility-prep entry-utility-prep-tag-links', $tags_list); ?>
</span>
<span class="meta-sep">|</span>
<?php endif; ?>
<span class="comments-link"><?php comments_popup_link(__('Komentarze', 'twentyten'), __('1 Komentarz', 'twentyten'), __('% Komentarze', 'twentyten')); ?></span>
<?php edit_post_link(__('Edit', 'twentyten'), '<span class="meta-sep">|</span> <span class="edit-link">', '</span>'); ?>
</div><!-- .entry-utility -->
</div><!-- #post-## -->
<?php comments_template('', true); ?>
<?php endif; // This was the if statement that broke the loop into three parts based on categories. ?>
<?php endwhile; // End the loop. Whew. ?>
<?php /* Display navigation to next/previous pages when applicable */ ?>
<?php if ( $wp_query->max_num_pages > 1) : ?>
<div id="nav-below" class="navigation">
<div class="nav-previous"><?php next_posts_link(__('<span class="meta-nav">←</span> Older posts', 'twentyten')); ?></div>
<div class="nav-next"><?php previous_posts_link(__('Newer posts <span class="meta-nav">→</span>', 'twentyten')); ?></div>
</div><!-- #nav-below -->
<?php endif; ?>
我們需要loop-index.php的代碼來弄清楚。 – barakadam
這不起作用。你是那個應該有點? (。) – Amay
send loop-index.php – barakadam