Tìm kiếm

View Full Version: Share mod johncms auto rút gọn link bằng bit.ly

Post by: admin
(06.05.2020 / 04:05)
Cỡ chữ +A | =A | -A

-Nhiệm vụ tự động tìm tất cả link trong biến vào.
-Rút gọn tất cả link, ngoại trừ link images và link trong wap.
-Kiểm tra đã rút gọn thành công chưa?
+Nếu chưa giữ nguyên link gốc,
+Nếu rút gọn thành công, thay thế link gốc bằng link rút gọn.

[PHP<?php
/*
-----------------------------------------------------------------
Create Bit.ly Short URLs Using PHP: API Version 3
-----------------------------------------------------------------
*/
public static function fixlink($text) {

/* returns the shortened url */
function get_short_url($url) {
$homeurl = strtolower($_SERVER['HTTP_HOST']);
$tempurl = strtolower($url);
//Kiem tra link co phai hinh anh
$img = '/[.](jpg|png|gif|jpeg|bmp)$/i';
if (preg_match($img, $url)) { return ' '; }
// Kiem tra xem link hop le ko
if (strpos($tempurl, $homeurl) || strpos($tempurl, "bit.ly") || mb_strlen($url) < 20) { return ' ' . $url; }
$login = 'xxx';
$appkey = 'xxx';
$format = 'txt';
$connectURL = 'http://api.bit.ly/v3/shorten?login='.$login.'&apiKey='.$appkey.'&uri='.urlencode($url).'&format='.$format;
return get_result($connectURL, $url, $d);
}

/* returns a result form url */
function get_result($connectURL, $url, $d) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$connectURL);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
$data = trim(curl_exec($ch));
curl_close($ch);
//Kiem tra rut gon thanh cong hay ko?
if (preg_match("/(^https?\:\/\/)|(^www\.)/i", $data)) { return ' ' . $data; }
else { return ' ' . $url; }
}
//Find url in text
$url_match = $url_replace = array();
$url_match
= '#(^|[\n\t (>.)([a-z][a-z\d+]*:/{2}(?:(?:[a-z0-9\-._~!$&\'(*+,;=:@|]+|%[\dA-F]{2})+|[0-9.]+|\[[a-z0-9.]+:[a-z0-9.]+:[a-z0-9.:]+\])(?::\d*)?(?:/(?:[a-z0-9\-._~!$&\'(*+,;=:@|]+|%[\dA-F]{2})*)*(?:\?(?:[a-z0-9\-._~!$&\'(*+,;=:@/?|]+|%[\dA-F]{2})*)?(?:\#(?:[a-z0-9\-._~!$&\'(*+,;=:@/?|]+|%[\dA-F]{2})*)?)#ieu';
$url_replace
= "get_short_url('$2')";
return preg_replace($url_match, $url_replace, $text);
}
?>[/PHP]




<?php
$login = 'xxx';
$appkey = 'xxx';?>

xxx là tài khoản bit.ly nhé


5 Chủ đề khác cùng chuyên mục
  1. JohnCMS 9.2.0 có giao diện hoàn toàn mới
  2. Johncms 9.1.0 hoàn toàn lột xác với cấu trúc và giao diện mới
  3. Share mod rewrite profile Johncms by DoDuong.Com
  4. Mod tiền tố cho JohnCMS
  5. Share Mod Copyright JohnCMS
5 Chủ đề ngẫu nhiên
  1. Review Lần đầu đi khám nam khoa 20 lượt xem
  2. Game Android: DRAGON BALL LEGENDS Hack 28 lượt xem
  3. Share Mod ẩn Topic JohnCMS 37 lượt xem
  4. Mod tiền tố cho JohnCMS 45 lượt xem
  5. [Share] module style editor cho johnCMS 94 lượt xem

Textlink: Blog Công Nghệ