Ich habe einen benutzerdefinierten Beitragstyp. Ich möchte die Projektkategorien direkt über den Projekten anzeigen, damit die Besucher die Projekte entsprechend filtern können.
In meinem habe functions.php
ich:
<?php
require_once('portfolio-type.php');
add_filter('excerpt_length', 'my_excerpt_length');
function my_excerpt_length($length) {
return 25;
}
add_filter('excerpt_more', 'new_excerpt_more');
function new_excerpt_more($text){
return ' ';
}
function portfolio_thumbnail_url($pid){
$image_id = get_post_thumbnail_id($pid);
$image_url = wp_get_attachment_image_src($image_id,'screen-shot');
return $image_url[0];
}
?>
In portfolio-type.php
:
<?php
if ( function_exists( 'add_theme_support' ) ) {
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 270, 170, true ); // Normal post thumbnails
add_image_size( 'screen-shot', 720, 540 ); // Full size screen
}
add_action('init', 'portfolio_register');
function portfolio_register() {
$args = array(
'label' => __('Portfolio'),
'singular_label' => __('Project'),
'public' => true,
'show_ui' => true,
'capability_type' => 'post',
'hierarchical' => false,
'rewrite' => true,
'supports' => array('title', 'editor', 'thumbnail')
);
register_post_type( 'portfolio' , $args );
}
register_taxonomy("project-type", array("portfolio"), array("hierarchical" => true, "label" => "Project Types", "singular_label" => "Project Type", "rewrite" => true));
?>
Und schließlich habe ich in meiner index.php:
<!-- Start Projects -->
<div id="posts" class="row isotope">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php
$title= str_ireplace('"', '', trim(get_the_title()));
$desc= str_ireplace('"', '', trim(get_the_content()));
?>
<div class="item post item span4 isotope-item">
<a class="project-wrp fancybox" title="<?=$title?>" rel="lightbox[work]" href="<?php print portfolio_thumbnail_url($post->ID) ?>"><div class="profile-photo"><div class="profile-icon">f</div><?php the_post_thumbnail(array('230','170'),array('alt' => '')); ?> </div>
<div class="project-name"><?php echo $title; ?></div>
<div class="project-client"><?php echo $desc; ?></div>
</a>
</div>
<?php endwhile; endif; ?>
</div>
quelle
Verwenden Sie für diese Liste der Portfolio-Post-Kategorien:
quelle