Discuz Thai

 ลืมรหัสผ่าน
 สมัครสมาชิก

ข้อตกลงการใช้งานกระดานข่าวดิสคัสไทย DiscuzThai Agreement (English Version) ประกาศดิสคัสไทย - ทำเนียบดิสคัสภาษาไทย

Discuz! X3.5 Thai R20231001 Rev.8 (NEW) [วิดีโอช่วยสอน] อัปเกรด Discuz! X3.4 เป็น X3.5 Discord ของ Discuz! Thai Community อย่างเป็นทางการ

Discuz! X3.4 Thai R20220811 (REV.75) สิ้นสุดการสนับสนุน Discuz! X3.4 ภาษาไทยตั้งแต่วันนี้เป็นต้นไป (ขอแนะนำให้อัปเกรดเป็น X3.5 แทน)

ค้นหา
แท็กยอดนิยม: ดิสคัสภาษาไทย Discuz Thai
ดู: 10301|ตอบกลับ: 11

Redirect To Url เขียนสคริปต์ Link out ให้ Discuz ด้วยต้วคุณเองแบบใหม่รองรับ SEO

[คัดลอกลิงก์]
Special_kak โพสต์ 2009-7-15 22:06:58 |โหมดอ่าน
แก้ไขล่าสุด Special_kak เมื่อ 2009-7-15 22:09

ใครรู้จัก redirect บ้าง อ้าวใครเคยเขียน .htaccess เพื่อสังให้โดนเมน redirect ไปยัง url อื่นๆ บ้าง ผมเคยเห็นแว้บนะ เว็บไหนไม่รู้ การทำงานของสคริปต์ php ตัวนี้คล้ายกับการ redirect ครับ แต่เป็นการใช้ html คือคำสั่ง
  1. <html><head>
  2. <meta http-equiv="refresh" content="0;url=<?php echo $url; ?>"/>
  3. </head></html>
คัดลอกไปที่คลิปบอร์ด
555+ ง่ายไหมหละ มาดูวิธีกันครับ
สร้างไหล์ php ขึ้นมาด้วย Editplus หรืออะไรก็แล้วแต่ครับ จากนั้นวางโค้ดนี้ลงไป
  1. <?php
  2. // we redirect to the website instead of linking directly because we don't want
  3. $url = htmlentities($_GET['url']);
  4. ?>
  5. <html><head>
  6. <meta http-equiv="refresh" content="0;url=<?php echo $url; ?>"/>
  7. </head></html>
คัดลอกไปที่คลิปบอร์ด
จะ Save เป็นชื่ออะไรก็ได้นะครับ ตัวอย่างผมบันทึกเป็นชื่อ redirectToUrl.php
จากนั้นอัพไฟล์ redirectToUrl.php ขึ้นไปยังตำแหน่ง root หรือ public_html นั่นเองงับ

จากนั้นเปิดไฟล์ public_html/include/discuzcode.func.php
หา
  1. function parseurl($url, $text) {
  2. if(!$url && preg_match("/((https?|ftp|gopher|news|telnet|rtsp|mms|callto|bctp|ed2k|thunder|synacast){1}:\/\/|www\.)[^\["']+/i", trim($text), $matches)) {
  3. $url = $matches[0];
  4. $length = 65;
  5. if(strlen($url) > $length) {
  6. $text = substr($url, 0, intval($length * 0.5)).' ... '.substr($url, - intval($length * 0.3));
  7. }
  8. return '<a href="'.(substr(strtolower($url), 0, 4) == 'www.' ? 'http://'.$url : $url).'" target="_blank">'.$text.'</a>';
  9. } else {
  10. $url = substr($url, 1);
  11. if(substr(strtolower($url), 0, 4) == 'www.') {
  12. $url = 'http://'.$url;
  13. }
  14. return '<a href="'.$url.'" target="_blank">'.$text.'</a>';
  15. }
  16. }
คัดลอกไปที่คลิปบอร์ด
แทนด้วย
  1. function parseurl($url, $text) {
  2. if(!$url && preg_match("/((https?|ftp|gopher|news|telnet|rtsp|mms|callto|bctp|ed2k|thunder|synacast){1}:\/\/|www\.)[^\["']+/i", trim($text), $matches)) {
  3. $url = $matches[0];
  4. $length = 65;
  5. if(strlen($url) > $length) {
  6. $text = substr($url, 0, intval($length * 0.5)).' ... '.substr($url, - intval($length * 0.3));
  7. }
  8. return '<a href="redirectToUrl.php?url='.(substr(strtolower($url), 0, 4) == 'www.' ? 'http://'.$url : $url).'" target="_blank">'.$text.'</a>';
  9. } else {
  10. $url = substr($url, 1);
  11. if(substr(strtolower($url), 0, 4) == 'www.') {
  12. $url = 'http://'.$url;
  13. }
  14. return '<a href="redirectToUrl.php?url='.$url.'" target="_blank">'.$text.'</a>';
  15. }
  16. }
คัดลอกไปที่คลิปบอร์ด
สังเกต redirectToUrl.php?url=

หาต่อ
  1. <a href="%s" target="_blank">%s</a>
คัดลอกไปที่คลิปบอร์ด
เปลี่ยนเป็น
  1. <a href="redirectToUrl.php?url=%s" target="_blank">%s</a>
คัดลอกไปที่คลิปบอร์ด
ตัวอย่าง :: http://www.i7forums.com/redirect ... /thread-44-1-1.html

คะแนน

จำนวนผู้เข้าร่วม 2จิตพิศัย +2 ย่อ เหตุผล
gorpor + 1
changsunha + 1 ขอบคุณนะ

ดูบันทึกคะแนน

ting1 โพสต์ 2009-7-16 12:00:54
ชอนคุณครับ
038777459 โพสต์ 2009-7-19 02:40:00
น่าลองมากเลยครับ
038777459 โพสต์ 2009-7-19 02:58:44
ไม่ได้อะครับ
038777459 โพสต์ 2009-7-19 03:03:29
ทำได้ละครับ ขอบคุณมาก
038777459 โพสต์ 2009-7-19 03:18:10
ปรับเวลาให้ช้าลงตรงไหนหรอครับ
 เจ้าของ| Special_kak โพสต์ 2009-7-19 12:15:25
6# 038777459


<meta http-equiv="refresh" content="0;url=<?php echo $url; ?>"/>
banksanti โพสต์ 2009-8-8 17:24:04
ปรับช้าลงได้ไหม แก้ไงอ่ะบอกทีอ่ะ ไ่ม่เหงช้าเลยอ่ะ
 เจ้าของ| Special_kak โพสต์ 2009-8-8 21:34:47
content="0; :: 0 คือ 0 วินาทีไงท่าน
ถ้า
content="2; :: 2 คือ 2 วินาทีไงครับ
changsunha โพสต์ 2010-10-28 12:43:34
กระทู้นี้ดีมากเลยครับ ขอบคุณนะครับ
ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | สมัครสมาชิก

รายละเอียดเครดิต

รายชื่อผู้กระทำผิด|Archiver|ดิสคัส ไทย Follow us: Become a fan on facebook. Follow us on Twitter.

GMT+7, 2024-4-20 07:01

Powered by Discuz! X3.4, Rev.66

Copyright © 2001-2021 Tencent Cloud. Licensed

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้