填写您的邮件地址,订阅我们的精彩内容:

获取wordpress主题目录下的screenshot

688

在wordpress中,我们可以获得很多已知的的调用,利用这些调用函数,我们可以及其轻松的获取screenshot,无论在单独的博客,还是多站点开通之后。

使用wp_get_theme函数获取和主题相关的信息。wp_get_theme的第一个参数填写的是主题文件夹的名称,将得到和该文件夹名称下主题相关的信息。不过前提是,该主题是完整可用的。而如果不填写这个参数,则获取默认主题的信息。

如何获得该主题的文件夹名称?当然你在确定的情况下,可以直接填写对应主题的文件夹名称。不过在wordpress中,options表记录了当前博客使用的主题文件夹名,我们可以通过get_option函数获取它。get_option(‘template’)获取该值。而在多站点开通之后,可通过get_blog_option获取:get_blog_option($blog_id,’template’)。

将wp_get_theme的返回值存放在$tmp中,$tmp->get_screenshot()即可获取screenshot的图片地址了。

下面贴出一段代码,用以实现在多站点开通之后,用这段代码来实现列出已经开通的博客,和这个博客使用了什么主题(只是把主题的screenshot显示出来):

$blog_list = get_blog_list( 0, 'all' ); //显示全部站点列表
foreach ($blog_list AS $blog){
?? ?$id = $blog['blog_id'];
?? ?if($id == 1)continue;
?? ?$name = get_blog_option($id,'blogname');
?? ?$address = get_blogaddress_by_id($id);
?? ?$template = get_blog_option($id,'template');
?? ?$tmp_url = get_blogaddress_by_id(1).'/wp-content/themes/'.$template;
?? ?$tmp = wp_get_theme($template);
?? ?$screenshot = $tmp->get_screenshot();
?? ??><li>
?? ??? ?<div><a href="<?php echo $address; ?>" target="_blank"><img src="<?php echo $screenshot; ?>" /></a></div>
?? ??? ?<div><a href="<?php echo $address; ?>" target="_blank"><?php echo $name; ?></a></div>
?? ?</li><?php
}

下面我简单说几句