如何使用WordPress的the_excerpt()和the_content()函数来显示文章摘要和全文?

2024-12-12 295 0

在WordPress中,the_excerpt()the_content() 是两个常用的模板函数,用于显示文章的摘要和全文。以下是如何使用这两个函数的步骤:

使用 the_excerpt() 显示文章摘要

  1. 确保摘要功能已启用
    在WordPress的设置中,确保“手动摘要”选项被选中。这可以通过以下步骤完成:

    • 登录到WordPress管理后台。
    • 导航到“设置” > “撰写”。
    • 在“摘选”部分,选择“手动摘选”选项。
    • 点击“保存更改”。
  2. 在模板文件中使用 the_excerpt()
    打开你想要显示摘要的模板文件(通常是 index.phparchive.phpsearch.php),然后在适当的位置添加以下代码:

    <?php the_excerpt(); ?>
  3. 自定义摘要长度
    默认情况下,WordPress的摘要长度是55个单词。如果你想自定义摘要的长度,可以在主题的 functions.php 文件中添加以下代码:

    function custom_excerpt_length() {
       return 20; // 更改为你想要的单词数
    }
    add_filter('excerpt_length', 'custom_excerpt_length');

使用 the_content() 显示文章全文

  1. 在模板文件中使用 the_content()
    在单个文章页面(通常是 single.phppage.php)中,你可以在适当的位置添加以下代码来显示全文:

    <?php the_content(); ?>
  2. 处理分页
    如果文章被分页,the_content() 会自动处理分页链接。如果你想要自定义分页链接的样式,可以使用以下代码:

    <?php
    the_content(
       sprintf(
           wp_kses(
               /* translators: %s: Name of current post. Only visible to screen readers */
               __('Continue reading<span class="screen-reader-text"> "%s"</span>', 'textdomain'),
               array(
                   'span' => array(
                       'class' => array(),
                   ),
               )
           ),
           wp_kses_post(get_the_title())
       )
    );
    
    wp_link_pages(
       array(
           'before' => '<div class="page-links">' . esc_html__('Pages:', 'textdomain'),
           'after'  => '</div>',
       )
    );
    ?>

确保替换 'textdomain' 为你的主题的文本域。

使用这些函数时,请注意以下几点:

  • the_excerpt() 通常用于文章列表页面,如首页、分类页或搜索结果页。
  • the_content() 通常用于单个文章或页面模板,用于显示完整内容。
  • 使用这些函数时,不需要在它们前面加上 echo,因为这两个函数会自动输出内容。

相关文章

在WordPress主题开发中,如何使用wp_footer()和wp_head()钩子来添加自定义代码?
在WordPress插件中,如何使用wp_enqueue_script()和wp_enqueue_style()来正确地注册和加载脚本和样式?
在WordPress插件开发中,如何使用register_post_type()来创建自定义文章类型?
在WordPress主题开发中,如何使用is_page()和is_single()等条件标签来控制内容输出?
如何使用acf_add_options_page()来为WordPress主题添加自定义设置页面?
如何使用WordPress的 add_menu_page() 函数在后台创建自定义菜单页面?