3

我设置了一个名为“RELEASES”的自定义帖子类型 - 想想音乐 cd 版本。

此帖子类型具有名为“release_artist”、“release_title”、“release_date”、“release_artwork”和“release_tracklisting”的字段,用于输入所有相关的音乐 cd 信息。

我在我的 Wordpress 模板中实际显示这些信息时遇到了真正的麻烦。我真的很幸运地输出了标题列表,没有其他数据。

知道我在 LOOP 中放了什么来显示所有信息吗?最好每个都在自己的 LIST 项目中,这样我就可以单独设置每个项目的样式?

任何想法都非常感谢。

4

5 回答 5

5

您可以根据需要使用get_post_meta拉入您的字段。在您的循环中,您可以从以下内容开始:

<?php 
    $release_artist = get_post_meta($post->ID, 'release_artist', true); 
    $release_title = get_post_meta($post->ID, 'release_title', true); 
?>

<ul>
    <li class="release_artist">
        <?php echo $release_artist; ?>
    </li>
    <li class="release_title">
        <?php echo $release_title; ?>
    </li>
</ul>
于 2012-06-26T23:45:25.907 回答
4

这些是自定义字段吗?如果是,请尝试codex.wordpress.org所说的内容。更好的是,试试ACF 插件

- 编辑

如果您想在其他页面上显示您的部分页面(例如在您的家中),您需要使用query_posts。这是一个相当简单的功能。对于您的循环,请尝试以下操作:

      <?php
        global $wp_query;
        query_posts(array(
            'post_type' => 'releases'
        ));
        while(have_posts()) : the_post(); ?>
            <?php $key = get_post_meta($post->ID, 'Opis nazwy'); ?>
            <li <?php post_class(); ?>><a href="<?php the_permalink(); ?>"><?php if($key) { echo $key[0]; } else { the_title(); }; ?></a></li>
            <?php
        endwhile;
        wp_reset_query();
        ?>

$key是单个值,此处设置为release_artists. 这纯粹是为了测试。如果它有效 - 请随意定义您自己的变量。

于 2012-06-26T22:32:13.400 回答
2

你应该使用:

<?php the_field('field_name') ?>

在你的循环里面。希望能帮助到你!

于 2015-03-19T22:13:14.673 回答
2

从我在网上看到的大多数文档来看,query_posts 不应该是创建自定义查询和循环的首选函数。以下代码片段可能是一个很好的起点。您应该能够在主题模板文件的主循环内部或外部使用它。

$args = array(
    'post_type' => 'release', //remember this is-case sensitive
    'posts_per_page' => -1,
);

$releaseQuery = new WP_Query( $args );

if ( $releaseQuery->have_posts() ) :
while ( $releaseQuery->have_posts() ) :
$releaseQuery->the_post();

// Fetching the post ID for demonstration and for use later
$c_id = get_the_ID();

// After running the_post(), alot of the Wordpress functions (not all) can now be used without supplying the post ID.    
echo get_the_title();
// You could also have used get_the_title($c_id);

// Then:
echo get_post_meta($c_id, 'release_title', true); 
echo get_post_meta($c_id, 'release_artist', true); 

endwhile;
endif;

// Return to the current page's main query
wp_reset_query();

// This should now display the page's title
the_title();
于 2015-05-28T20:06:00.003 回答
0

关于你的身份证问题:

每个项目,如 WordPress 中的帖子和页面都有一个“ID”,但它们通常不会显示在它们的列表中。有许多插件会在您的管理员中添加“ID”列。在 Wordpress.org 中搜索“显示 ID”并选择一个您喜欢的。安装它。激活它。你会看到ID。

https://wordpress.org/plugins/search.php?q=show+id

于 2015-05-28T18:54:59.690 回答