Joe主题非常棒,但是也有部分功能美中不足,比如手机端没有注册登录功能,在这移动端盛行的年代,总感觉缺点啥。所以花了几分钟把这个功能完成了,对于懂PHP的人来说很简单,但是对于不懂的来说非常难。所以给大家分享下自己的成果吧。
PS:个人不喜欢用别人的插件,尤其需要授权才能使用的插件,插件虽说完美,操作简单,但是总有种被人牵着鼻子走的感觉。如果你也是和我一样的强迫症患者,不妨动动小手,2分钟就可以实现这个功能。
先来看下效果:
![图片[1]-Typecho之Joe主题手机端新增登录注册功能超简单(修改一个文件即可完成)-米克随笔](https://blog.mk4.cc/wp-content/uploads/2022/07/image-54.png)
![图片[2]-Typecho之Joe主题手机端新增登录注册功能超简单(修改一个文件即可完成)-米克随笔](https://blog.mk4.cc/wp-content/uploads/2022/07/image-55.png)
实现过程:
1、找到这个文件 /usr/themes/Joe/public/header.php,在下图所示的位置添加后面的代码,保存即可。
![图片[3]-Typecho之Joe主题手机端新增登录注册功能超简单(修改一个文件即可完成)-米克随笔](https://blog.mk4.cc/wp-content/uploads/2022/07/image-56.png)
2、代码如下:
<!--手机端注册登录功能-->
<ul class="joe_header__slideout-menu panel-box" style="margin-top: 15px; ">
<!--处理登录的情况-->
<?php if ($this->user->hasLogin()) {?>
<li>
<a class="link panel" href="#" rel="nofollow">
<span>用户登录</span>
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="13" height="13">
<path d="M624.865 512.247L332.71 220.088c-12.28-12.27-12.28-32.186 0-44.457 12.27-12.28 32.186-12.28 44.457 0l314.388 314.388c12.28 12.27 12.28 32.186 0 44.457L377.167 848.863c-6.136 6.14-14.183 9.211-22.228 9.211s-16.092-3.071-22.228-9.211c-12.28-12.27-12.28-32.186 0-44.457l292.155-292.16z" />
</svg>
</a>
<ul class="slides panel-body">
<li>
<a class="link" href="#" target="_blank" rel="noopener noreferrer nofollow">恭喜~您已登录</a>
<a class="link" href="<?php $this->options->logoutUrl(); ?>" target="_blank" rel="noopener noreferrer nofollow"><span style="color: red">点我~退出登录</span></a>
</li>
</ul>
</li>
<?php }else{ ?>
<li>
<a class="link panel" href="#" rel="nofollow">
<span>用户登录</span>
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="13" height="13">
<path d="M624.865 512.247L332.71 220.088c-12.28-12.27-12.28-32.186 0-44.457 12.27-12.28 32.186-12.28 44.457 0l314.388 314.388c12.28 12.27 12.28 32.186 0 44.457L377.167 848.863c-6.136 6.14-14.183 9.211-22.228 9.211s-16.092-3.071-22.228-9.211c-12.28-12.27-12.28-32.186 0-44.457l292.155-292.16z" />
</svg>
</a>
<ul class="slides panel-body">
<li>
<a class="link" href="<?php $this->options->adminUrl('login.php'); ?>" target="_blank" rel="noopener noreferrer nofollow">登录</a>
<?php if ($this->options->allowRegister) : ?>
<a class="link" href="<?php $this->options->adminUrl('register.php'); ?>" target="_blank" rel="noopener noreferrer nofollow">注册</a>
<?php endif; ?>
</li>
</ul>
</li>
<?php }?>
</ul>
3、拓展:这里的登录没有任何限制,注册功能要跟随系统设置,系统设置允许注册则显示,不允许注册则不显示注册按钮,typecho里面是用这个参数来判断后台是否允许注册,如果其他页面有需要判断的,可以用下面的属性。
$this->options->allowRegister
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容