WordPress面包屑导航是一种显示当前页面在站点结构中位置的导航元素。通常,面包屑导航以层次结构的形式显示当前页面的路径,使用户能够轻松导航到上一级页面或站点的其他部分。从网站面包屑导航的作用来看,它对于我们做网站SEO优化有着相当的作用。那么如何做网站时能够制作出网站面包屑导航呢?以下是一个简单的WordPress面包屑代码示例:
将以下的代码复制到模板函数functions.php里:
function custom_breadcrumbs() {
// 获取当前页面的信息
$post_id = get_queried_object_id();
$post_type = get_post_type($post_id);
$post_title = get_the_title($post_id);
// 设置面包屑导航的首页链接
$home_link = home_url('/');
$home_label = 'Home';
// 输出面包屑导航的开始部分
echo '<div class="breadcrumbs">';
echo '<a href="' . esc_url($home_link) . '">' . esc_html($home_label) . '</a>';
// 如果是文章类型,则添加文章分类
if ($post_type === 'post') {
$categories = get_the_category();
if (!empty($categories)) {
$category = $categories[0];
echo '<span class="separator"> » </span>';
echo '<a href="' . esc_url(get_category_link($category->term_id)) . '">' . esc_html($category->name) . '</a>';
}
}
// 如果是单页面,添加其父页面
if (is_page() && $post_id !== get_option('page_on_front')) {
$ancestors = get_ancestors($post_id, 'page');
foreach (array_reverse($ancestors) as $ancestor_id) {
echo '<span class="separator"> » </span>';
echo '<a href="' . esc_url(get_permalink($ancestor_id)) . '">' . esc_html(get_the_title($ancestor_id)) . '</a>';
}
}
// 输出当前页面的标题
echo '<span class="separator"> » </span>';
echo '<span class="current">' . esc_html($post_title) . '</span>';
// 输出面包屑导航的结束部分
echo '</div>';
}
将上述代码添加到你的主题的functions.php
文件中或创建一个单独的功能文件,并确保在主题中引入该文件。接下来,在你的主题模板文件中调用custom_breadcrumbs
函数,通常放置在适当的位置,比如在header.php
文件中的页面标题下方。
<?php custom_breadcrumbs(); ?>
这个简单的面包屑导航代码会根据当前页面的类型(文章、页面等)和层次结构来动态生成导航。你可以根据自己的需求对代码进行修改和扩展。