之前用的Wordpress主题大多都支持前台点击编辑按钮进入后台对文章进行修改,方便极了。转了Typecho之后换了几个主题都没发现有这个功能,果然需要造个小轮子啊。
观察一下编辑页面,都是固定地址加上CID,例如
https://kkp.disk.st/admin/write-post.php?cid=4222
那么就简单了,在输出post-entry的时候按规则输出连接就行。
翻了一下主题,是通过$this->cid来输出文章ID的。
对了,重点是管理管理员可见,翻了一下Typecho的权限体系,分为5个等级,详细请看权限控制
尼玛什么代码示例都没有,好吧,只能输出看看咯,其实不用输出都知道应该是命名为group了,这里直接给出输出用户组的方法。
<?php echo get_object_vars ($this->user)['row']['group']; ?>;
然后两者结合一下,OK啦。
<?php $currGroup = get_object_vars($this->user) ['row']['group'];
if ($currGroup == "administrator"): ?>
<a data-no-instant="" href="<?php $this->options->siteUrl(); ?>admin/write-post.php?cid=<?php echo $this->cid; ?>"><?php _e('Edit'); ?></a>
<?php endif; ?>
2016-04-14更新
今天在测试站测试主题的时候发现Edit按钮不能用,尼玛我后台路径改了,需要动态获取后台路径才行。
<a href="<?php echo str_replace('login.php','',$this->options->loginUrl); ?>write-post.php?cid=<?php echo $this->cid; ?>"><?php _e('Edit'); ?></a>
预览
其实,只要这样就可以了
<?php $currGroup = get_object_vars($this->user) 'row';
<?php endif; ?
?php $currGroup = get_object_vars($this->user) 'row';
?php endif; ?>
该用<>包裹的包一下
啧,代码老是发不出去,扔github上了 github.com/Rowingbohe/Rowingbohe/blob/master/Codes/Typecho-Admin-Article.md
嗯,简化了一点
这个功能很实用,有时候自己看文章想修改到后台搜索真麻烦。
具体要改那个php文件啊?
当然是文章页啊