首页
留言反馈
网站导航
推荐
毒鸡汤
Search
1
非插件为typecho 文章生成微海报分享
18,821 阅读
2
主题移动端,样式下添加二级分类
15,378 阅读
3
主题 添加author page
14,693 阅读
4
主题添加移动端下边栏
12,711 阅读
5
EMlog添加评论者邮箱等级
9,059 阅读
typecho
dynamic
SuiYu
Emlog
xiuno
登录
/
注册
Search
标签搜索
代码
xiuno
php
css
typecho
评论
模板
say
js
修改教程
标签
珍惜
努力
recommend
善良
样式
调用
微笑
颜色
插件
Vincent
累计撰写
151
篇文章
累计收到
184
条评论
首页
栏目
typecho
dynamic
SuiYu
Emlog
xiuno
页面
留言反馈
网站导航
推荐
毒鸡汤
搜索到
3
篇与
的结果
2022-12-18
typecho调用多张缩略图,非插件实现
代码如下:/** 输出文章缩略图 */ function showThumbnail($widget,$imgnum){ //获取两个参数,文章的ID和需要显示的图片数量 // 当文章无图片时的默认缩略图 $rand = rand(1,20); $random = $widget->widget('Widget_Options')->themeUrl . '/img/rand/' . $rand . '.jpg'; // 随机缩略图路径 $attach = $widget->attachments(1)->attachment; $pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i'; $patternMD = '/\!\[.*?\]\((http(s)?:\/\/.*?(jpg|png))/i'; $patternMDfoot = '/\[.*?\]:\s*(http(s)?:\/\/.*?(jpg|png))/i'; //如果文章内有插图,则调用插图 if (preg_match_all($pattern, $widget->content, $thumbUrl)) { echo $thumbUrl[1][$imgnum]; } //没有就调用第一个图片附件 else if ($attach && $attach->isImage) { echo $attach->url; } //如果是内联式markdown格式的图片 else if (preg_match_all($patternMD, $widget->content, $thumbUrl)) { echo $thumbUrl[1][$imgnum]; } //如果是脚注式markdown格式的图片 else if (preg_match_all($patternMDfoot, $widget->content, $thumbUrl)) { echo $thumbUrl[1][$imgnum]; } //如果真的没有图片,就调用一张随机图片 else{ echo $random; } }调用的代码就是以下这样,从0开始算,数字0则调用第一张<?php showThumbnail($this,0); ?>
2022年12月18日
4,213 阅读
0 评论
4 点赞
2020-10-30
友情链接插件1.2.2帮助文档
功能描述本版本的友情链接可以支持以下的功能:1、方便地在侧边栏添加友情链接。 2、支持两种输出方式。一种为函数输出方式,主要用于侧边栏的友情链接,或者模板开发者设计的友情链接模板等。另一种方式为HTML标签式输出,主要方便用户建立自己的友情链接页面。 3、支持文字友链、图片友链、图文混合友链等。内设这三种默认的输出方式,支持自定议设定输出规则。 4、支持友链分类,方便管理。 5、支持友链启用禁用,方便管理。 6、支持友链拖拽排序,方便管理。 7、支持友链邮箱解析头像链接,方便用户添加无图片的友链。 8、支持增加自定义字段,方便用户做一些个性扩展。 使用帮助 插件的安装:解压至插件目录后,激活即可。如果已经安装旧版本的本插件,需要禁用后重新激活。友情链接插件主要有两种调用方式。第一种为函数调用法。函数的原型为:output($pattern=NULL, $links_num=0, $sort=NULL)其中,$pattern是输出规则。输出规则是Links插件的一种特殊语法。使用输出规则,可以定制出属于自己的友链输出方式。例如:<li><a href="{url}" title="{title}" target="_blank">{name}</a></li>这就是一个输出规则的例子。经过插件解析后,{url}将会被替换成友链地址,{title}将会被替换友链描述,{name}将会被替换成友链名称。Links插件目前支持的输出规则有:{lid}友链在数据表中存放的ID {url}将会被替换成友链地址 {sort}友链的分类名称 {title}{description}将会被替换友链描述,两者效果一样 {name}将会被替换成友链名称 {image}将会被替换成友链图片 {user}自定义字段插件自带三种输出规则:显示文字、显示图片及图文混排。当$pattern值为NULL或SHOW_TEXT时,则规则为显示文字。<li><a href="{url}" title="{title}" target="_blank">{name}</a></li>当$pattern值为SHOW_IMG时,则规则为显示图片。<li><a href="{url}" title="{title}" target="_blank"><img src="{image}" alt="{name}" /></a></li>当$pattern值为SHOW_MIX时,则规则为显示图片和文字<li><a href="{url}" title="{title}" target="_blank"><img src="{image}" alt="{name}" /><span>{name}</span></a></li>$links_num是用于控制友链输出的条数的。当$links_num为缺省值0时,表示不进行限制,输出满足条件的所有友链。$sort用于指定输出的友链类别,以实现友链的分类输出。缺省值NULL表示输出所有类别的友链。第二种输出为HTML标签调用法。可以在文章或页面中加入HTML标签来实现友链的调用。其调用原型为:<links $links_num $sort>$pattern</links>$links_num $sort $pattern的功能及缺省值与第一种一样。不过,为了$links_num和$sort缺省值的识别,建议$sort采用的命名方式为:以字母开头,仅包括字母和数字。 使用向导:在侧边栏添加友情链接在0.8默认主题上,已经集成了本插件的调用接口。因此,不需要任何的修改即可直接使用。如果主题没有本插件接口,可按照以下方式进行调用。最简单的调用方式为:<?php Links_Plugin::output(); ?>此时,会列出所有的友链。如果想调用的为图片友链,则调用方式为:<?php Links_Plugin::output("SHOW_IMG"); ?>如果是图文的混合友链,则调用方式为:<?php Links_Plugin::output("SHOW_MIX"); ?>如果想限制侧边栏的友链数量,比如说为10个,则可调用:<?php Links_Plugin::output("SHOW_TEXT", 10); ?>图片友链依此类推。如果想列出某个类别的友链,则可调用:<?php Links_Plugin::output("SHOW_TEXT", 0, "testsort"); ?> 使用向导:建立独立的友情链接页面建立独立的友情页面,可以直接用类似建立侧边栏的方式,在模板设计阶段,就设计好友链模板。也可以在后台的页面创建进行友链引用。最简单的引用方式为:<links></links>如果想调用的为图片友链,则调用方式为:<links>SHOW_IMG</links>如果是图文的混合友链,则调用方式为:<links>SHOW_MIX</links>如果想限制侧边栏的友链数量,比如说为10个,则可调用:<links 10>SHOW_TEXT</links>图片友链依此类推。如果想列出某个类别的友链,则可调用:<links 0 testsort></links>也可以用<links testsort></links>不过,后者要求分类必须以字母开头。最后要注意的是: 分类名只能包含字母及数字!
2020年10月30日
1,320 阅读
0 评论
3 点赞
2020-10-06
Typecho调用单独页面评论代码
<?php //start page comments $slug = "message"; //页面缩略名 $limit = 10; //调用数量 $length = 30; //截取长度 $ispage = true; //true 输出slug页面评论,false输出其它所有评论 $isGuestbook = $ispage ? " = " : " <> "; $db = $this->db;//Typecho_Db::get(); $options = $this->options;//Typecho_Widget::widget('Widget_Options'); $page = $db->fetchRow($db->select()->from('table.contents') ->where('table.contents.status = ?', 'publish') ->where('table.contents.created < ?', $options->gmtTime) ->where('table.contents.slug = ?', $slug)); if( $page ){ $type = $page['type']; $routeExists = (NULL != Typecho_Router::get($type)); $page['pathinfo'] = $routeExists ? Typecho_Router::url($type, $page) : '#'; $page['permalink'] = Typecho_Common::url($page['pathinfo'], $options->index); $comments = $db->fetchAll($db->select()->from('table.comments') ->where('table.comments.status = ?', 'approved') ->where('table.comments.created < ?', $options->gmtTime) ->where('table.comments.type = ?', 'comment') ->where('table.comments.cid '.$isGuestbook.' ?', $page['cid']) ->order('table.comments.created', Typecho_Db::SORT_DESC) ->limit($limit) ); foreach($comments AS $comment) { echo '<li>'; echo '<a href="'. $page['permalink']."#comment-".$comment['coid'] .'" title="'.$comment['text'].'">'; echo Typecho_Common::subStr(strip_tags($comment['text']), 0, $length, '...').'</a>'; echo '</li>'; } }else{ echo "<li>No Comments</li>"; } //end page comments ?>可以将以上代码保存为 commlist.php 文件,放在 /usr/themes/ 目录下,在需要调用的主题模板中,输入以下代码<ul> <!--?php include_once "../commlist.php"; ?--> </ul>转载于:MR.ASONG
2020年10月06日
1,236 阅读
0 评论
2 点赞