标签 typecho 下的文章

为了避免与其他播放器插件冲突,请卸载其他播放器插件后在安装本插件
兼容 AudioPlayer 的添加格式,可使用
[mp3]歌曲地址[/mp3]
格式添加音乐,但是不支持用逗号分隔多个地址
建议直接使用 html5 的 audio 和 video 标签添加音乐和视频,例如:
<audio src="http://a.com/b.mp3"></audio>
默认不自动播放

github


将下面代码添加到 typecho 头部模版的开头即可实现简单的 JSON 输出,实现 API 效果。
API 的使用大家就自己发挥吧。

头部模版一般位于
usr/themes/default/header.php
可以查找到:
<!DOCTYPE html>
在这一行的前面添加下面的代码:

<?php
if (stripos($this->request->getRequestUri(), 'json')) {
    $arr = array();
    while ($this->next()) {
        $a = array('title' => $this->title, 'date' => $this->date->format('Y-m-d'), 'content' => $this->content, 'categories' => $this->categories, 'tags' => $this->tags);
        $arr[] = $a;
    }
    $this->response->throwJson(array("servererror" => "", "status" => 1, "message" => $arr));
}
?>

typecho0.9 rc版本已经试出,安装体验之后,之前在beta2里的问题大多数都得到了修正。
下面是新发现的一些问题,主要都是与键盘操作有关的。

后台管理菜单中的所有子菜单,例如下面一段代码,这个checkbox没有加上文本描述。下拉菜单的这个按钮上的提示文本我困惑了一阵子才明白含义(我想改为“对选中项进行。。。”是不是会容易理解一些)。
另外这个button里出现了一个href属性。

                    <div class="operate">
                        <input type="checkbox" class="typecho-table-select-all" />
                        <div class="btn-group btn-drop">
                            <button class="dropdown-toggle btn-s" type="button" href="">选中项 <i class="i-caret-down"></i></button>

后台管理标签,现在貌似还是不能支持键盘操作。我看到代码中有checkbox,但是在显示层面没有找到用键盘让这些checkbox显示的方法,也就没找到办法怎么用键盘进行标签的选中或者删除或者合并。

我注意到所有的表单提交都使用了button元素而不是input,这里面有什么道理呢?
<input type="submit" value="提交评论" />
<button type="submit">提交评论</button>

默认模板中文章标签的代码,从语义化角度看用p好还是div好呢?
<p class="tags"><?php _e('标签:'); ?><?php $this->tags(', ', true, 'none'); ?></p>

评论表单中,email和网址都是有是否必选的判断的,不过漏掉了required这个属性。

默认模板里大多数文件使用空格作为缩进,而post.php和page.php则用了制表符做缩进。

在下面的链接中,title加载a还是i上更好呢?
<a href="http://localhost/typecho/index.php/archives/1/"><i class="i-exlink" title="浏览 欢迎使用 Typecho" /></i></a>

评论列表中评论时间是否有必要加链接呢?或者加链接有什么意义吗?
<div class="comment-meta"><a href="http://www.qt.hk/about.htm/comment-page-1#comment-4636">2012年 7月 13日 18:16:25</a></div>

xp系统,ie8浏览器,后台所有js失效,不知是正常情况还是?


体验过了typecho0.9 beta2之后,感觉特别良好。
全新的默认模板,我无法感知到视觉效果如何,但html和css代码是我目前看过的最漂亮的。

尤其值得赞赏的是,typecho0.9在信息无障碍方面做了专门的优化。所有表单元素都使用了label进行文本提示,同时后台模板中已经加入了对landmark的支持。
这些优化,对于我而言是最惊喜的地方,因为这些优化让读屏软件访问的更加流畅,更加高效。

别的暂且不说,先吧发现的问题总结一下:

后台

漏掉landmark的main属性

  1. 安装完成后,直接进入后台
  2. 插件管理页面
  3. 外观管理页面
  4. 外观编辑
  5. 外观设置
  6. 设置的所有子菜单(对于主要内容区域只有一个表单的情况,不写main似乎是更符合实际使用场景)

撰写

“自定义字段”这个按钮没有键盘焦点,目前只能用鼠标点击才能展开。

自定义字段,label关联有错,
for="title"
第一与文章标题的id重复,其次自定义字段里的input都没有写id属性。
读屏软件访问 的结果是文章标题的提示文本关联到了自定义字段最后一个input,也就是字段值,所以会听到很诡异的一个提示,在文章标题却提示“自定义字段值”。

选项和附件两个按钮只能选择显示其中之一,为什么不能两个区域都隐藏呢?

关于日期选择,我想应该是有一个日期选择组建把,如果有的话,貌似无法支持键盘操作。

标签输入框,当标签输入框获得焦点之后,便无法按tab键离开,不知什么原因?

导航菜单

导航菜单的子菜单貌似并不是使用display来显示和隐藏的,而是修改他们的visibility来实现的。
这样对于读屏软件来说,无论子菜单是否可见,都可以被访问到。因为读屏软件并不过滤visibility控制的元素,而display:none时,读屏软件则会自动忽略他们。
究竟是让读屏软件始终访问到子菜单好呢,还是遵循视觉效果一致性,不可见的内容,读屏软件也不该获取到呢?

“管理”菜单

“管理”菜单下的所有功能对键盘访问来说,都有非常大的挑战,具体问题就暂且不说了,后续专门总结。

前台

前台模板还没有加入landmark支持。

评论表单的评论内容,label关联有错,
<label for="textarea"
但后面textarea里并没有这个id。textarea里的name是text,我想id直接用text也应该没问题,那么前面的label也应该改成for="text"