我有一个类似于this的页面,突出显示部分的代码就是这个。
此文件位于buddypress / members / single / home.php
<div id="item-nav">
<div class="item-list-tabs no-ajax" id="object-nav" role="navigation">
<ul id="nav-bar-filter">
<?php bp_get_displayed_user_nav();
do_action( 'bp_member_options_nav' ); ?>
</ul>
</div>
</div>
函数bp_get_displayed_user_nav的代码是,它的位置是buddypress / bp-members / bp-members-template.php
function bp_get_displayed_user_nav() {
$bp = buddypress();
foreach ( $bp->members->nav->get_primary() as $user_nav_item ) {
if ( empty( $user_nav_item->show_for_displayed_user ) && ! bp_is_my_profile() ) {
continue;
}
$selected = '';
if ( bp_is_current_component( $user_nav_item->slug ) ) {
$selected = ' class="current selected"';
}
if ( bp_loggedin_user_domain() ) {
$link = str_replace( bp_loggedin_user_domain(), bp_displayed_user_domain(), $user_nav_item->link );
} else {
$link = trailingslashit( bp_displayed_user_domain() . $user_nav_item->link );
}
/**
* Filters the navigation markup for the displayed user.
*
* This is a dynamic filter that is dependent on the navigation tab component being rendered.
*
* @since 1.1.0
*
* @param string $value Markup for the tab list item including link.
* @param array $user_nav_item Array holding parts used to construct tab list item.
* Passed by reference.
*/
echo apply_filters_ref_array( 'bp_get_displayed_user_nav_' . $user_nav_item->css_id, array( '<li id="' . $user_nav_item->css_id . '-personal-li" ' . $selected . '><a id="user-' . $user_nav_item->css_id . '" href="' . $link . '">' . $user_nav_item->name . '</a></li>', &$user_nav_item ) );
}
}
HTML
<div id="item-nav">
<div class="item-list-tabs no-ajax" id="object-nav" role="navigation">
<ul id="nav-bar-filter" class="horizontal-responsive-menu">
<li class="hideshow"><a href="#"><i class="fa fa-ellipsis-h"></i></a>
<ul>
<li id="activity-personal-li" class="current selected" style=""><a id="user-activity" href="https://www.tourpeer.com/members/kushal/activity/">Wall</a></li>
<li id="xprofile-personal-li" style=""><a id="user-xprofile" href="https://www.tourpeer.com/members/kushal/profile/">Profile</a></li>
<li id="articles-personal-li" style=""><a id="user-articles" href="https://www.tourpeer.com/members/kushal/articles/">Articles <span>0</span></a></li>
<li id="requests-personal-li" style=""><a id="user-requests" href="https://www.tourpeer.com/members/kushal/requests/">Requests <span>1</span></a></li>
<li id="tour-packages-personal-li" style=""><a id="user-tour-packages" href="https://www.tourpeer.com/members/kushal/tour-packages/">Tour Packages <span>0</span></a></li>
<li id="messages-personal-li" style=""><a id="user-messages" href="https://www.tourpeer.com/members/kushal/messages/">Messages <span class="no-count">0</span></a></li>
<li id="friends-personal-li" style=""><a id="user-friends" href="https://www.tourpeer.com/members/kushal/friends/">Friends <span class="count">1</span></a></li>
<li id="mediapress-personal-li" style=""><a id="user-mediapress" href="https://www.tourpeer.com/members/kushal/mediapress/">Gallery <span>0</span></a></li>
<li id="settings-personal-li" style=""><a id="user-settings" href="https://www.tourpeer.com/members/kushal/settings/">Settings</a></li>
<li id="invite-anyone-personal-li" style=""><a id="user-invite-anyone" href="https://www.tourpeer.com/members/kushal/invite-anyone/">Send Invites</a></li>
<li id="notifications-personal-li" style=""><a id="user-notifications" href="https://www.tourpeer.com/members/kushal/notifications/">Notifications <span class="no-count">0</span></a></li>
</ul>
</li>
</ul>
我通过buddyforms创建了两个表单文章和请求,当它们没有文章或请求它工作正常时,但只要有文章或请求,左侧导航栏看起来像this。
我发现这背后的原因是每当有请求或文章时,此代码段都会从html中丢失
<li class="hideshow"><a href="#"><i class="fa fa-ellipsis-h"></i></a></l>
我无法弄清楚为什么会发生这种情况,请帮我解决这个问题。