分类 编程技巧 下的文章

上次曾介绍过怎么加入公益404页面,详见《宝贝,公益404带你们回家》。

可能有些朋友也发现,当站内搜索结果为空时,默认返回空白内容。其实,这里也可以添加公益404。
编辑/content/templates/你的模板名称/log_list.php文件,定位到页面最后,在代码

<?php
include View::getView('side');
include View::getView('footer');
?>

之前加入以下内容:

<?php if($logs == NULL) {?>
\<script type="text/javascript" src="http://www.qq.com/404/search_children.js" charset="utf-8">\</script>
<?php exit;} //为了美观,直接退出,不再加载侧边栏和底部?>

保存后,在你的博客搜索框里,输入不存在的文章标题,应该看到效果了吧。
效果展示:http://www.tinyun.cn/index.php?keyword=test

公益404页面介绍

公益404页面是由腾讯公司员工志愿者自主发起的互联网公益活动。

网站只需要在自己的404页面中嵌入一段简单的代码,就能通过互联网来迅速传播失踪儿童信息,从而提高找回失踪儿童的概率。失踪儿童信息来自宝贝回家寻子网。

公益404页面接入方法

注意事项
如果一个 404 页面的内容小于 512B,IE 会认为该 404 页面不够友好,在 IE 下将不会成功返回该 404 错误页面

复制以下js代码,嵌入到您的404页面

\<script type="text/javascript" src="http://www.qq.com/404/search_children.js" charset="utf-8">\</script>

以上内容转自:http://www.qq.com/404/
效果展示:http://www.tinyun.cn/you-and-me/


嗯,介绍完了,也展示完了。我就具体说下emlog怎么接入公益404页面

1、先看下你正在用的模板文件夹下有没有404.php,如果有,把以下内容改为:

\<body>
\<!--
\<div class="main">
\<p>抱歉,你所请求的页面不存在!\</p>
\<p>\<a href="javascript:history.back(-1);">«点击返回\</a>\</p>
\</div>
-->
\<script type="text/javascript" src="http://www.qq.com/404/search_children.js" charset="utf-8">\</script>
\</body>

2、如果没有,也不要紧,打开文件/include/lib/function.base.php,找到以下内容并改为(在页面最后):

\<body>
\<!--
\<div class="main">
\<p>$msg\</p>
\<p>\<a href="$url">«点击返回\</a>\</p>
\</div>
-->
\<script type="text/javascript" src="http://www.qq.com/404/search_children.js" charset="utf-8">\</script>
\</body>

3、如果你在后台开启了URL重写功能,那么就应该成功了,在你的网址后随便输入几个字母试试吧,比如:www.你的站点.com/test

4、如果你没有开启URL重写功能,把以下代码存为404.html,传到你网站根目录

\<html>
\<head>
\<title>404 NOT Found\</title>
\</head>
\<body>
\<script type="text/javascript" src="http://www.qq.com/404/search_children.js" charset="utf-8">\</script>
\</body>
\</html>

并在你的.htaccess文件里加上一句:
ErrorDocument 404 /404.html

这样就行了。

分享一下,punbb论坛不能使用相对网址的问题。

问题:我和论坛同在内网,于是我使用http://192.168.1.6/bbs访问,进入子版面时,坏了,跳到
http://www.tinyun.cn/bbs去了。就因为我的配置文件是$base_url = http://www.tinyun.cn/bbs

好吧,我改为$base_url = "/bbs" 行不?这回更惨,前台没问题,管理界面用不了。
苦恼啊-- : ,明明是内网,偏要我饶一圈公网。

最近苦研PHP,终于找着解决办法了。

解决要点:既然一定要网址,那好吧,你用什么域名访问,我就在/bbs前加你访问的域名。在配置文件里改:
$array = array('http://', $_SERVER["HTTP_HOST"], '/bbs');
$base_url = join($array);

原代码是:
$base_url = http://www.tinyun.cn/bbs

原代码是固定的网址,改成动态获取就行了。