您现在的位置是:首页 > 教程 > pbootcms教程pbootcms教程
pbootcmsV2.0.6新增的个人扩展标签定制每日一图的方法
怀亦2023-01-29 23:49:25pbootcms教程已有人查阅
导读自PbootCmsV2.0.6开始,pbootcms支持自定义标签,且升级不被覆盖。妈妈再也不用担心我的代码升级被覆盖啦。于是就想到用这个功能定制一个每日一图
自PbootCmsV2.0.6开始,pbootcms支持自定义标签,且升级不被覆盖。妈妈再也不用担心我的代码升级被覆盖啦。于是就想到用这个功能定制一个每日一图。这个文件位置在 home下ExtLabelController控制器。话不多说,先找图源。度娘告诉我必应搜索就有每日一图的API。
地址是这个:
用pbootcms自带的get_url方法直接抓取一下就搞定。
上代码:
下面是整个ExtLabelController文件的代码:
地址是这个:
https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1
获取到的是一串JSON,正和我意。用pbootcms自带的get_url方法直接抓取一下就搞定。
上代码:
//抓取必应每日一图
public function getBingImage(){
$url = 'https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1';
$data = json_decode(get_url($url));
$result = $data->images[0];
$image = 'https://www.bing.com'.$result->url;
return $image;
}
然后再给自己定制一个标签就好啦。
// 扩展单个标签
private function diylabel()
{
$this->content = str_replace('{pboot:walle}', $this->getBingImage(), $this->content);
}
最后只要在模板文件中写上 {pboot:walle} 就调用出图片地址。把这个放在 <img> 标签中,或者放在 background 中,至此,搞定。下面是整个ExtLabelController文件的代码:
<?php
/**
* @copyright (C)2020-2099 Hnaoyun Inc.
* @author XingMeng
* @email hnxsh@foxmail.com
* @date 2020年3月8日
* 个人扩展标签可编写到本类中,升级不会覆盖
*/
namespace app//home//controller; /* 此处双斜杠需要换成单反斜杠*/
use core//basic//Controller; /* 此处双斜杠需要换成单反斜杠*/
class ExtLabelController
{
protected $content;
/* 必备启动函数 */
public function run($content)
{
// 接收数据
$this->content = $content;
// 执行个人自定义标签函数
$this->diylabel();
// 返回数据
return $this->content;
}
// 扩展单个标签
private function diylabel()
{
$this->content = str_replace('{pboot:walle}', $this->getBingImage(), $this->content);
}
//抓取必应每日一图
public function getBingImage(){
$url = 'https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1';
$data = json_decode(get_url($url));
$result = $data->images[0];
$image = 'https://www.bing.com'.$result->url;
return $image;
}
}
最终效果,请移步bpootcms官网首页banner图欣赏最终效果。
本文标签:
很赞哦! ()
相关文章
- pbootcms异常提示 Undefined constant"PAGE
- pbootcms百度推送提示not_same_site的解决方法
- pbootcms后台图片上传提示”上传失败:存储目录创建失败!的解决
- pbootcms实现php+ajax文件上传
- pbootcms系统QQ邮箱接受邮件的配置方法
- pbootcms修改权限后仍然提示“会话目录写入权限不足”的解决方法
- lamp分离部署安装pbootcms
- pbootcms符合SEO优化的目录结构分析
- pbootcms提示“未检测到您服务器环境的sqlite3数据库扩展”的解
- pbootcms升级PHP版本需要注意什么
- pbootcms判断用户是否登录并排除Cookie过期但仍显示已登录的方法
- pbootcms加载类文件时错误类名【core\\basic\\Kernel】的解决方
随机图文
-
Pbootcms开发助手高效版标签调用软件
快捷键:ECS键 唤出软件 多次试验发现ECS键比波浪键好按一点。F1-F6键 自动输入常用代码 可以自由设定输入的内容。 -
pbootcms标签新增扩展标签实现单独手机端详情判断的方法
部分客户想要新闻内容移动端单独发布,不和pc同一个内容,因为有些pc排版在移动端不是最佳。可以用pbootcms做个判断当前设备是否手机扩展标签, -
pbootcms后台编辑器反斜杠被过滤了怎么解决
拿pbootcms来做博客记录代码信息的时候,会发现编辑器里的反斜杠(反斜线)都被过滤成了正方形,这是为什么呢? -
pbootcms内页打不开的解决方法
最近有同学遇到pbootcms内页无 常访问的情况。包括但不限于:1、点任何链接都跳转到首页2、内页访问报错。
留言与评论 (共有 条评论) |