Typecho 主题开发 - 文章自定义字段和主题设置字段

2021-03-02T11:09:00

在 Typecho 官方的主题开发文档中,很少有关于文章自定义字段和主题设置相关的开发说明。我也是查看了一些开源主题的代码才搞懂自定义字段和主题设置的开发。这里就简单写一下文章自定义字段和主题设置的定义和调用。

文章自定义字段
文章自定义字段定义后会显示在文章编辑界面的编辑框下方,用户可以使用定义好的选项来设置每篇文章的偏好,在输出文章的时候可以调用用户的设置,实现一些个性化功能。

文章自定义字段需要在主题目录下的 functions.php 文件中的 themeFields 函数中定义。

input 输入框
下面定义一个 input 输入框:

function themeFields($layout) {
$image = new Typecho_Widget_Helper_Form_Element_Text('image', null, null, _t('文章头图'), _t('文章头图会显示在文章的顶部。'));
$mmusic->input->setAttribute('class', 'w-100 setfb');
$layout->addItem($image);  //  注册
}

$mmusic->input->setAttribute('class', 'w-100 setfb');是设置输入框CSS长度的
Typecho_Widget_Helper_Form_Element_Text 的第一个参数是字段名。第二个参数目前暂时未知。第三个参数是默认值。第四个参数是提示信息,会显示在输入框关联的 label 标签中。第五个参数是更详细的提示信息,会显示在输入框下方。

在输出文章的时候可以通过 $this->fields->image() 输出自定义字段的内容,其中的 image 就是字段名称。如果要判断字段是否有内容可以直接用 if 来判断 $this->fields->image ,如果有内容就会返回 true ,否则就返回 false 。

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »