您当前的位置: 首页 > 慢生活 > 程序人生 网站首页程序人生
6-8: 获取边栏中的小工具信息及底部菜单功能实现(菜单,边栏,评论)
发布时间:2023-03-30 15:05:58编辑:雪饮阅读()
给评论区增加一个人回复另外一个人时候能看到他回复的是谁
其实这个功能早在http://www.gaojiupan.cn/manshenghuo/chengxurensheng/5309.html
这里就加了,当时是看到没有什么效果。
今天我这里functions.php中如
function wpktcore_who_resp_who($out,$author,$comment_id) {
$comment = get_comment($comment_id);
//如果没有父级评论,则正常返回,因为没有回复关系
if (empty($comment->comment_parent))
{
return $out;
}
//如果有父级评论,则添加回复关系
//获取父《原〉评论
$parent = get_comment($comment->comment_parent);
//获取父(原)评论作者
$pauthor = get_comment_author($parent);
//构件回复关系
$pcid = '#comment-' . $parent->comment_ID;
$new = $out . '回复'. "<a href='{$pcid}'>{$pauthor}</a>";
//返回修改后的评论数据
return $new;
}
add_filter('get_comment_author_link','wpktcore_who_resp_who',10,3);
对比上次,可能就是add_filter第一个参数值末尾多了一个空格(。。。),所以这里就可以了。。
增加评论区回复某个人时候评论输入框自动定位到该人的该条消息下面
默认情况下回复某个人的某个消息时候则是页面先要跳转的,并且跳转后我这里初步研究发现是没有自动定位到对应的那个消息下面去。
这个实现起来不是很难,在functions加载脚本时候加载上即可
function myfunc01(){
wp_enqueue_style('mystyle01',get_theme_file_uri().'/assets/css/app.css');
if(is_singular() && comments_open() && get_option('thread_comments')){
wp_enqueue_script('comment-reply');
}
}
add_action('wp_enqueue_scripts','myfunc01');
这里可以看到有个新的函数调用get_option('thread_comments'),该函数调用对应于wordpress后台设置=》讨论=》启用评论嵌套,最多嵌套….,一般的如
那么实现后则回复某个人时候就自动定位输入框到某人的某个信息回复下面,只有在提交后才出现页面跳转的情况(页面刷新)。
实现右侧边栏小工具
这里可以参考http://www.gaojiupan.cn/manshenghuo/chengxurensheng/5301.html
然后我这里最后调用则如
<div class="widget-area">
<?php if(is_active_sidebar('sidebar-1')):?>
<?php dynamic_sidebar('sidebar-1');?>
<?php else:?>
暂无小工具
<?php endif;?>
</div>
底部菜单导航
底部菜单导航类似于顶部菜单导航
首先functions.php中新增底部菜单导航注册
//导航菜单注册
function myfunc002(){
add_theme_support('title-tag');
register_nav_menus([
"nav-1"=>"导航位置001",
"nav-2"=>"导航位置002",
]);
}
add_action('after_setup_theme','myfunc002');
然后在wordpress后台=》外观=》菜单里面配置给下这个底部导航菜单的勾选于一个菜单中。
然后页面中调用如
<footer id="footer">
<div class="container-fluid">
<?php wp_nav_menu([
'theme_location' =>'nav-2',
'container'=>'',
'menu_class'=>'footer-nav'
]);?>
<p class="copy">
Copyright © 2019 XXX 版权所有 华ICP备9999999号
</p>
</div>
</footer>
这里虽然最后调用结果发现底部还是稍微有点乱,但是这种情况分析起来不太好分析,就暂时先不分析了,本身影响不是特别大呗。没有必要纠结哈。除非实际项目上你可以考虑处理下。
那么如果实在是纠结,则可以利用菜单层级限制暂时先解决,例如我这里就是 <footer id="footer">
<div class="container-fluid">
<?php wp_nav_menu([
'theme_location' =>'nav-2',
'container'=>'',
'menu_class'=>'footer-nav',
'depth' =>1
]);?>
<p class="copy">
Copyright © 2019 XXX 版权所有 华ICP备9999999号
</p>
</div>
</footer>
关键字词:菜单,边栏,评论