要在 WordPress 中获取所有页面的固定链接,你可以使用get_pages()函数获取所有页面,然后循环遍历并使用get_permalink()获取每个页面的固定链接。
以下是实现这一功能的代码示例:
// 获取所有页面
$all_pages = get_pages();
// 存储所有页面固定链接的数组
$page_permalinks = array();
// 循环遍历所有页面并获取固定链接
if (!empty($all_pages)) {
foreach ($all_pages as $page) {
// 获取当前页面的固定链接
$permalink = get_permalink($page->ID);
// 将页面ID、标题和链接存入数组
$page_permalinks[] = array(
'id' => $page->ID,
'title' => $page->post_title,
'permalink' => $permalink
);
}
}
// 示例:打印所有页面的固定链接
if (!empty($page_permalinks)) {
echo '<ul>';
foreach ($page_permalinks as $page) {
echo '<li><a href="' . esc_url($page['permalink']) . '">' . esc_html($page['title']) . '</a> (ID: ' . $page['id'] . ')</li>';
}
echo '</ul>';
}这段代码的工作原理:
- 使用
get_pages()获取所有页面的数组(包含页面 ID、标题等信息) - 初始化一个数组用于存储结果
- 循环遍历每个页面,使用
get_permalink($page->ID)获取固定链接 - 将页面 ID、标题和链接存入数组,方便后续使用
- 最后示例代码将所有链接以列表形式输出
如果你需要在主题文件中使用,可以将这段代码放在合适的位置(如page.php、sidebar.php等)。如果需要在插件中使用,确保在 WordPress 加载完成后执行(可以放在init钩子中)。
注意使用esc_url()和esc_html()进行安全过滤,这是 WordPress 开发的最佳实践。



评论
抢沙发