The*_*ian 6 php iframe google-calendar-api
我已经在我的网站上嵌入了一个显示多个日历的谷歌日历,但我希望日历显示的颜色不是默认选项.
请求URL包含每个日历的颜色参数,但似乎不接受非默认颜色.(渲染的颜色似乎也不一样)
看源头; 每个事件的颜色由内联CSS定义,并且似乎没有可用于通过CSS文件设置样式的类或ID属性.
我已经尝试使用PHP获取日历的html,然后使用字符串替换来更改颜色(基于此答案),但它不会更改颜色我正在使用的PHP文件:
<?php
$content = file_get_contents('https://www.google.com/calendar/embed?showTitle=0&showPrint=0&showTabs=0&showTz=0&height=750&wkst=2&bgcolor=%23FFFFFF&src=1.keswickscouts.org_5d750s21fh55t45nsh4i49co5g%40group.calendar.google.com&color=%23691426&src=1.keswickscouts.org_k8ai784s6meu1eh71fk21etseg%40group.calendar.google.com&color=%23182C57&src=1.keswickscouts.org_4omjhqh48ud1lkigino18dmid0%40group.calendar.google.com&color=%232F6309&src=06illa48gj7en6896jv32cm93c%40group.calendar.google.com&color=%23125A12&src=1.keswickscouts.org_m6mb8idejtptmfkve9gm6latd8%40group.calendar.google.com&color=%236B3304&src=1.keswickscouts.org_5uaafulf65hrc4b64j3bfa6660%40group.calendar.google.com&color=%235229A3&src=1.keswickscouts.org_qudhcb0ii68u6b5mgs2ase200o%40group.calendar.google.com&color=%23B1365F&ctz=Europe%2FLondon');
$content = str_replace('</title>','</title><base href="https://www.google.com/calendar/" />',$content);
$content = str_replace('B5515D','CC9966', $content); //ASU
$content = str_replace('536CA6','099FF', $content); //Beavers
$content = str_replace('7EC225','33CC00', $content); //Cubs
$content = str_replace('125A12','006990', $content); //Eden
$content = str_replace('194D14','999966', $content); //Explorers
$content = str_replace('8C66D9','4D2177', $content); //Group
$content = str_replace('E67399','006666', $content); //Scouts
echo $content;
?>
Run Code Online (Sandbox Code Playgroud)
任何sugestions?更简单会更好
我可以建议您使用两个数组,仅使用一个 str_replace :
$search = array('B5515D', '536CA6', '7EC225');
$replace = array('CC9966', '099FF', '33CC00');
$content = str_replace($search, $replace, $content);
Run Code Online (Sandbox Code Playgroud)
更复杂的建议是使用google calendar API。