如何在 Wordpress post 页面中排列 the_content()?
How to arrange the_content() in Wordpress post page?
我正在尝试格式化具有自定义类型的单个 post 页面模板。我正在使用 the_content() 来显示 post 内容,但我如何调用各个内容字段以便我可以在模板中排列它们?
functions.php
function stories_init() {
$args = array(
'label' => 'Stories',
'public' => true,
'show_ui' => true,
'capability_type' => 'post',
'hierarchical' => false,
'rewrite' => array('slug' => 'stories'),
'query_var' => true,
'menu_icon' => 'dashicons-video-alt',
'supports' => array(
'title',
'editor',
'custom-fields',
'thumbnail',)
);
register_post_type( 'stories', $args );
}
单-post.html
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
<?php endwhile; ?>
由于您的 Custom-Post 的名称是 stories
,您最好在主题目录中创建一个名为 single-stories.php
的专用文件。在该文件中,您可以执行如下操作:
<?php
// FILE-NAME: single-stories.php
if ( have_posts() ) :
while ( have_posts() ) : the_post(); $id= get_the_ID(); // IN CASE YOU NEED IT ?>
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
<span class="entry-author"><?php echo get_the_author(); ?></span>
<span class="entry-date"><?php echo get_the_date(); ?></span>
<!-- YOU CAN DO AS YOU WISH IN THIS FILE -->
<!-- AND THE RENDERING HERE WILL BE UNIQUE TO THE CUSTOM STORIES POSTS -->
<!-- HOWEVER, BE INFORMED THAT THIS IS FOR DETAILED (SINGLE-POST) VIEW ONLY -->
<?php endwhile; ?>
<?php endif; ?>
如果您想将内容的各个部分分开,例如每个段落或其他内容,则需要创建要在 post 中使用的自定义字段。 the_content()
将始终打印出全部内容。
如果你想要一个插件来做,这个是最受欢迎的
https://wordpress.org/plugins/advanced-custom-fields/
或者,在创建新的 post 时,您可以转到顶部并单击 Screen Options
,然后选中 Custom Fields box
。
自定义字段将显示在您的 post 内容框下方。您可以创建一个新的并为其赋值(它们作为 key/value 对)。
要在您的模板中调用它,请使用 <?php echo get_post_meta($post_id, $key, $single); ?>
$post_id
-> 是您想要其元值的 post 的 ID。使用 $post->ID
在 $post
变量范围内获取 post 的 ID。使用 get_the_ID()
检索 WordPress 循环中当前项目的 ID。
$key
-> 是一个包含你想要的元值名称的字符串。
$single
可以是 true
或 false
。如果设置为 true,则该函数将 return 单个结果作为字符串。如果为 false 或未设置,则函数 return 是自定义字段的数组。
我正在尝试格式化具有自定义类型的单个 post 页面模板。我正在使用 the_content() 来显示 post 内容,但我如何调用各个内容字段以便我可以在模板中排列它们?
functions.php
function stories_init() {
$args = array(
'label' => 'Stories',
'public' => true,
'show_ui' => true,
'capability_type' => 'post',
'hierarchical' => false,
'rewrite' => array('slug' => 'stories'),
'query_var' => true,
'menu_icon' => 'dashicons-video-alt',
'supports' => array(
'title',
'editor',
'custom-fields',
'thumbnail',)
);
register_post_type( 'stories', $args );
}
单-post.html
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
<?php endwhile; ?>
由于您的 Custom-Post 的名称是 stories
,您最好在主题目录中创建一个名为 single-stories.php
的专用文件。在该文件中,您可以执行如下操作:
<?php
// FILE-NAME: single-stories.php
if ( have_posts() ) :
while ( have_posts() ) : the_post(); $id= get_the_ID(); // IN CASE YOU NEED IT ?>
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
<span class="entry-author"><?php echo get_the_author(); ?></span>
<span class="entry-date"><?php echo get_the_date(); ?></span>
<!-- YOU CAN DO AS YOU WISH IN THIS FILE -->
<!-- AND THE RENDERING HERE WILL BE UNIQUE TO THE CUSTOM STORIES POSTS -->
<!-- HOWEVER, BE INFORMED THAT THIS IS FOR DETAILED (SINGLE-POST) VIEW ONLY -->
<?php endwhile; ?>
<?php endif; ?>
如果您想将内容的各个部分分开,例如每个段落或其他内容,则需要创建要在 post 中使用的自定义字段。 the_content()
将始终打印出全部内容。
如果你想要一个插件来做,这个是最受欢迎的 https://wordpress.org/plugins/advanced-custom-fields/
或者,在创建新的 post 时,您可以转到顶部并单击 Screen Options
,然后选中 Custom Fields box
。
自定义字段将显示在您的 post 内容框下方。您可以创建一个新的并为其赋值(它们作为 key/value 对)。
要在您的模板中调用它,请使用 <?php echo get_post_meta($post_id, $key, $single); ?>
$post_id
-> 是您想要其元值的 post 的 ID。使用 $post->ID
在 $post
变量范围内获取 post 的 ID。使用 get_the_ID()
检索 WordPress 循环中当前项目的 ID。
$key
-> 是一个包含你想要的元值名称的字符串。
$single
可以是 true
或 false
。如果设置为 true,则该函数将 return 单个结果作为字符串。如果为 false 或未设置,则函数 return 是自定义字段的数组。