你是否想像Nometet.com 这个网站一样让每篇博客文章的背景看起来都不一样呢?这个网站的设计确实是非常酷的,因为它允许作者通过上传图片来自定义文章背景,而且甚至图片的尺寸也没有特别的规定。上传并不困难,只要在Meta盒里执行一个上传软件就可以了,主要还是在选择图片上,让我们来看看究竟如何实现的呢?
考虑到后面需要用上传软件将图片的URL地址保存到一个自定义字段里,所以我们先将自定义字段建好,这样一来你只需要将URL收到自定义字段里并将其显示为背景即可,代码非常简单:
<?PHP $bg = get_post_custom_values("background"); if ( is_array($bg) ) { ?> <style type="text/css" media="screen"> body{ background: url(<?PHP echo $bg ?>) fixed no-repeat; } </style> <?PHP } ?>
自定义 Meta上传软件
我们需要一个上传软件,究竟该如何实现呢?通过对WooThemes的研究,我发现他们的主题里有一个admin-custom.PHP文件(在/functions目录下),这是他们用来加上传软件以及其他自定义Meta盒的地方。
PHPky/… 。
最后别人告诉我需要将URL地址编译才行,于是把上面的代码替换成:
body{background: url(<?PHP bloginfo('template_url'); ?>/tools/timthumb.PHP?w=1920&zc=1&src=<?PHP echo urlencode($bg); ?>) fixed no-repeat; }
宣告成功!