Basic theme support for tags.
git-svn-id: http://svn.automattic.com/wordpress/trunk@5111 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
613dbfcffa
commit
cbe226d621
|
@ -8,7 +8,7 @@ get_header();
|
||||||
|
|
||||||
<div class="post" id="post-<?php the_ID(); ?>">
|
<div class="post" id="post-<?php the_ID(); ?>">
|
||||||
<h3 class="storytitle"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h3>
|
<h3 class="storytitle"><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a></h3>
|
||||||
<div class="meta"><?php _e("Filed under:"); ?> <?php the_category(',') ?> — <?php the_author() ?> @ <?php the_time() ?> <?php edit_post_link(__('Edit This')); ?></div>
|
<div class="meta"><?php _e("Filed under:"); ?> <?php the_category(',') ?> — <?php the_tags('Tags: ', ', ', ' — '); ?> <?php the_author() ?> @ <?php the_time() ?> <?php edit_post_link(__('Edit This')); ?></div>
|
||||||
|
|
||||||
<div class="storycontent">
|
<div class="storycontent">
|
||||||
<?php the_content(__('(more...)')); ?>
|
<?php the_content(__('(more...)')); ?>
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
<?php the_content('Read the rest of this entry »'); ?>
|
<?php the_content('Read the rest of this entry »'); ?>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="postmetadata">Posted in <?php the_category(', ') ?> | <?php edit_post_link('Edit', '', ' | '); ?> <?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?></p>
|
<p class="postmetadata"><?php the_tags('Tags: ', ', ', '<br />'); ?> Posted in <?php the_category(', ') ?> | <?php edit_post_link('Edit', '', ' | '); ?> <?php comments_popup_link('No Comments »', '1 Comment »', '% Comments »'); ?></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<?php endwhile; ?>
|
<?php endwhile; ?>
|
||||||
|
|
|
@ -160,6 +160,42 @@ function the_category($separator = '', $parents='') {
|
||||||
echo get_the_category_list($separator, $parents);
|
echo get_the_category_list($separator, $parents);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function get_post_tags( $post_id = 0 ) {
|
||||||
|
global $tag_cache, $blog_id;
|
||||||
|
|
||||||
|
$post_id = (int) $post_id;
|
||||||
|
|
||||||
|
if ( !isset( $tag_cache[$blog_id][$post_id] ) )
|
||||||
|
update_post_category_cache( $post_id ); // loads $tag_cache
|
||||||
|
|
||||||
|
return $tag_cache[$blog_id][$post_id];
|
||||||
|
}
|
||||||
|
|
||||||
|
function get_the_tags( $before, $sep, $after ) {
|
||||||
|
global $post;
|
||||||
|
if ( !$post )
|
||||||
|
return false; // in-the-loop function
|
||||||
|
|
||||||
|
$tags = get_post_tags( $post->ID );
|
||||||
|
if ( empty( $tags ) )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
$return = $before;
|
||||||
|
foreach ( $tags as $tag )
|
||||||
|
$tag_links[] = '<a href="' . get_category_link($tag->cat_ID) . '">' . $tag->cat_name . '</a>';
|
||||||
|
|
||||||
|
$tag_links = join( $sep, $tag_links );
|
||||||
|
$tag_links = apply_filters( 'the_tags', $tag_links );
|
||||||
|
$return .= $tag_links;
|
||||||
|
|
||||||
|
$return .= $after;
|
||||||
|
return $return;
|
||||||
|
}
|
||||||
|
|
||||||
|
function the_tags( $before = 'Tags: ', $sep = ', ', $after = '' ) {
|
||||||
|
echo get_the_tags( $before, $sep, $after );
|
||||||
|
}
|
||||||
|
|
||||||
function category_description($category = 0) {
|
function category_description($category = 0) {
|
||||||
global $cat;
|
global $cat;
|
||||||
if ( !$category )
|
if ( !$category )
|
||||||
|
|
|
@ -635,7 +635,7 @@ function clean_page_cache($id) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function update_post_category_cache($post_ids) {
|
function update_post_category_cache($post_ids) {
|
||||||
global $wpdb, $category_cache, $blog_id;
|
global $wpdb, $category_cache, $tag_cache, $blog_id;
|
||||||
|
|
||||||
if ( empty($post_ids) )
|
if ( empty($post_ids) )
|
||||||
return;
|
return;
|
||||||
|
@ -656,13 +656,17 @@ function update_post_category_cache($post_ids) {
|
||||||
return;
|
return;
|
||||||
$post_id_list = join( ',', $post_id_array ); // with already cached stuff removed
|
$post_id_list = join( ',', $post_id_array ); // with already cached stuff removed
|
||||||
|
|
||||||
$dogs = $wpdb->get_results("SELECT post_id, category_id FROM $wpdb->post2cat WHERE post_id IN ($post_id_list)");
|
$dogs = $wpdb->get_results("SELECT post_id, category_id, rel_type FROM $wpdb->post2cat WHERE post_id IN ($post_id_list)");
|
||||||
|
|
||||||
if ( empty($dogs) )
|
if ( empty($dogs) )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
foreach ($dogs as $catt)
|
foreach ($dogs as $catt) {
|
||||||
$category_cache[$blog_id][$catt->post_id][$catt->category_id] = &get_category($catt->category_id);
|
if ( 'category' == $catt->rel_type )
|
||||||
|
$category_cache[$blog_id][$catt->post_id][$catt->category_id] = &get_category($catt->category_id);
|
||||||
|
elseif ( 'tag' == $catt->rel_type )
|
||||||
|
$tag_cache[$blog_id][$catt->post_id][$catt->category_id] = &get_category($catt->category_id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function update_post_caches(&$posts) {
|
function update_post_caches(&$posts) {
|
||||||
|
|
Loading…
Reference in New Issue