关♥生活,关注互联网。
同步 WordPress 博客日志到 Qzone的方法
我发现我是一个同步控,我把博客日志同步到雷猴,同步到嘀咕,然后同步到新浪微博, 好吧,今天就讲解下如何同步 WordPress 博客日志到 Qzone。
总所周知,QQ 的服务是不会有 API 的,但是如何同步到 Qzone 呢?这里的过程有点曲折,由于 Qzone 支持通过你的 QQ 邮箱发布,而 QQ 邮箱有支持 SMTP 协议,而 WordPress 所包含的 PHPMailer 类可以使用 SMTP 发邮件,所以我们可以通过使用 PHPMailer 同步 WordPress 博客日志到 Qzone。
首先我们可以通过下面的函数登录 QQ 邮箱并给 Qzone 发邮件(你需要首先打开 QQ 邮箱的 SMTP 功能)。
function smtp_mailer_qqmail($subject,$body){ $qq_number = ''; $qq_password = ''; if ( !class_exists('PHPMailer') ) { require_once ABSPATH . WPINC . '/class-phpmailer.php'; require_once ABSPATH . WPINC . '/class-smtp.php'; } $mail = new PHPMailer(); $mail->IsSMTP(); $mail->Mailer = "smtp"; $mail->CharSet = 'utf-8'; $mail->Encoding = 'base64'; $mail->IsHTML(true); $mail->SMTPAuth = true; $mail->Host = "smtp.qq.com"; $mail->Username = $qq_number."@qq.com"; $mail->Password = $qq_password; $mail->From = $qq_number."@qq.com"; $mail->FromName = $qq_number; $mail->AddAddress($qq_number."@qzone.qq.com"); $mail->Subject = $subject; $mail->Body = $body; $mail->Send(); }
其中需要把 $qq_number
和 $qq_password
设置成你的 QQ 号码和密码。
然后我们就可以通过 publish_post
这个 WordPress Hook,当发布日志的时候同步吧日志标题和内容同步到 Qzone。
add_action('publish_post', 'publish_post_2_qzone', 0); function publish_post_2_qzone($post_ID){ $qzone = get_post_meta($post_ID, 'qzone', true); if($qzone) return; $post_title = trim($_POST['post_title']); $post_except = trim($_POST['post_except']); if($post_except){ $post_content = $post_except; }else{ $post_content = mb_substr(strip_tags(trim($_POST['post_content'])),0,220); } $post_content= $post_content.'<br />查看全文:<a href="'.get_permalink($post_ID).'">'.get_permalink($post_ID).'</a>'; smtp_mailer_qqmail($post_title,$post_content); add_post_meta($post_ID, 'qzone', 'true', true); }
总结下:
约14年前
这个我怎么也做不出,总是失败,估计和我用的空间有关吧。。我是海外空间,是不是不能连上api呢?
约14年前
好像确实有这样的问题哈,你是用哪种插件呢?
约14年前
这个我怎么也发表不出,总是失败,估计和我用的空间有关吧。。我是海外空间,是不是不能连上api呢??
约14年前
重复了。。
约13年前
很不错.呵呵
约12年前
如果服务器不支持mail外发函数,那就没治了