
Archives for 日常随笔
用pbootcms时候,当一个字段为空时候,我们调用另外一个字段,要怎么写呢?其实方法很简单,比起dedecms还是比较容易调用的,调用方法如下:
比如我们建立了一个icos的字段为图片字段,当这个字段不为空时候就调用这个字段,为空时候就调用缩略图。
{pboot:if(''!='')}{else}{/pboot:if}
...more»
pbootcms上一篇下一篇调用 如何把“没有了”改成英文
上一篇:{content:precontent}
下一篇:{content:nextcontent}
增加参数 notext='no more' 设置“没有了”文本,设置参数时如果带空格,需要用单引号
例子:
上一篇:{content:precontent notext='no more'}
下一篇:{content:nextcontent notext='no more'}
拓展:
上一篇内容链接:{content:prelink}
下一篇内容链接:{content:nextlink}
上一篇内容标题:{content:pretitle}
下一篇内容标题:{content:nexttitle}
上一篇内容缩略图:{content:preico}
下一篇内容缩略图:{content:nextico}
...more»
了解一下,表示序号,从1开始
结合pbootcms的if判断标签
{pboot:nav}
{pboot:if(>1)}
<a href=""></a>
{/pboot:if}
{/pboot:nav}
当需要大于1的时候开始显示,也可以按你实际的需求调整这个判断。
...more»
在 PbootCMS 中,如果你想生成一个二维码标签,可以使用自定义的标签 {pboot:qrcode} 来实现。下面是如何定义和使用这个标签的具体步骤:
1. 创建二维码生成类
首先,你需要创建一个用于生成二维码的类。这里可以使用 PHP 的 endroid/qr-code 库来生成二维码。
安装 endroid/qr-code 库
通过 Composer 安装 endroid/qr-code:
sh
composer require endroid/qr-code
创建二维码生成类
在 common 目录下创建一个文件 QrCode.php:
php
<?php
namespace app\common\library;
use Endroid\QrCode\QrCode;
class QrCodeGenerator
{
public static function generate(string $string): string
{
$qrCode = new QrCode($string);
return $qrCode->writeString();
}
}
2. 注册自定义标签
接下来,你需要注册自定义标签 {pboot:qrcode}。
创建标签注册文件
在 common 目录下创建一个文件 QrCodeTag.php:
php
<?php
namespace app\common\taglib;
use think\Template\TagLib;
class QrCodeTag extends TagLib
{
protected ...more»
为了去掉 UEditor 上传图片时自动添加的 title 和 alt 属性,并且将 alt 属性设置为空,可以按照以下步骤进行修改:
步骤 1:修改 ueditor.all.min.js 文件
打开文件:
打开文件 \core\extend\ueditor\ueditor.all.min.js。
搜索并修改代码:
搜索 "imageUrlPrefix",找到以下代码:
javascript
g.setAttribute("title", f.title || ""), g.setAttribute("alt", f.original || "")
将其修改为:
javascript
g.setAttribute("title", ""), g.setAttribute("alt", "")
继续修改代码:
找到以下代码:
javascript
g.removeAttribute("id"),
在这段代码后面添加:
javascript
g.removeAttribute("title"),
最终修改后的代码如下:
javascript
g.setAttribute("title", ""), g.setAttribute("alt", "");
g.removeAttribute("id"),
g.removeAttribute("title"),
步骤 2:给引入的 JS 文件增加版本号
打开文件:
打开文件 \apps\admin\view\default\common\ueditor.html。
修改引入的 JS 文件路径:
找到以下代码:
html
<script type="text/javascript" src="{CORE_DIR}/extend/ueditor/ueditor.all.min.js"></script>
修改为:
html
<script type="text/javascript" src="{CORE_DIR}/extend/ueditor/ueditor.all.min.js?v=1"></script>
...more»
要在 PbootCMS 中修改文章的默认访问量,使其在添加文章时设置一个随机访问数,可以按照以下步骤操作:
找到并修改 ContentController.php 文件。
添加随机访问数代码。
更新访问量字段。
修改步骤
1. 找到并修改 ContentController.php 文件
打开文件 apps/admin/controller/content/ContentController.php。
2. 添加随机访问数代码
在 session('addscode', $scode); 下方添加一行代码:
php
// 添加随机访问数
$visits = rand(100, 200);
3. 更新访问量字段
找到以下代码:
php
'visits' => 0,
将其修改为:
php
'visits' => $visits,
...more»
在 PbootCMS 中,如果你需要在模板的内容页中调用当前页面的完整 URL,可以结合使用 {pboot:httpurl} 和 {content:link} 来实现。这样可以确保生成的 URL 是完整的,并且包含了当前页面的路径。
示例代码
假设你需要在模板的内容页中调用当前页面的完整 URL,可以使用以下代码:
html
<!-- 获取当前页面的完整 URL -->
<a href="{pboot:httpurl}{content:link}">完整 URL</a>
详细说明
{pboot:httpurl}:
获取当前站点的根 URL,包括协议(HTTP 或 HTTPS)。
例如:https://example.com
{content:link}:
获取当前内容的相对链接。
例如:/article/123
...more»
遇到 Undefined constant "PAGE" 的错误提示,通常是因为在代码中使用了一个未定义的常量。这可能是由于以下几个原因导致的:
拼写错误:常量名称拼写错误。
命名空间问题:常量所在的命名空间没有正确引入。
配置文件或环境变量未正确加载。
解决方法
检查常量拼写:
确认常量名称是否正确拼写。
确认常量是否已经定义。
引入命名空间:
如果常量位于某个命名空间中,请确保正确引入该命名空间。
检查配置文件:
确认配置文件中的常量定义是否正确加载。
示例代码
假设你在 PHP 代码中使用了 PAGE 常量,但出现了 Undefined constant "PAGE" 的错误。我们可以逐步排查并解决这个问题。
1. 确认常量定义
假设 PAGE 常量是在某个配置文件中定义的,例如 config.php:
php
// config.php
define('PAGE', 'page');
2. 引入配置文件
在主文件中引入配置文件:
php
// index.php
require_once 'config.php';
echo PAGE; // 输出 'page'
具体示例
假设你在 PbootCMS 的模板文件中使用了 PAGE 常量,但出现了 Undefined constant "PAGE" 的错误。我们可以逐步排查并解决这个问题。
1. 检查常量定义
假设 PAGE 常量是在某个 PHP 文件中定义的,例如 constants.php:
php
// constants.php
define('PAGE', 'page');
2. 引入常量文件
在模板文件中引入常量文件:
php
// template.php
require_once 'constants.php';
echo PAGE; // 输出 'page'
在 PbootCMS 中的具体应用
假设你在 PbootCMS 的模板文件中使用了 PAGE 常量,但出现了 Undefined constant "PAGE" 的错误。可以按照以下步骤解决:
确认常量定义:
确认 PAGE 常量是否在全局配置文件中定义。
引入常量文件:
在模板文件中引入常量文件。
示例代码
假设 PAGE 常量定义在 includes/constants.php 文件中:
php
// includes/constants.php
define('PAGE', 'page');
在模板文件中引入常量文件:
php
// templates/article_detail.php
<?php require_once 'includes/constants.php'; ?>
<h1>文章详情</h1>
<!-- 文章标题 -->
<h2><?php echo $article->title; ?></h2>
<!-- 文章内容 -->
<div><?php echo $article->content; ?></div>
<!-- 相关文章 -->
<h2>相关文章</h2>
<div class="related-articles">
...more»
在 PbootCMS 中,可以使用 {pboot:list} 标签来调用相关文章。相关文章通常是根据分类或其他条件筛选出来的文章。下面是一个详细的示例,展示如何在模板内页调用相关文章。
示例代码
假设你想在一个文章详情页中调用与当前文章相同分类下的其他文章,可以使用以下代码:
html
{pboot:list scode={sort:scode} num=4}
<div class="related-article">
<h3>{list:title}</h3>
<p><a href="">{list:title}</a></p>
<p>{list:summary len=100 more="..."}</p>
</div>
{/pboot:list}
详细说明
{pboot:list} 标签:
scode={sort:scode}:表示从当前分类(sort:scode)中调用文章。
num=4:表示最多调用 4 篇相关文章。
内部标签:
:表示文章标题。
:表示文章链接。
:表示文章摘要。
完整示例
假设你有一个文章详情页模板,可以在其中调用相关文章:
html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>文章详情页</title>
</head>
<body>
<h1>文章详情</h1>
...more»
