WordPress添加自动生成二维码具体过程
wordpress本身是没有二维码功能的,但是我们可以直接使用生成二维码,下面我来给大家介绍整合WordPress自动生成二维码代码.
再自己修改下,使它支持 首页、分类、标签、文章和页面.
1.添加缓存函数到主题的 functions.php 文件,代码如下:
function get_qr( $url , $path , $qrpic ){ set_time_limit (10); //设置十秒超时 $destination_folder = $path ? $path . '/' : '' ; $localname = $destination_folder . $qrpic ; $file = fopen ( $url , "rb" ); //fopen函数的r+模式: 读写方式打开 文件指针指向文件头 if ( $file ) { $newf = fopen ( $localname , "wb" ); // w+,读写方式打开 文件指针指向文件头 如果文件不存在则尝试创建之 if ( $newf ) while (! feof ( $file )) { fwrite( $newf , fread ( $file , 1024 * 2 ), 1024 * 2 ); //写入文件,fread控制文件最大的大小,这里是2M } } if ( $file ) { fclose( $file ); //关闭fopen打开的文件 } if ( $newf ) { fclose( $newf ); } }注: 以上代码是缓存到本地的功能
2.在网站根目录建立一个叫 qrcode 的新文件夹,确保有写入权限(755或777),用于保存图片.
3.将代码放到需要输出二维码图片的地方,如single.php、sidebar.php 等
实例代码如下:
<?php if (is_single() || is_page() || is_home() || is_front_page() || is_category() || is_tag()) : //只在文章、页面、首页、分类/标签存档,才加载下面的代码 $imgsize = 150; //二维码图片大小 if (is_single() || is_page()) $imgname = get_the_id(); //使用文章/页面ID命名图片 elseif (is_home() || is_front_page()) $imgname = 'home' ; //首页使用home命名 elseif (is_category()) $imgname = 'cat-' .get_query_var( 'cat' ); //分类使用cat-ID 命名 elseif (is_tag()) $imgname = 'tag-' .get_query_var( 'tag_id' ); //标签使用tag-ID 命名 $localqr = ABSPATH . 'qrcode/' . $imgname . '.jpg' ; if (! file_exists ( $localqr )) { //如果图片已经存在,则不会再次保存 get_qr( "http://chart.googleapis.com/chart?cht=qr&chs=" . $imgsize . "x" . $imgsize . "&choe=UTF-8&chld=L|2&chl=" .get_permalink() , "qrcode" , $imgname . ".jpg" ); } ?> <img src= "<?php echo home_url( '' ); ?>/qrcode/<?php echo $imgname ?>.jpg" width= "<?php echo $imgsize ?>" height= "<?php echo $imgsize ?>" alt= "QR Code" /> <?php endif ; ?>注: 以上代码是命名和显示二维码图片,添加代码后,页面在被第一次访问就会生成图片,然后缓存到本地.
查看更多关于WordPress添加自动生成二维码具体过程 - WordPress的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did8631