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;
    }

 

文哥博客(https://wenge365.com)属于文野个人博客,欢迎浏览使用

联系方式:qq:52292959 邮箱:52292959@qq.com

备案号:粤ICP备18108585号 友情链接