WordPress - 如何将锚点添加到上一页/下一页链接

Posted

技术标签:

【中文标题】WordPress - 如何将锚点添加到上一页/下一页链接【英文标题】:WordPress - How to add anchor to previous/next page links 【发布时间】:2012-11-02 03:04:29 【问题描述】:

我的 WordPress 主题顶部有一个图库,博客文章位于其下方。每次我转到下一页时,它都会转到我不想要的顶部。我想在图库下方添加一个名为#blog 的锚点,并将其添加到上一页/下一页链接。我应该在代码中的哪个位置放置#blog 来完成这项工作?

【问题讨论】:

【参考方案1】:

您应该能够通过两次调整来做到这一点。第一个将创建锚点,第二个将调整链接以使用锚点。

锚点可以被引用为具有name 属性的<a> 标记或几乎任何具有id 属性的标记。我想说大多数 WordPress 主题已经有一个可以在#content 中使用的锚点。导航到您的任何博客文章并查看源代码。在源码中搜索id="content",验证是否存在。如果没有,请找到您的实际帖子内容所在的id,您可以使用该地址。如果找不到,则需要创建一个。

在您的 WordPress 主题文件中,查找名为 single.php 的文件。这通常是控制如何呈现单个帖子的文件。您将编辑此文件以添加锚点(如有必要)并调整链接。

如果您无法找到要使用的 id(无论是“内容”还是其他任何内容),您需要找到调用内容以进行输出的位置,并将 id 添加到任何 html标签被包裹在它周围。

例如,我的文件的精简版本如下所示:

<div id="primary">
  <div id="content">
    <?php while ( have_posts() ) : the_post(); ?>
      <div class="entry-content">
       <?php the_content(); // this is your post content ?>
      </div><!-- .entry-content -->
    <?php endwhile; // end of the loop. ?>
  </div>
</div>

输出链接的方法有很多种,这取决于WordPress的主题和版本。在single.php 文件中,查找与“next_post”和“previous_post”相关的函数。大部分用于创建链接的函数都会自动为你写入整个链接标签(&lt;a&gt;),所以无法截取链接并更改它。

您需要自己编写链接。下面的代码显示了如何获取信息和创建链接。它假定您将使用 id="content" 作为您的锚参考。

  <?php
  $prev_post = get_previous_post();
  if (!empty( $prev_post )): ?>
    <a href="<?php echo get_permalink( $prev_post->ID ); ?>#content"><?php echo $prev_post->post_title; ?></a>
  <?php endif; ?>

  <?php
  $next_post = get_next_post();
  if (!empty( $next_post )): ?>
    <a href="<?php echo get_permalink( $next_post->ID ); ?>#content"><?php echo $next_post->post_title; ?></a>
  <?php endif; ?>

这应该会创建您正在寻找的链接,这些链接会自动将页面跳过图像并跳转到帖子内容。

【讨论】:

哇!非常感谢!这是一个很大的帮助!我可能会写一篇关于这个答案的博客,到处寻找!

以上是关于WordPress - 如何将锚点添加到上一页/下一页链接的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 knp_paginator 将锚点附加到 url

wordpress 如何在子页面中导航上一页和下一页

SceneKit:围绕任意点进行轨道运行而无需相机跳跃或将锚点移动到中心?

如何在视口中的 HTML 表格中定位锚点

登录后如何将WordPress用户重定向到上一页

Wordpress 菜单 - 向锚点添加类