1
<ul class="stageList2">
    <li><a class="sel">Stage 1</a></li>
    <li><a href="<?php echo get_permalink(1030); ?>">Stage 2</a></li>
    <li><a href="<?php echo get_permalink(1032); ?>">Stage 3</a></li>
    <li><a href="<?php echo get_permalink(1034); ?>">Stage 4</a></li>
    <li><a href="<?php echo get_permalink(1036); ?>">Stage 5</a></li>
    <li><a href="<?php echo get_permalink(1038); ?>">Stage 6</a></li>
    <li><a href="<?php echo get_permalink(1040); ?>">Stage 7</a></li>
    <li><a href="<?php echo get_permalink(1042); ?>">Stage 8</a></li>
    <li><a href="<?php echo get_permalink(1044); ?>">Stage 9a</a></li>
    <li><a href="<?php echo get_permalink(1046); ?>">Stage 9b</a></li>
</ul>

<ul class="stageList2">
    <li><a href="<?php echo get_permalink(1048); ?>">Stage 10</a></li>
    <li><a href="<?php echo get_permalink(1050); ?>">Stage 11</a></li>
    <li><a href="<?php echo get_permalink(1052); ?>">Stage 12</a></li>
    <li><a href="<?php echo get_permalink(1054); ?>">Stage 13</a></li>
    <li><a href="<?php echo get_permalink(1056); ?>">Golf Stage 1</a></li>
    <li><a href="<?php echo get_permalink(1058); ?>">Golf Stage 2</a></li>
    <li><a href="<?php echo get_permalink(1060); ?>">Golf Stage 3</a></li>
    <li><a href="<?php echo get_permalink(1062); ?>">Golf Stage 4</a></li>
    <li><a href="<?php echo get_permalink(1064); ?>">Golf Stage 5</a></li>
    <li><a href="<?php echo get_permalink(1066); ?>">Golf Stage 6</a></li>

我的部分页面上有此代码。我正在尝试获取这些特定页面的永久链接,但它不返回任何内容,并且链接的 href 属性为空。如果我使用除此处列出的这些 ID 之外的其他 ID,则可以正常返回永久链接。此外,如果我使用这些 ID 在站点的另一部分获取永久链接,它也会在那里返回。这个页面模板的这个特定部分和这些特定的页面 ID 不允许我返回永久链接。

有没有人经历过这样的事情?它是某种可以修复的错误吗?

我已将整个 WordPress 网站移至新服务器,这些永久链接在另一台服务器上运行良好。我还禁用了我所有的插件,以查看它们是否导致任何错误,但它仍然无法正常工作。

干杯,贾斯汀

4

1 回答 1

0

当您将网站移动到新服务器时,ID 很可能会根据您进行迁移的方式甚至新主机中的数据库配置而改变。我总是尽量避免在模板上使用 id。它们不适合阅读代码。您可以从标题中获取 id。像这样的东西:

get_permalink( get_page_by_title( 'Monthly Events' ) );

该函数get_page_by_title将为您提供页面或帖子的 ID。更好的方法是使用类别,然后使用循环和query_posts遍历类别。

与你有关的问题。首先,检查数据库(如果我没记错的话,表格wp_posts)是否存在这些数字(id)。我打赌不会。如果没有,您可以使用任何数据库管理器(如 phpmyadmin)来导入和导出数据库,而无需使用 wordpress 导入/导出插件。

于 2013-06-13T12:50:44.997 回答