wordpress 面包屑 - 主页 > 博客 > post
wordpress breadcrumb - home > blog > post
如果您对我的面包屑导航有任何建议,我将不胜感激。头痛了 2 天,我就是想不通。
我有一个用于博客条目的静态页面,我想在面包屑中包含 url。
mysite.com > 博客 > post
现在我有“mysite.com>post”
最坏情况删除主页 url 并更改为博客 url,因此此面包屑至少显示博客 url。
博客 > post
以下代码效果很好,但它不显示 "blog url",因为它只调用 "home",但我想包含一个 echo 或其他东西来显示名为 blog after home 的静态页面(主页 - 博客 - post)。
是否可以将 link 添加到页面中,例如 echo 'Blog< /a>' ?或者甚至删除主页和面包屑之前的位置作为 我的网站 >> 我的博客 >> 然后是面包屑的其余部分( post / 类别).
我的目标... mysite.com > 博客 > post
谢谢!
function my_breadcrumb() {
$sep = ' › ';
if (!is_front_page()) {
// Start the breadcrumb with a link to your homepage
echo '<div class="x"><nav class="x">';
echo '<a href="';
echo get_option('home');
echo '">';
bloginfo('name');
echo '</a>' . $sep;
// Check if the current page is a category, an archive or a single page. If so show the category or archive name.
if (is_category() || is_single() ){
the_category('title_li=');
} elseif (is_archive() || is_single()){
if ( is_day() ) {
printf( __( '%s', 'text_domain' ), get_the_date() );
} elseif ( is_month() ) {
printf( __( '%s', 'text_domain' ), get_the_date( _x( 'F Y', 'monthly archives date format', 'text_domain' ) ) );
} elseif ( is_year() ) {
printf( __( '%s', 'text_domain' ), get_the_date( _x( 'Y', 'yearly archives date format', 'text_domain' ) ) );
} else {
_e( 'Blog Archives', 'text_domain' );
}
}
// If the current page is a single post, show its title with the separator
if (is_single()) {
echo $sep;
the_title();
}
// If the current page is a static page, show its title.
if (is_page()) {
echo the_title();
}
// if you have a static page assigned to be you posts list page. It will find the title of the static page and display it. i.e Home >> Blog
if (is_home()){
global $post;
$page_for_posts_id = get_option('page_for_posts');
if ( $page_for_posts_id ) {
$post = get_page($page_for_posts_id);
setup_postdata($post);
the_title();
rewind_posts();
}
}
echo '</nav></div>';
}
}
//
- 注意。我很好奇为什么 posts 页面没有像代码所说的那样显示为主页 >> 博客。 (我创建了一个名为博客的页面,然后设置 - 阅读 - posts 页面并使用 home.php 作为模板)。 (首页是用一个叫欢迎的页面,然后设置-阅读-首页,模板是front-page.php)。 ** 我正在制作自己的主题,我不想添加更多插件。
显示预期 url 喜欢的面包屑:mysite.com > 博客 > post
function my_breadcrumb() {
$sep = ' > ';
if (!is_front_page()) {
// Start the breadcrumb with a link to your homepage
echo '<div class="breadcrumbs">';
echo '<a href="';
echo get_option('home');
echo '">';
bloginfo('name');
echo '</a>' . $sep;
// Check if the current page is a category, an archive or a single page. If so show the category or archive name.
if (is_category() || is_single() ){
echo '<a href="'.get_site_url().'/blog">Blog</a>';
} elseif (is_archive() || is_single()){
if ( is_day() ) {
printf( __( '%s', 'text_domain' ), get_the_date() );
} elseif ( is_month() ) {
printf( __( '%s', 'text_domain' ), get_the_date( _x( 'F Y', 'monthly archives date format', 'text_domain' ) ) );
} elseif ( is_year() ) {
printf( __( '%s', 'text_domain' ), get_the_date( _x( 'Y', 'yearly archives date format', 'text_domain' ) ) );
} else {
_e( 'Blog Archives', 'text_domain' );
}
}
// If the current page is a single post, show its title with the separator
if (is_single()) {
echo $sep;
the_title();
}
// If the current page is a static page, show its title.
if (is_page()) {
echo the_title();
}
// if you have a static page assigned to be you posts list page. It will find the title of the static page and display it. i.e Home >> Blog
if (is_home()){
global $post;
$page_for_posts_id = get_option('page_for_posts');
if ( $page_for_posts_id ) {
$post = get_page($page_for_posts_id);
setup_postdata($post);
the_title();
rewind_posts();
}
}
echo '</div>';
}
}
希望这对你有用。