移动互联网时代已经到来,如何让你的访客方便的在手机上访问你的网站,也许增添一个二维码功能会是一个不错的选择。这次的wordpress开发教大家怎么通过qrcode.js生成二维码。
原理分析:
很简单,就是获取当前日志的URL值并在js中传给QRCode即可。
实现步骤:
第一步,加载本地主题文件夹内的qrcode.js(下载链接在页底)
<script type='text/javascript' src='http://localhost/wp-content/themes/lifet/js/qrcode.min.js?ver=20200508'></script>
第二步:获取当前日志链接
<?php echo get_permalink(); ?>
第三步:获取当前日志链接并传递给QRCode
<input type="text" id="npcink-id" value="<?php echo get_permalink(); ?>" style="display: none;"/>
<div id="qrcode-npcink"></div>
<script language="javascript">
var npcink_z=document.getElementById("npcink-id").value;
new QRCode(document.getElementById("qrcode-npcink"), npcink_z);
</script>
在这里我通过value的方式,在js中获取链接的值并通过变量传给QRCode
完整的代码如下:
<script type='text/javascript' src='http://localhost/wp-content/themes/lifet/js/qrcode.min.js?ver=20200508'></script>
当前日志链接:<?php echo get_permalink(); ?>
<input type="text" id="npcink-id" value="<?php echo get_permalink(); ?>" style="display: none;"/>
<div id="qrcode-npcink"></div>
<script language="javascript">
var npcink_z=document.getElementById("npcink-id").value;
new QRCode(document.getElementById("qrcode-npcink"), npcink_z);
</script>
方法(推荐):
我们可以构建一个方法来方便的生成二维码,在您主题根目录下的 functions.php
文件的顶部添加以下代码:
<?php
//二维码
if ( ! function_exists( 'npcink_post_qrcode' ) ) :
function npcink_post_qrcode() {
//获取当前页面链接
if( is_home() ){
$npcink_post_url = home_url();
}else {
$npcink_post_url = get_permalink();;
}
?>
<script type='text/javascript' src='<?php echo get_template_directory_uri() . '/js/qrcode.min.js';?>'></script>
<div id="npcink_text" style="display: none;"><?php echo $npcink_post_url ?></div>
<div id="qrcode-npcink"></div>
<script>
var npcink_b = document.getElementById('npcink_text').innerText;
new QRCode(document.getElementById("qrcode-npcink"), npcink_b);
</script>
<?php
}
endif;
调用:
在需要展示当前日志链接的地方调用以下代码即可。
<?php npcink_post_qrcode();?>
需要注意的是,上面的代码中调用了主题根目录文件夹下的 qrcode.js ,该文件可在下面这个链接中下载。
其实,在上文中,还提供有一些控制方法可供大家参考,例如颜色、尺寸和大小之类的。
文中的获取当前页函数无法正常获取到首页的链接,为了演示就不改了,各位可参考下面这篇文章进行改进:
不错