在当今数字化时代,网站的多终端适配已经成为不可或缺的一部分。对于使用DedeCMS搭建的网站来说,启用二级域名以支持手机站点是一个非常实用的功能。下面将详细介绍如何通过一系列步骤实现这一目标。

首先,你的主机需要支持绑定子目录或者具备独立服务器的能力,这是进行子域名绑定的前提条件。
接下来,我们将按照以下步骤来完成整个过程:

1:完成主机子域名及域名解析工作。
以西部数码主机为例,它支持绑定子目录操作。如下图所示:
(此处为原图位置,建议替换为文字描述或上传新图片)
确保你的主机服务商提供类似功能,并正确设置子域名解析。

2:进入DedeCMS后台,找到系统 - 系统基本参数 - 添加变量。
此步骤用于配置新的系统变量,以便更好地支持二级域名功能。
(同样,此处可插入相关截图的文字说明)

3:开启“支持多站点”选项。
在系统设置中找到“(是/否)支持多站点”选项并开启。这一步骤允许附件、栏目链接以及arclist内容使用绝对网址,从而解决图片路径问题,确保主站与手机站点之间的数据同步无障碍。


// 示例代码展示如何修改部分文件
$fileurl = $cfg_cmsurl.$activepath.'/'. $filename;
    


4:调整手机模板中的CSS和JS调用路径。
为了保证资源能够正确加载,需要将所有相对路径改为绝对路径。例如,将`/css/style.css`改为`http://yourdomain.com/css/style.css`。

5:修改PC端模板的跳转识别代码。
将原有的meta标签: 更改为:

6:编辑核心PHP文件。
定位到`include\\dialog\\select_images_post.php`文件的第108行,将代码替换为支持绝对路径的形式。

7:扩展函数库。
在`include`目录下的`extend.func.php`文件末尾添加一个自定义函数`replaceurl()`,用于动态替换文章内的图片地址为绝对路径。具体代码如下:

function replaceurl($newurl){
    $newurl=str_replace('src="/uploads/allimg/', 'src="http://你的域名/uploads/allimg/', $newurl);
    return $newurl;
}
    
同时,将调用文章正文内容的标签从{dede:field.body/}更改为{dede:field.body function='replaceurl(@me)'/}。

完成以上所有步骤后,你的DedeCMS网站应该已经成功启用了二级域名支持的手机站点功能。如果有任何疑问或遇到问题,请随时留言反馈!