16 มิถุนายน 2554

ตัด Subfolder ออกจาก Link Wordpress

หาำกเราได้สร้าง เว็บไซต์มาสักเว็บหนึ่ง ภายในเครื่องของเราหรือ Localhost ก็จะมี โฟลเดอร์ (Folder) เพื่อเก็บเว็บไซต์ต่าง ๆ ที่อยู่ในเครื่อง เวลาเราทดสอบ ก็จะพิมพ์ลิงค์ไปที่เบราเซอร์ เช่น http://localhost/โฟลเดอร์ที่เก็บเว็บไซต์

ในโฮสติ้ง จริงๆ เขาก็จะมี Public_html โฟลเดอร์มาให้หนึ่งโฟลเดอร์ เพื่อที่จะวางเว็บไซต์ที่เราีต้องการ หากว่าเราเก็บไฟล์ต่าง ๆ ของ Wordpress ไว้ที่ Public_html เลย เราก็จะมีเว็บไซต์ก็จะมีลิงค์ที่สวยงาม คือ http://www.test.com แต่หากว่าเราสร้างโฟลเดอร์มาเก็บไฟล์อีกทีหนึ่งจะมีลิงค์ดังนี้ http://www.test.com/folder

ใน Wordpress จะมีวิธีตัด folder ที่สร้างออกจากลิงค์ ตามวิธีต่อไปนี้ (ใช้ localhost เพื่อทดสอบหน่ะครับ)

1. สร้างโฟลเดอร์ test ขึ้นมาภายใน WWW แล้วติดตั้ง Wordpress ไปตามปกติจนสิ้นสุดกระบวนการ

2. เมื่อสร้างเสร็จล๊อกอินเข้าไปจัดการโดยไปที่เมนูซ้ายมือ Setting->General
ตั้งค่า WordPress address (URL) : http://localhost/test และ Site address (URL) : http://localhost

3. ก็อบปี้ index.php and .htaccess ออกมาวางที่ WWW หรือ นอก โฟลเดอร์ test

4. เิปิดไฟล์ index.php แล้วแก้ไข require('./wp-blog-header.php'); เป็น require('./test/wp-blog-header.php');
ตรงคำว่า test คือโฟล์เดอร์ที่สร้างไว้

5. ล๊อกอิน เข้าหน้าแอดมิน เพื่อไปแก้ไข Permalinks ซึ่งเราก็ทำการกดเซฟเพื่ออัพเดทค่าตามปกติ Wordpress จะจัดการให้เองโดยอัตโนมัติ

หลังจากนั้นก็ทดลองเข้าระบบ http://localhost ก็จะเ้ข้าไปสู่ Wordpress ที่เราสร้างไว้ในโฟลเดอร์ test ซึ่งจะตัด /test ออกให้เลย


ข้อมูลเพิ่มเติมที่ : http://marcosblog.com/2010/04/12/how-to-install-wordpress-in-a-sub-folder/

10 มิถุนายน 2554

ทำลิงค์ (Link) Wordpress ให้สวยงาม

    หากทำเว็บบล๊อก หรือ เว็บไซต์ ด้วย Wordpress แล้วต้องการที่จะให้ Link ออกมาสวยงาม และ น่าจะเหมาะสำหรับทำ SEO ก็จะต้องไป เซต ค่า เพื่อให้ Wordpress แสดง Link ออกมาสวย ดังนี้
   - ล็อกอิน wp-admin
   - ไปที่เมนู Setting -> Permalink
   - Wordpress จะมีตัวเลือกให้ 5 ตัวเลือก

    - Default = http://localhost/wordpress/?p=123
    - Day and name = http://localhost/wordpress/2011/06/10/sample-post/
    - Month and name = http://localhost/wordpress/2011/06/sample-post/
    - Numeric = http://localhost/wordpress/archives/123
    - Custom Structure = ค่าที่เราต้องการ
เลือกที่  Custom Structure แล้วใส่ค่า  /%category%/%postname%  ลงไป ก็จะได้ ลิงค์
    
     - http://localhost/wordpress/5555/หัวข้อที่เลือก
 
Wordpress ก็จะแสดงค่าที่สวยงามออกมาให้ ครับ
 

2 มิถุนายน 2554

ส่งเมล์ด้วย phpmailer

   ก่อนอื่นต้องเข้าไปโหลด  Class Phpmailer  มาก่อนจากเว็บ http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php4/PHPMailer%20v2.0.4%20for%20PHP4/ โดยผมเลือกโหลดที่ เวอร์ชั่น PHPMailer_v2.0.4 หลังจากดาวน์โหลดมาเสร็จแล้วทำการ แตกไฟล์ ก็จะมีไฟล์ในนั้นมากมายเราเอาไว้แค่ 3 ไฟล์ครับ คือ

1.class.phpmailer.php
2.class.smtp.php
3.class.pop3.php

ซึ่งในขั้นตอนต่อไปก่อนที่จะทำการ ทดลองส่งเมล์ ให้เราแก้ปัญหาเบื้องต้นก่อนทำการทดลอง คือ

1.แก้ $Charset ในไฟล์ class.phpmailer.php จาก iso-8859-1 เป็น utf-8 เพื่อให้เมล์ของเรารองรับภาษาไทย
2.เปิด ;extension=php_openssl.dll ในไฟล์  php.ini โดยลบเครื่องหมาย ; ด้านหน้าแล้วทำการ รีสตาร์ท Apache หนึ่งครั้ง เพื่อทำการเปิดใช้งาน SSL (อ่านเพิ่มเติม)

หลังจากแก้ไขตาม 2 วิธีข้างต้นเสร็จแล้วก็เริ่มทำการสร้างไฟล์เพื่อทดสอบการส่งเมล์ของเราตามนี้เลยครับ

<?php
require('class.phpmailer.php');

$mail = new PHPMailer();
$mail->From = 'chaiwit@xxx-xxx.com'; // เมล์ที่เราใช้ในการส่ง
$mail->FromName = 'chaiwit'; // ชื่อที่ส่ง

$to =array ('chaiwit'=>'chaiwit@xxx-xxx.com');  // to array ใช้ในกรณีส่งหลาย ๆ คนพร้อมกัน
foreach ($to as $name=>$email){
    $mail->AddAddress($email,$name);
}

$cc =array ('chaiwit'=>'chaiwit@xxx-xxx.com'); // cc array ใช้ในกรณี cc หลาย ๆ คนพร้อมกัน
foreach ($cc as $cc_name=>$cc_email){
    $mail->AddCC($cc_email,$cc_name);
}

$bcc =array ('chaiwit'=>'chaiwit@xxx-xxx.com'); // bcc array ใช้ในกรณี bcc หลาย ๆ คนพร้อมกัน
foreach ($bcc as $bcc_name=>$bcc_email){
    $mail->AddBCC($bcc_email,$bcc_name);
}

$mail-> Subject    = 'Test Send Mail'; // หัวข้อเมล์ที่ทำการส่ง ซึ่งใช้ภาษาไทยได้ (เพราะทำการตั้งค่า Charset เป็น utp-8 แล้ว)
$mail-> Body        = 'Mail Detail'; // เนื้อหาของเมล์

$mail->IsHTML (true);
$mail->IsSMTP(); // เปิดใช้ Smtp
$mail->Host = 'ssl://smtp.gmail.com'; // ส่งผ่าน Smtp ของ google
$mail->Port = 465; // พอร์ต
$mail->SMTPAuth    = true;

$mail->Username = 'chaiwit@gmail.com'; // Account ของ Gmail
$mail->Password = 'xxx';

$mail->Send();
$mail->ClearAddresses();
?>


อ่านเพิ่มเติมได้ที่ http://www.select2web.com/php/send-email-with-phpmailer.html