帝国CMS熊掌号H5页面改造方案
一、添加canonical标签(必选)
<link rel="canonical" href="http(s)://xxx"/>
要求href的内容为mip页或h5页对应的PC页地址,如果没有PC页的情况,当前页面是mip页面的可以填写h5页面地址,如果也没有h5页面,可以不添加canonical标签;当前页面如果是h5页面,也没有pc页同样可以不添加这个标签。
帝国CMS的应该写
<link rel="canonical" href="http(s)://www.abc.com[!--titleurl--]"/>
把上面的网址改成你自己的
二、添加Json_LD数据(必选)

字段说明:
@context: 必选字段,结构化数据json-ld的schema地址,保持和上例一致
@id: 必选字段,当前网页的url
title:必选字段,展现在官方号首页中的标题,建议长度:20个字符以内
images:可选字段,展现在官方号首页中的图文信息,如果字段存在仅允许提供1张图或3张图的数据
description:可选字段,标明网页的内容摘要
pubDate: 必选字段,标明网页的发布时间
帝国改造方案
@id应该写 "@id": "http://此处换为你的网站[!--titleurl--]",
title:”[!--title--]”
images:[”[!--titlepic--]”]
Description:”[!--smalltext--]”
现在讲到重点了,根据示例要对时间代码进行简单的处理 才能符合官方标准
帝国pubDate格式化用
<?=date("Y-m-d",$navinfor['newstime'])?>T<?=date("H:i:s",$navinfor['newstime'])?>
下面是完整代码 放在 标签前面
<script type="application/ld+json">
{
"@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
"@id": "[!--titleurl--]",
"appid": "百度给的熊掌ID",
"title": "[!--pagetitle--]",
"images": [
<?php
$str=$navinfor['newstext'];
$str = str_replace('http://你的域名/d/file/','/d/file/',$str);//把图片格式统一化,如果是远程图片需要注意。
$str = str_replace('/d/file/','http://你的域名/d/file/',$str);//把相对地址改成绝对地址;
preg_match_all('/http:.*?(jpg|gif|png|bmp)/' ,$str, $img);//取出图片地址;
echo '"'.$img[0][1].'"'.',';//第一张
echo '"'.$img[0][2].'"'.',';//第二张
echo '"'.$img[0][3].'"';//第三张
?>
],
"description": "[!--smalltext--] ",
"pubDate": "<?=date("Y-m-d",$navinfor['newstime'])?>T<?=date("H:i:s",$navinfor['newstime'])?>"
}
</script>
<script src="//msite.baidu.com/sdk/c.js?appid=百度给的熊掌ID"></script>
其中 "@id": "[!--titleurl--]", 如果你的网站没有使用绝对地址 需要改为 "@id": "http://改为你的域名[!--titleurl--]",
另一种方法 只取文章一个图片 其它两个使用固定图片代替 测试审核通过
<link rel="canonical" href="[!--titleurl--]"/>
<script type="application/ld+json">
{
"@context": "https://ziyuan.baidu.com/contexts/cambrian.jsonld",
"@id": "[!--titleurl--]",
"appid": "1585197816243468",
"title": "[!--title--]",
"images": [
"https://你的域名[!--titlepic--]",
"https://你的域名/images/logo.png",
"https://你的域名/images/logo.png"
],
"description": "[!--smalltext--]",
"pubDate": "<?=date("Y",$navinfor['newstime'])?>-<?=date("m",$navinfor['newstime'])?>-<?=date("d",$navinfor['newstime'])?>T<?=date("H",$navinfor['newstime'])?>:<?=date("i",$navinfor['newstime'])?>:<?=date("s",$navinfor['newstime'])?>"
}
</script>
帝国CMS熊掌号改造后无法加载多张图片解决办法
<?php $str = stripcslashes($navinfor[newstext]); preg_match_all( '/<img.*?src="(.*?)".*?>/is', $str, $imgArr ); $imgArr = array_unique( $imgArr[1] ); ?> <?=count($imgArr)?>张 <img src="<?=$imgArr[0]?>"> <img src="<?=$imgArr[1]?>"> <img src="<?=$imgArr[2]?>">
把以上代码放在
"images": [ 放在这里 ],
THE END







