簡體   English   中英

WordPress - 如何將錨點添加到上一頁/下一頁鏈接

[英]WordPress - How to add anchor to previous/next page links

我的 WordPress 主題頂部有一個畫廊,博客文章在它下面。 每次我轉到下一頁時,它都會轉到我不想要的頂部。 我想在圖庫下方添加一個名為 #blog 的錨點,並將其添加到上一頁/下一頁鏈接。 我應該將#blog 放在代碼中的哪個位置來完成這項工作?

您應該可以通過兩次調整來做到這一點。 第一個將創建錨點,第二個將調整鏈接以使用錨點。

錨點可以被引用為帶有name屬性的<a>標簽或幾乎任何帶有id屬性的標簽。 我想說的是,大多數 WordPress 主題已經有了一個可以在#content使用的錨點。 導航到您的任何博客文章並查看源代碼。 在源代碼中搜索id="content"並驗證它是否存在。 如果沒有,請在您的實際帖子內容所在的位置找到一個id ,然后您可以使用該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”相關的函數。 大多數用於創建鏈接的函數會自動為您編寫整個鏈接標記 ( <a> ),因此無法攔截鏈接並更改它。

您需要自己編寫鏈接。 下面的代碼顯示了如何獲取信息和創建鏈接。 它假設您將使用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; ?>

這應該會創建您正在尋找的鏈接,這些鏈接會自動將頁面跳過圖像並跳轉到帖子內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM