如何从模板中删除wp_link_ages()

时间:2017-02-19 作者:Rainer Brumshagen

答案中的代码this thread 很好,但有一部分我不明白:

去除wp_link_pages() 来自模板

要删除的确切代码在哪里?我调查了一下/wp-includes/post-template.php, 但在那里删除它会产生错误。目前,使用代码:

add_filter( \'the_content\', function( $content ) { return $content . wp_link_pages( array( \'echo\' => FALSE ) ); }, -1 ); // Lower number = higher priority.

分页显示两次:一次在相关帖子上方,一次在相关帖子下方。所以我必须删除第二个,对吗?它是如何工作的?

1 个回复
最合适的回答,由SO网友:Fayaz 整理而成

不,您不会将其从/wp-includes/post-template.php. 这是WordPress核心文件,您不应该编辑任何WordPress核心文件。

这个answer 正在讨论删除的调用wp_link_pages a中的函数template file.

要编辑哪个模板文件取决于您访问的主题和URL。通常应该是/wp-content/themes/<your-active-theme>/single.php.

但模板可以分为多个文件,并调用wp_link_pages 函数可以位于任何这些模板零件文件中。

例如,在twentyseventeen 主题,它可以在多个文件中找到。对于pages, 它位于:

/wp-content/themes/twentyseventeen/template-parts/page/content-page.php:
对于帖子,它位于:

/wp-content/themes/twentyseventeen/template-parts/post/content-audio.php
/wp-content/themes/twentyseventeen/template-parts/post/content-gallery.php
/wp-content/themes/twentyseventeen/template-parts/post/content-image.php
/wp-content/themes/twentyseventeen/template-parts/post/content-video.php
/wp-content/themes/twentyseventeen/template-parts/post/content.php
如果您仍然找不到要为当前活动主题编辑的模板文件,您可以read this guide 来找出答案。

阅读有关WordPress主题模板文件的更多信息postspages.

此外,当您删除wp_link_pages 从任何模板文件调用函数,确保您对PHP函数调用有基本了解。因为函数调用可能涉及多行。

更新:如何删除wp_link_pages 从《创世纪》主题分页:

(因为评论中提到这是《创世纪》)LifeStyle Pro 主题)

主题与Genesis 框架处理分页的方式不同。对于Genesis主题,您实际上找不到对wp_link_pages 模板文件中的分页功能,由Genesis框架处理。

所以在这种情况下remove the the CODE you useduse the following CODE:

add_filter( \'the_content\', function( $content ) {
    remove_action( \'genesis_entry_content\', \'genesis_do_post_content_nav\', 12 );
    return $content . wp_link_pages( array( \'echo\' => FALSE ) );
}, -1 );
现在,您将没有Genesis主题提供的默认分页。

相关推荐

Templates and meta

我想将CPT中的一些自定义字段传递给帖子。我有一些代码,但我不知道如何“集成”它。我正在WP模板中做一些事情(这不是我的,这是主要问题)。Code 我有这个single-job.php, 这是-从单个复制。php—CPT的post模板。<?php /** * Job Post */ if( defined(\'FW\') ) : $elements = jevelin_option( \'post_elements\' ); if(