หัวข้อ: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: etgsgroup ที่ 28 พฤศจิกายน 2008, 12:25:20 พอดีว่าลองหาอ่านในเน็ตแล้ว หาไม่เจอถึงเจอก็เป็นรุ่นเก่า อยากทำเป็น redirect ให้ไปที่หน้า ขายสินค้า หรือที่เรากำหนดเอง จะต้องไปเพิ่มหรือว่าแก้ไขตรงไหนบ้างครับ
หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: MrWebmonster ที่ 28 พฤศจิกายน 2008, 15:21:26 ลองไปใช้ Redirection WP-plugin ดูสิครับ
http://wordpress.org/extend/plugins/redirection/ น่าจะใกล้เคียงกับที่หานะครับ :D หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: บอท! ที่ 28 พฤศจิกายน 2008, 16:12:06 ผมใช้ งี้ ครับ ใน ไฟล์ 404
<?php header ("Location: หน้าที่ต้องการให้ไป"); ?> ไม่ทราบว่าต้องการแนวไหน ครับ ว่าง ๆ จะลองหาดู หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: etgsgroup ที่ 29 พฤศจิกายน 2008, 08:41:31 ขอบคุณทั้ง 2 ท่านเลยนะครับที่มาแนะนำ
ของท่าน MrWebmonster ผมเอาไปลองก่อนแล้วจะกลับมาบอกว่าดีหรือเปล่า ของท่านบอท! ผมชักไม่แน่ใจว่า file 404 ของผมอยู่ที่ไหน อยากได้แบบว่าออกแบบหน้าเองเลยครับ ผมลองเขียนใน file .htaccess ให้ชี้ไปหน้า 404 ที่สร้างเองก็ไม่ขึ้น แบบว่าอยากสร้างหน้า 404 เอาสินค้ามาวาง แล้ว รีไดเรท ไป astore แบบนี้ครับ คาดว่าจะดี (ผมก็คิดว่าแสดงหน้า 404 บอกเขาก่อนว่าหน้านี้หายไป แล้วสัก พักก็ รีไดเรทไปครับ) หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: Hari Seldon ที่ 29 พฤศจิกายน 2008, 09:10:50 ใน Theme ของ wordpress ที่คุณเลือกใช้ เช่น ถ้าเลือก Default
ก็จะเป็นไฟล์ /wp-content/themes/default/404.php ถ้าคุณใช้ธีม abc ก็เป็นไฟล์ /wp-content/themes/abc/404.php แก้ไฟล์นี้ให้เป็นแบบที่คุณต้องการเลยก็ได้ครับ ถ้า wordpress หาหน้าที่ต้องการไม่เจอ มันจะมาเรียกใช้หน้านี้ จะทำเป็น html ธรรมดาก็ได้ หรือทำเป็น php script ต่อกับ wordpress database ผ่าน WP_Query ไรพวกนี้ก็ได้ (เช่น ให้ค้นหา post ของเราตาม url ที่ใส่มา แสดงข่าวล่าสุดสองสามอัน แสดงข่าว random แสดงข่าวที่ pop ที่สุด ฯลฯ) ซึ่งสามารถเพิ่มจำนวน page ในเว็บเราได้นิดหน่อย หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: etgsgroup ที่ 29 พฤศจิกายน 2008, 09:48:30 ใน Theme ของ wordpress ที่คุณเลือกใช้ เช่น ถ้าเลือก Default ก็จะเป็นไฟล์ /wp-content/themes/default/404.php ถ้าคุณใช้ธีม abc ก็เป็นไฟล์ /wp-content/themes/abc/404.php แก้ไฟล์นี้ให้เป็นแบบที่คุณต้องการเลยก็ได้ครับ ถ้า wordpress หาหน้าที่ต้องการไม่เจอ มันจะมาเรียกใช้หน้านี้ จะทำเป็น html ธรรมดาก็ได้ หรือทำเป็น php script ต่อกับ wordpress database ผ่าน WP_Query ไรพวกนี้ก็ได้ (เช่น ให้ค้นหา post ของเราตาม url ที่ใส่มา แสดงข่าวล่าสุดสองสามอัน แสดงข่าว random แสดงข่าวที่ pop ที่สุด ฯลฯ) ซึ่งสามารถเพิ่มจำนวน page ในเว็บเราได้นิดหน่อย ขอบคุณมาก ๆ ครับที่มาแนะนำ แต่ทว่า ก็ไม่ได้เหมือนเดิม ครับ ไม่เข้าใจเหมือนกัน theme ที่ใช้มันไม่ยอมยิงไปที่ 404.php (เวรกรรม) เดี๋ยวผมลองหาวิธีอื่นต่อไป ( + 1 ให้ทุกคนตอบเลยครับ) หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: บอท! ที่ 29 พฤศจิกายน 2008, 10:06:41 หลักการก็ เคยใช้ แบบง่าย ๆ แต่ไม่ใช่ wordpress ผมจะ ใส่ข้อความบอกแล้ว ก็ ค่อยสั่ง redirect อาจจะใส codeตั้งเวลาถอยหลัง ค่อยรี ตอนนั้นใช้ code meta refresh เอา น่ะครับ
อ้างถึง <html> <head> <META HTTP-EQUIV="Refresh" CONTENT="5;URL=http://www.yourname.com"> </head> <body> <center> บอกเขาก่อนว่าหน้านี้หายไป ให้เข้า <a href="[url]http://www.yourname.com[/url]">[url=http://www.yourname.com]www.yourname.com[/url]</a> </center> </body> </html> เลข 5 คือเวลา เป็นวินาที นะครับ ข้อความก็ปรับตามชอบเลยครับ ส่วนถ้าแก้ใน wordpress ก่อนอื่น ถ้า themes ไม่มี 404.php ก็ สร้าง แล้วใส่ใน themes ก๊อปจาก Default ก็ได้ แล้วใส่ ใน themes ที่เราใช้ แล้วก็ปรับใส่ code redirect เอา หรือ .htaccess อ้างถึง Options +FollowSymLinks RewriteEngine on RewriteRule (.*) ErrorDocument 404 /index.php อันนี้ .htaccess ที่ผมเจอ ยังไม่เคยลองใช้ น่าจะเปลี่ยน จาก /index.php ไปเป็น http://astore... ได้แต่ คงไม่สามารถบอกก่อน redirect ได้ แต่ถ้า ให้ redirect ไปหน้าที่เรา สร้างขึ้นใหม่ ก็ น่าจะใช้ code refresh ที่หน้าใหม่ก็ได้นะครับแล้วค่อยส่งไป astore ป.ล. code .htaccess ผมยังไม่เคยลองใช้นะครับ คำเตือน - มีกระทู้ตอบใหม่ ขณะที่คุณพิมพ์ข้อความ อยากให้คุณแสดงตัวอย่างก่อนตั้งกระทู้ อ่านใหม่ งั้นลองเพิ่ม .htaccess ส่วน 404 ดู ครับ ให้รีไปหน้าที่เราต้องการ เป็นหนูลองยาให้ผมด้วยไม่เคยใช้เหมือนกัน หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: etgsgroup ที่ 29 พฤศจิกายน 2008, 10:24:23 หลักการก็ เคยใช้ แบบง่าย ๆ แต่ไม่ใช่ wordpress ผมจะ ใส่ข้อความบอกแล้ว ก็ ค่อยสั่ง redirect อาจจะใส codeตั้งเวลาถอยหลัง ค่อยรี ตอนนั้นใช้ code meta refresh เอา น่ะครับ อ้างถึง <html> <head> <META HTTP-EQUIV="Refresh" CONTENT="5;URL=http://www.yourname.com"> </head> <body> <center> บอกเขาก่อนว่าหน้านี้หายไป ให้เข้า <a href="[url]http://www.yourname.com[/url]">[url=http://www.yourname.com]www.yourname.com[/url]</a> </center> </body> </html> เลข 5 คือเวลา เป็นวินาที นะครับ ข้อความก็ปรับตามชอบเลยครับ ส่วนถ้าแก้ใน wordpress ก่อนอื่น ถ้า themes ไม่มี 404.php ก็ สร้าง แล้วใส่ใน themes ก๊อปจาก Default ก็ได้ แล้วใส่ ใน themes ที่เราใช้ แล้วก็ปรับใส่ code redirect เอา หรือ .htaccess อ้างถึง Options +FollowSymLinks RewriteEngine on RewriteRule (.*) ErrorDocument 404 /index.php อันนี้ .htaccess ที่ผมเจอ ยังไม่เคยลองใช้ น่าจะเปลี่ยน จาก /index.php ไปเป็น [url]http://astore[/url]... ได้แต่ คงไม่สามารถบอกก่อน redirect ได้ แต่ถ้า ให้ redirect ไปหน้าที่เรา สร้างขึ้นใหม่ ก็ น่าจะใช้ code refresh ที่หน้าใหม่ก็ได้นะครับแล้วค่อยส่งไป astore ป.ล. code .htaccess ผมยังไม่เคยลองใช้นะครับ คำเตือน - มีกระทู้ตอบใหม่ ขณะที่คุณพิมพ์ข้อความ อยากให้คุณแสดงตัวอย่างก่อนตั้งกระทู้ อ่านใหม่ งั้นลองเพิ่ม .htaccess ส่วน 404 ดู ครับ ให้รีไปหน้าที่เราต้องการ เป็นหนูลองยาให้ผมด้วยไม่เคยใช้เหมือนกัน ขอบคุณครับที่เสียเวลาไปหาให้ แต่ทว่า ก็ไม่ได้เหมือนเดิม :P :P :P สงสัย theme ที่ใช้เขากำหนดไว้แล้ว ไม่เป็นไรครับ หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: Hari Seldon ที่ 29 พฤศจิกายน 2008, 10:51:49 อืมม์ คุณมีไฟล์ 404.php ในธีมที่ใช้รึยังครับ
ถ้ามีแต่ยังใช้ไม่ได้ อาจจะโดน block ไว้ สามารถทำได้สองวิธีครับ 1. แก้ .htaccess ใน redirect เฉพาะหน้าที่ต้องการ 2. แก้ index.php ใน theme เพิ่มส่วน redirection บน url ที่ต้องการ ใน .htaccess ให้เพิ่มแบบนี้ RewriteEngine On RewriteRule ^old_url$ new_url [L] แทนที่ old_url และ new_url ด้วย URL ที่คุณต้องการนะครับ ใส่เรียงไปเรื่อยๆ ข้อเสียของวิธีนี้คือมันช้านะครับ ถ้าลง web server เป็น Litespeed จะเร็กว่า Apache ส่วนวิธีที่สอง แก้ใน index.php ของ Theme เลยครับ ใส่ code นี้ไว้ด้านบนสุดเลย โค๊ด: <?php ใส่ old_url(n) => new_url(n) ตามต้องการนะครับกี่อันก็ได้ ให้ใส่ url เต็มยกเว้น http://domain.name ครับ อย่างเช่น ถ้าให้ http://www.hello.com/this-is-old-url1.html ไปที่ http://www.hello.com/sell-stuff/ ก็เขียนแบบนี้ '/this-is-old-url1.html' => '/sell-stuff/', หวังว่าจะใช้ได้นะครับ :D หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: Kamilia ที่ 29 พฤศจิกายน 2008, 19:40:15 โอ้อ่านแล้วรู้สึกว่่าพี่บอทจะชำนาญเกี่ยวกับ wp จัง
หัวข้อ: Re: อยากทำ 404 errror page ของตัวเอง ใน wordpress ครับ เริ่มหัวข้อโดย: บอท! ที่ 29 พฤศจิกายน 2008, 20:22:13 แค่พอรู้บ้างครับยังห่างไกลคำว่า ชำนาญ
|