首页 > 微信公众平台 > 织梦dedecms微信公众平台插件及跳转wap插件手机端下载

织梦dedecms微信公众平台插件及跳转wap插件手机端下载

上一篇 下一篇
     目前网上有很多这方面教程,关于dedecms微信插件,写的很详细,但是都是微信跳转的是PC网页,很难看,排版就乱了,今天南宫在这里介绍,如何跳转到dedecms织梦自带wap端,也就是跳到同内容的手机端。

安装dedecms微信插件效果:在线下载地址:http://www.lanrenmb.com/wap/ruanjian/weixin.rar

  

安装方法:放到dede程序的plus目录下即可.(其实放在哪里都可以)
接口配置信息按下面说明填写,
URL http://你的域名/plus/weixin.php

微信高级接口配置:Token  weixin (和文件中保持一致)

以上都不是重点,重点是如何跳转到dede自带手机端,我们先看下微信接口文件。

<?php
 
define("TOKEN", "weixin");
require_once(dirname(__FILE__)."/../include/common.inc.php");
$dsql = new DedeSql(false);
$wechatObj = new wechatCallback();
$wechatObj->valid();
 
class wechatCallback
{
    private $items = '';
    private $articleCount = 0;
    private $keyword = '';
 
public function valid()
    {
        $echoStr = $_GET["echostr"];
 
        //valid signature , option
        if($this->checkSignature()){
        echo $echoStr;
            $this->responseMsg();
            
        exit;
        }
    }
 
    public function responseMsg()
    {
//get post data, May be due to the different environments
$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
 
      //extract post data
if (!empty($postStr)){
                
              $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
                $fromUsername = $postObj->FromUserName;
                $toUsername = $postObj->ToUserName;
                $this->keyword = strtolower(trim(iconv("UTF-8","gb2312",$postObj->Content)));
 
                $time = time();
                $textTpl = "<xml>
<ToUserName><![CDATA[".$fromUsername."]]></ToUserName>
<FromUserName><![CDATA[".$toUsername."]]></FromUserName>
<CreateTime>".$time."</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
<FuncFlag>0</FuncFlag>
</xml>";     
                $picTpl = "<xml>
                             <ToUserName><![CDATA[".$fromUsername."]]></ToUserName>
                             <FromUserName><![CDATA[".$toUsername."]]></FromUserName>
                             <CreateTime>".$time."</CreateTime>
                             <MsgType><![CDATA[news]]></MsgType>
                             <Content><![CDATA[]]></Content>
                             <ArticleCount>%d</ArticleCount>
                             <Articles>
                             %s
                             </Articles>
                             <FuncFlag>1</FuncFlag>
                            </xml>";
                if($this->keyword == 'hi' || $this->keyword == '您好'  || $this->keyword == '你好' ||$this->keyword == 'hello2bizuser' ){
                $contentStr = "输入关键字开始搜索!";//自定义欢迎回复;
                echo sprintf($textTpl, $contentStr);
                }else if( !empty( $this->keyword )){
                    $this->search();
                    if($this->articleCount == 0){
                        $contentStr = "抱歉,没有找到与【{$this->keyword}】相关的文章,要不你更换一下关键字,可能就有结果了哦 :-) ";
                        echo sprintf($textTpl, $contentStr);
                    }else{
                        echo sprintf($picTpl,$this->articleCount,$this->items);
                    }
                }
 
        }else {
        echo "";
        exit;
        }
    }
 
    private function search(){
        global $dsql;
        $weixin_posts = $dsql->SetQuery("Select * From `lanren_archives` where title like '%".$this->keyword."%' order by id desc LIMIT 0, 5");
        $items = '';
$dsql->Execute();
 
while($weixin_post=$dsql->GetObject()){        
            $title =$weixin_post->title;
            $excerpt = $weixin_post->description ;//获取摘要
            $thumb = $weixin_post->litpic ;//获取缩略图;
            $link = '/plus/view.php?aid='.$weixin_post->id;
            $items = $items . $this->get_item($title, $excerpt, $thumb, $link);   
$this->articleCount++;     
}
        if($this->articleCount > 5) $this->articleCount = 5;
 
        $this->items = $items;
    }
 
    private function get_item($title, $description, $picUrl, $url){
        if(!$description) $description = $title;
 
        return
        '
        <item>
            <Title><![CDATA['.$title.']]></Title>
            <Discription><![CDATA['.$description.']]></Discription>
            <PicUrl><![CDATA[http://'.$_SERVER['HTTP_HOST'].$picUrl.']]></PicUrl>
            <Url><![CDATA[http://'.$_SERVER['HTTP_HOST'].$url.']]></Url>
        </item>
        ';
    }
 
    private function checkSignature()
    {
        $signature = $_GET["signature"];
        $timestamp = $_GET["timestamp"];
        $nonce = $_GET["nonce"];    
                
        $token = TOKEN;
        $tmpArr = array($token, $timestamp, $nonce);
        sort($tmpArr);
        $tmpStr = implode( $tmpArr );
        $tmpStr = sha1( $tmpStr );
        
        if( $tmpStr == $signature ){
            return true;
        }else{
            return false;
        }
    }
}
 

在以上代码,大家仔细看到。红色地方,就是文章点击后的跳转链接,目前是链接PC端。

我们在看下官网这个两个网址区别:

PC端:http://www.lanrenmb.com/plus/view.php?aid=643
wap端:http://www.lanrenmb.com/wap.php?action=article&id=643

通过上网网址对比,我们就知道,微信接口代码该如何修改了。

$link = '/plus/view.php?aid='.$weixin_post->id;   

改为

$link = '/wap.php?action=article&id='.$weixin_post->id;
 

就可以大功告成了哈!为了懒人需求,把修改好的微信接口提供下载,大家可以直接点击下载哈。

模板简介:该模板名称为【织梦dedecms微信公众平台插件及跳转wap插件手机端下载】,大小是,文档格式为.,推荐使用打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【微信公众平台】栏目查找您需要的精美模板。

  • 下载密码 lanrenmb
  • 下载次数 50,125次
  • 使用软件
  • 文件格式
  • 文件大小
  • 上传时间 01-30
  • 作者 网友投稿
  • 肖像权 人物画像及字体仅供参考
栏目分类 更多 >
热门推荐 更多 >
企业网站 微信文章 单页式简历模板 html5 响应式 自适应 微信模板 微信图片 微信公众平台 微信素材
您可能会喜欢的其他模板