php小系统前端基类定义
所属分类:php | 发布于 2024-11-06 17:48:28
定义一些变量
/**
* @var array
* $seoData['seoTitle']
* $seoData['seoKeywords']
* $seoData['seoDescription']
*/
protected array $seoData = [];
/**
* @var array
* $optionData['siteName'] // 站点名称
* $optionData['homePageUrl'] // 站点首页
* $optionData['recordNumber'] // 备案号
*/
protected array $optionData = [];
// 给assign()函数使用的临时变量,在前端页面不体现
protected array $assignData = [];
// 面包屑
protected array $crumbs = [];
// 导航菜单
protected array $webMenus = [];
// 当前导航菜单
protected string $webMenuActive = '';
// 资源文件域名,如果需要
protected string $assetDomain = '';
// 文件域名,如果需要
protected string $fileDomain = '';
// Js版本,如果需要,可从数据库或配置文件中读取
protected int $jsVersion = 0;
// Css版本,如果需要,可从数据库或配置文件中读取
protected int $cssVersion = 0;
// 页面注册的Js文件
protected static array $registerJsFiles = [];
// 页面注册的Css文件
protected static array $registerCssFiles = [];
// web用户
protected array $webUser = [];
// 此模版定制使用
protected string $pageTitle = '';
protected string $listPageTitle = '';
设置菜单
protected function setMenuData(): void
{
if ($this->webUser) {
$this->webMenus = config('webConfig.webLoggedMenus');
} else {
$this->webMenus = config('webConfig.webMenus');
}
}
设置Seo信息
/**
* 设置SEO信息
*/
private function setSeoData(): void
{
if(isset($this->optionData['site_name'])) {
$this->seoData['seoTitle'] = $this->optionData['site_name'];
} else {
$this->seoData['seoTitle'] = '';
}
$this->seoData['seoKeywords'] = '';
$this->seoData['seoDescription'] = '';
}
/**
* 设置SEO标题
* @param $title
*/
protected function setSeoTitle($title): void
{
$this->seoData['seoTitle'] = $title;
}
/**
* 设置SEO关键字
* @param $keywords
*/
protected function setSeoKeywords($keywords): void
{
$this->seoData['seoKeywords'] = $keywords;
}
/**
* 设置SEO描述
* @param $description
*/
protected function setSeoDescription($description): void
{
$this->seoData['seoDescription'] = $description;
}
重写assign函数
protected function assign(string $key, $val): void
{
$this->assignData[$key] = $val;
}