:: JustUsers.net ::

:: คนทำเว็บ :: => Simple Machines Forum [SMF] => Configuration => ข้อความที่เริ่มโดย: LittleCat ที่ 22, พฤษภาคม 2008, 10:32:24 PM

หัวข้อ: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: LittleCat ที่ 22, พฤษภาคม 2008, 10:32:24 PM
การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป


แต่เดิม ที่บอร์ดไม่โชว์รูปแทนตัว ของผู้ใช้งานในบอร์ดที่ไม่ได้ล็อกอิน และที่ล็อกอินแต่ไม่มีรูปแทนตัว

(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/063.jpg)

(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/064.jpg)

หากต้องการจะแก้ไข ให้โชว์รูปแทนตัวสำหรับบุคคลทั่วไป หรือ รูปแทนตัวของบุคคลที่สมัครสมาชิกในทันที

(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/065.jpg)

(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/066.jpg)

สามารถแก้ไขได้ที่ไฟล์ Theme/default/index.template.php

ค้นหาส่วนนี้

อ้างถึง
   // this is the upshrink button for the user info section
   echo '
   <a href="#" onclick="shrinkHeader(!current_header); return false;"><img id="upshrink" src="', $settings['images_url'], '/', empty($options['collapse_header']) ? 'upshrink.gif' : 'upshrink2.gif', '" alt="*" title="', $txt['upshrink_description'], '" align="bottom" style="margin: 0 1ex;" /></a>
   </td>
   </tr>
   <tr id="upshrinkHeader"', empty($options['collapse_header']) ? '' : ' style="display: none;"', '>
   <td valign="top" colspan="2">
   <table width="100%" class="bordercolor" cellpadding="8" cellspacing="1" border="0" style="margin-top: 1px;">
   <tr>';

   if (!empty($context['user']['avatar']))
      echo '
   <td class="windowbg" valign="middle">', $context['user']['avatar']['image'], '</td>';

      echo '
   <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';


(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/067.jpg)


แล้วเพิ่มส่วนนี้ต่อท้าย (ก่อน // If the user is logged in, display stuff like their name, new messages, etc.)

อ้างถึง
// ----------*** ใส่ลิงค์ข้อมูลสมาชิกที่รูปโลโก้ ***---------
   if (!empty($context['user']['avatar']))
      echo '
      <td class="windowbg" valign="middle">
      <a href="', $scripturl, '?action=profile">', $context['user']['avatar']['image'], '</a>
                     </td>';
// ----------*** คนที่ไม่มีรูปส่วนตัวจะแสดงรูป ชื่อรูปที่ต้องการใช้ บุคคลทั่วไปจะแสดงเป็นรูป ชื่อรูปที่ต้องการใช้ ***----------
   else if ($context['user']['is_guest'])
      echo '
   <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/ชื่อรูปที่ต้องการใช้" alt="" /></td>';
   else
      echo '
   <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/ชื่อรูปที่ต้องการใช้" alt="" /></td>';

   echo '
   <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';


ส่วนรูปนั้นๆ ที่จะใช้เป็นรูปแทนตัว ต้องไว้ที่ /Themes/default/images/ นะจ๊ะ
ยกตัวอย่างเช่น ต้องการแก้เป็นรูปนี้
(http://www.littlecatzhome.net/Themes/default/images/noavatar.jpg)
สำหรับสมาชิกไม่มีรูป

(http://www.littlecatzhome.net/Themes/default/images/nologin.jpg)
สำหรับสมาชิกไม่ล็อกอิน

(ชื่อรูปแล้วแต่เราจะใส่จ้ะ ที่สำคัญต้องอัพรูปให้ถูก ไว้ให้ถูกที่)
ก็ต้องแก้ไขเป็น ...

อ้างถึง
   // ----------*** ใส่ลิงค์ข้อมูลสมาชิกที่รูปโลโก้ ***---------
   if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">
                        <a href="', $scripturl, '?action=profile">', $context['user']['avatar']['image'], '</a>
                     </td>';
   // ----------*** คนที่ไม่มีรูปส่วนตัวจะแสดงรูป  noavatar.jpg บุคคลทั่วไปจะแสดงเป็นรูป nologin.jpg ***----------
   else if ($context['user']['is_guest'])
      echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/nologin.jpg" alt="" /></td>';
   else
        echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/noavatar.jpg" alt="" /></td>';

   echo '
      <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';


ก็จะได้ผลดังนี้จ้ะ

(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/068.jpg)

(http://i230.photobucket.com/albums/ee70/chongter_group/Articles/computer/Board/069.jpg)


แน่นอนว่าท่านจะทำรูปได้สวยกว่ารูปตัวอย่างที่ยกมา
อิอิ
 :cool:
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: !! สาวกปีศาจแดง !! ที่ 23, พฤษภาคม 2008, 11:46:07 AM
ขอบคุณคับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 26, พฤษภาคม 2008, 04:39:08 PM
ขอบคุณคับ

สาวกปีศาจแดง  แต่อะวเเตอร์ไม่เข้ากะชื่อแฮะ 555+

มิมีไร เข้ามาแซวเฉยๆ   อ่อ....  ดับเบิลแชมป์  ปีหน้าจะเอาทริปเบิล 55+
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: AREA51 ที่ 02, มิถุนายน 2008, 05:50:22 AM
ขอบคุณครับ ...... :smitten-1:
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: !! สาวกปีศาจแดง !! ที่ 02, มิถุนายน 2008, 10:26:39 AM
อานะ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: vini ที่ 07, มิถุนายน 2008, 12:50:21 PM
รูปผมไม่หล่อ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: bucaclub ที่ 07, มิถุนายน 2008, 05:26:56 PM
ขอบคุณคับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: PiKZaa ที่ 21, มิถุนายน 2008, 07:08:24 PM
ขอบคุณมาก ๆ เลยงับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: P26 ที่ 10, กุมภาพันธ์ 2009, 01:35:08 AM
อ้างถึง

ค้นหาส่วนนี้
// this is the upshrink button for the user info section
   echo '
   <a href="#" onclick="shrinkHeader(!current_header); return false;"><img id="upshrink" src="', $settings['images_url'], '/', empty($options['collapse_header']) ? 'upshrink.gif' : 'upshrink2.gif', '" alt="*" title="', $txt['upshrink_description'], '" align="bottom" style="margin: 0 1ex;" /></a>
   </td>
   </tr>
   <tr id="upshrinkHeader"', empty($options['collapse_header']) ? '' : ' style="display: none;"', '>
   <td valign="top" colspan="2">
   <table width="100%" class="bordercolor" cellpadding="8" cellspacing="1" border="0" style="margin-top: 1px;">
   <tr>';

   if (!empty($context['user']['avatar']))
      echo '
   <td class="windowbg" valign="middle">', $context['user']['avatar']['image'], '</td>';

      echo '
   <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';

theme ที่ใช้อยู่ตอนนี้มันไม่มีส่วนนี้อ่ะค่ะ ก็เลยทำไม่ได้  ทำไงดีคะ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 14, กุมภาพันธ์ 2009, 11:59:08 PM
ลองไปแก้ไฟล์นี้จากธีมดีฟอล
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: LittleCat ที่ 15, กุมภาพันธ์ 2009, 06:40:51 PM

ลองเพิ่มโค้ดเข้าไปเองเลย ไว้ในส่วนที่ต้องการไว้ อย่าลืมตรวจเช็คพวกโค้ดเปิดปิดเหล่านั้นให้เรียบร้อยด้วย ไม่อย่างนั้นหน้าเว็บมันก็จะแจ้งเทมเพลทเออเร่อ

นี่คือวิธีของเหมียวเล็ก --- จับยัดมั่วเอาเองเลย

แต่อย่าลืมเก็บไฟล์สำรองไว้กันพลาดหละ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: P26 ที่ 16, กุมภาพันธ์ 2009, 02:26:36 AM
ลองไปแก้ไฟล์นี้จากธีมดีฟอล
อันนี้มันจะโชว์เฉพาะตอนที่ใช้ธีมดีฟอลอ่ะค่ะ


ลองเพิ่มโค้ดเข้าไปเองเลย ไว้ในส่วนที่ต้องการไว้ อย่าลืมตรวจเช็คพวกโค้ดเปิดปิดเหล่านั้นให้เรียบร้อยด้วย ไม่อย่างนั้นหน้าเว็บมันก็จะแจ้งเทมเพลทเออเร่อ

นี่คือวิธีของเหมียวเล็ก --- จับยัดมั่วเอาเองเลย

แต่อย่าลืมเก็บไฟล์สำรองไว้กันพลาดหละ

อันนี้ก็ลองเอาไปใส่ดูแล้วมันขึ้นว่า Template Parse Error! ค่ะ 
แต่ก็ไม่เป็นไรค่ะถ้ามันไม่ได้จริงๆ (เสียใจนิดๆ  :cry:)

ยังไงก็ขอบคุณสำหรับคำแนะนำนะคะ  :adore:
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: เอ้ ที่ 06, พฤศจิกายน 2009, 05:13:33 PM
ถามหน่อยนะค่ะ คือว่าเอาโค้ด ไปใส่แล้วแต่ว่า ทั้งรูปและข้อความยินดีต้อนรับมันไปอยู่ทางขวาหมดเลยอ่ะ
ต้องแก้ยังงัยเหรอค่ะ ช่วยบอกทีคะ่

หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: kieng ที่ 06, พฤศจิกายน 2009, 05:16:43 PM
ลืมใส่รูปให้ดูค่ะ

(http://img29.imageshack.us/img29/1553/errorx.gif) (http://img29.imageshack.us/i/errorx.gif/)
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: LittleCat ที่ 08, พฤศจิกายน 2009, 08:51:34 AM

ลองไล่แก้ส่วนที่เป็น <td></td> ในบริเวรณนั้น ว่ามันมีเกินมาหนึ่งคู่รึเปล่า
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: morokat ที่ 09, มีนาคม 2010, 12:07:15 PM
help me pls with this error , i'm trying to delete <td></td> bute still like in picture

(http://img191.imageshack.us/img191/1584/52063230.jpg)
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: johnx ที่ 12, มีนาคม 2010, 05:10:47 PM
ลืมใส่รูปให้ดูค่ะ

([url]http://img29.imageshack.us/img29/1553/errorx.gif[/url]) ([url]http://img29.imageshack.us/i/errorx.gif/[/url])



ผมก็เป็นเหมือนกันคับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: johnx ที่ 12, มีนาคม 2010, 05:25:53 PM
ทำได้แล้วครับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: morokat ที่ 14, มีนาคม 2010, 12:13:32 PM
ทำได้แล้วครับ

ทำงัยครับช่วยบอกที่
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: johnx ที่ 16, มีนาคม 2010, 12:24:57 PM
แล้วถ้าจะให้แสดง ในโพสด้วยต้องทำยังไงครับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: NoName ที่ 16, มีนาคม 2010, 12:35:30 PM
justusers.net/forum/index.php?topic=2120.0
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: johnx ที่ 16, มีนาคม 2010, 12:43:16 PM
ทำได้แล้วครับ

ทำงัยครับช่วยบอกที่

คุณใส่โค้ดเกิน ครับ ลองไล่ดูดีีๆ มันจะซ้ำกันอยู่ ลบส่วนที่ซ้ำกันทิ้งไปหรือไม่ต้องใส่นะครับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: Janely ที่ 16, มีนาคม 2010, 12:52:11 PM
 :yaahoo: ขอบคุณจ้าาาาาา
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: UnclEo ที่ 16, มีนาคม 2010, 01:04:42 PM
ทิปนี้..คาดว่า น่าจะเป็นตั้งแต่ครั้ง smf 1.1RC หรือ smf 1.1.2 ประมาณนั้นแหละครับ

ในสมัยนั้นยังไม่มีรูปส่วนตัวหน้า index จึงต้องเพิ่ม ถ้าจำไม่ผิด ตั้งแต่ 1.1.4 เป็นต้นมามันก็มีรูปส่วนตัวมาให้แล้วถ้าไปเพิ่มอย่างทิปนี้มันก็มีตารางเกินเป็นธรรมดา

ด้านบนนั่นผมตอบให้คุณ morokat ที่นี่ >> http://www.dexmore.com/topic/950 (http://www.dexmore.com/topic/950) แต่ไม่ยอมอ่านเลยถามอยู่นั่นแหละ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: scaat69 ที่ 14, กันยายน 2010, 01:51:06 PM
   // this is the upshrink button for the user info section
   echo '
               <a href="#" onclick="shrinkHeader(!current_header); return false;"><img id="upshrink" src="', $settings['images_url'], '/', empty($options['collapse_header']) ? 'upshrink.gif' : 'upshrink2.gif', '" alt="*" title="', $txt['upshrink_description'], '" align="bottom" style="margin: 0 1ex;" /></a>
            </td>
         </tr>
         <tr id="upshrinkHeader"', empty($options['collapse_header']) ? '' : ' style="display: none;"', '>
            <td valign="top" colspan="2">
               <table width="100%" class="bordercolor" cellpadding="8" cellspacing="1" border="0" style="margin-top: 1px;">
                  <tr>';

   if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">', $context['user']['avatar']['image'], '</td>';

   echo '
                     <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';

   // ----------*** ใส่ลิงค์ข้อมูลสมาชิกที่รูปโลโก้ ***---------
   if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">
                        <a href="', $scripturl, '?action=profile">', $context['user']['avatar']['image'], '</a>
                     </td>';
   // ----------*** คนที่ไม่มีรูปส่วนตัวจะแสดงรูป  noavatar.jpg บุคคลทั่วไปจะแสดงเป็นรูป nologin.jpg ***----------
   else if ($context['user']['is_guest'])
      echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/noavatar2.gif" alt="" /></td>';
   else
        echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/noavatar2.gif" alt="" /></td>';

   echo '
      <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';



-ช่วยแก้ให้ด้วยครับ งงไปหมดเเล้วครับพี่ๆทั้งหลา่ย ยิ่งแก้ยิงพังคัรบ
(http://img841.imageshack.us/img841/2171/55760919.jpg) (http://img841.imageshack.us/i/55760919.jpg/)

Uploaded with ImageShack.us (http://imageshack.us)
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: LittleCat ที่ 14, กันยายน 2010, 09:51:19 PM

ลองเอาตัวนี้ออกดูดิ๊ เวิร์กไหม
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: scaat69 ที่ 15, กันยายน 2010, 08:41:21 AM
- ยังไม่ได้เหมือนเดิมครับ ลงจนพังไปหลายรอบแล้วครับ ผมสงสัยว่าทั้งๆที่ผมใช้ Themes/default/ และทำตามขั้นตอนทุกอย่างแต่ทำไมไม่ได้ครับ
- ขอบคุณ Admin มากๆครับ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: scaat69 ที่ 16, กันยายน 2010, 01:24:13 PM
- พี่ๆยังไม่มีใครมาบอกกระผมเลยครับช่วยผมทีครับ :cry: :help:
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: เซียวเหล่งนึ่งฯ ที่ 16, กันยายน 2010, 01:54:43 PM
ลองไล่ปรับโค๊ด td ทดลองลบออกทีละคู่ดู
หรือ
 colspan="2" หมายถึงให้มี 2 คอลัม
ลองไล่ๆแก้ให้เป็น 1 ดู

แนะนำได้เท่านี้หละหนา ไม่มีเวลาลองให้ทั้งหมดเหมือนกัน
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: akha ที่ 04, ตุลาคม 2010, 11:54:43 PM
ไม่เคยทำไ้ด้เลย

แก้...มุมรูปเป็นปกติได้แล้ว

ดัน..เวลา login เข้าใช้ avatar กลายเป็นสองรูปสักงั้นน


....ใครช่วยได้บ้างนะ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: Sriiam ที่ 06, ตุลาคม 2011, 02:51:37 AM
แบ่งปันครับ สำหรับท่านที่ยังทำไม่ได้ (ผมก็ทำตามที่กระทู้นี้แนะนำ ก็เจอปัญหาเดียวกันนั่นแหละครับ)
จึงลองไล่ดูทีละบรรทัด ทีละคำสั่ง เป็นการฝึกไปในตัว (จะได้พัฒนาขึ้น จากไม่รู้อะไรเลย)
ต้องออกตัวก่อนว่า ไม่ได้มีความรุ้ด้านนี้โดยตรงครับ อาศัยมั่วเหมือนกัน  ดังนั้น จึงต้องอาศัยท่านผู้รู้มายืนยันครับ
เพราะเมื่อเราแก้ไปแล้ว  มันแสดงก็จริง  แต่มันจะมีผลไปถึงส่วนอื่นหรือเปล่านี้เรื่องใหญ่ครับ
ดังนั้นก็ลองทำตามผมไปก่อน

  if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">', $context['user']['avatar']['image'], '</td>';

   echo '
                     <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';

   // ----------*** ใส่ลิงค์ข้อมูลสมาชิกที่รูปโลโก้ ***---------
   if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle"><a href="', $scripturl, '?action=profile">', $context['user']['avatar']['image'], '</a>
                     </td>';
 
  // ----------*** คนที่ไม่มีรูปส่วนตัวจะแสดงรูป  noavatar.jpg บุคคลทั่วไปจะแสดงเป็นรูป nologin.jpg ***----------
   else if ($context['user']['is_guest'])
      echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/noavatar2.gif" alt="" /></td>';
   else
        echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/noavatar2.gif" alt="" /></td>';

   echo '
      <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';

     จะสังเกตเห็นว่า ตรงตำแหน่ง  ก่อนที่เราจะนำโค้ดใหม่นี้ไปแทรกนั้น มันมีคำสั่งนั้นอยู่แล้ว (ด้านบนสีแดง) เมื่อเราไปซ้อนมันเข้าไปอีก จึงทำให้ผลที่ออกมา มันไปกองกันอยู่ด้านขวามือ
ดังนั้น ลองลบกลุ่มสีแดงนั้นออกครับ เซฟ และปรับหน้าใหม่ลองดูครับ...
ขอบคุณท่านเจ้าของกระทู้ที่นำมาแบ่ง ขอบคุณ ทีมงาน justusers.net ได้ความรู้จากนี้มากมาย... :smitten-1:
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: UnclEo ที่ 06, ตุลาคม 2011, 11:06:39 AM
ทิปนี้..คาดว่า น่าจะเป็นตั้งแต่ครั้ง smf 1.1RC หรือ smf 1.1.2 ประมาณนั้นแหละครับ

ในสมัยนั้นยังไม่มีรูปส่วนตัวหน้า index จึงต้องเพิ่ม ถ้าจำไม่ผิด ตั้งแต่ 1.1.4 เป็นต้นมามันก็มีรูปส่วนตัวมาให้แล้วถ้าไปเพิ่มอย่างทิปนี้มันก็มีตารางเกินเป็นธรรมดา

ด้านบนนั่นผมตอบให้คุณ morokat ที่นี่ >> [url]http://www.dexmore.com/topic/950[/url] ([url]http://www.dexmore.com/topic/950[/url]) แต่ไม่ยอมอ่านเลยถามอยู่นั่นแหละ


ก็บอกแล้วไงครับว่ามันมีอยู่แล้วเพิ่มเข้าไปมันก็มีเป็นสองอัน ถ้าต้องการให้รูปบุคคลทั่วไปเป็น noavatar ก็แค่เพิ่มเงื่อนไข else if ($context['user']['is_guest'])

สำเร็จรูปเป็นแบบนี้ครับ

โค๊ด: [Select]
echo '<td class="windowbg" valign="middle">';
if (!empty($context['user']['avatar']))
echo $context['user']['avatar']['image'];

else if ($context['user']['is_guest'])
echo '<img src="', $settings['images_url'], '/noavatar.gif" alt="noavatar" />';

else
echo '<img src="', $settings['images_url'], '/noavatar.gif" alt="noavatar" />';

echo '</td>';

แค่นี้มันก็แสดงรูปส่วนตัวของสมาชิกที่ใส่รูป ไม่ได้ใส่รูป และบุคคลทั่วไปหมดแล้ว

อธิบายที่ละบรรทัด

1. echo '<td class="windowbg" valign="middle">'; แสดงตารางโดยปราศจากเงื่อนไขใดๆ ซึ่งโค้ดด้านบนนั่นถ้าพูดกันตามภาษาเว็บโปรแกรมเขาเรียกว่าโค้ดขยะ สังเกตุดูว่าจะมีแท็ก td ถึง 3 แท็ก โดยไม่มีความจำเป็นซึ่งสามารถลดให้เหลือแท็กเดียวได้ ในเมื่อตารางนี้ต้องแสดงอยู่แล้ว ไม่ว่าสมาชิกใส่รูป ไม่ได้ใส่รูป หรือบุคลลทั่วไปมันก็ต้องมีก็ให้มันมีที่เดียวทีเดียวไปเลย

2. เงื่อนไข if (!empty($context['user']['avatar'])) เป็นการตรวจสอบว่ารูปส่วนตัวของสมาชิกว่างเปล่าหรือไม่ ถ้าไม่ว่างเปล่าก็คิวรี่รูปส่วนมาแสดง

3. แสงผลตัวแปร echo $context['user']['avatar']['image']; ตามเงื่อนไขข้อ 2 โดยในที่นี้จะแสดงเฉพาะรูปส่วนตัว ไม่มีการลิงค์ไปยังข้อมูลส่วนตัวหากต้องการลิงค์ไปก็แก้คำสั่งเป็น echo '<a href="', $scripturl, '?action=profile">', $context['user']['avatar']['image'], '</a>';

4. เงื่อนไข else if ($context['user']['is_guest']) หากผู้ใช้ไม่ได้เข้าสู่ระบบ (อยู่ในฐานะบุคคลทั่วไป)

5 . แสดงรูป novatar ด้วยคำสั่ง echo ' <img src="', $settings['images_url'], '/noavatar.gif" alt="noavatar" />';

6. else หากเงื่อนไข if (!empty($context['user']['avatar'])) เป็นเท็จ (คือสมาชิกไม่ได้ใส่รูป)

7. แสดงรูป noavatar ด้วยคำสั่ง echo ' <img src="', $settings['images_url'], '/noavatar.gif" alt="noavatar" />';

8. echo '</td>'; ปิดตารางโดยปราศจากเงื่อนไขใดๆ

น่าจะสรุปปัญหาทั้งหมดของกระทู้นี้ได้แล้วนะครับ

ออ..ลืมบอกไป เอาไปวางทับโค้ดนี้ครับ
โค๊ด: [Select]
if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">', $context['user']['avatar']['image'], '</td>';
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: Hanniboon ที่ 23, มกราคม 2012, 04:48:42 PM
http://custom.simplemachines.org/mods/index.php?mod=975 (http://custom.simplemachines.org/mods/index.php?mod=975)

1. โหลด ที่เป็น zip มา
2. เข้า admin ของบอร์ดเรา แล้วไปที่ package จัดการอัพโหลดผ่านตรงนี้ซะ
3. ก็เป็นการอัพแพคเกจ ตามขั้นตอน สังเกตุว่ามีการตรวจสอบ Test ผ่านหรือไม่ ถ้าเห็น skipp ที่ไฟล์ภาษาอื่น เช่น สเปน ก็ไม่ต้องสนใจ มันไม่มีในบอร์ดเรา
4. เมื่ออัพแพคเกจเสร็จแล้ว ให้ใช้ ftp เอารูป default avatar ไปใส่ไว้ รูปที่ใช้ควรมีขนาด 70*80 เพื่อให้โหลดเร็ว
6. กลับไปที่หน้า admin ไปที่ attachment and avatar -> avatar setting ข้างล่างสุด จะมี firld โผล่ขึ้นมา ให้ใส่ URL (เน้นว่า URL) ของรูปที่เพิ่งอัพลงไป เช่น http://www.abcd.com/board/Themes/default/images/default_avatar.gif (http://www.abcd.com/board/Themes/default/images/default_avatar.gif) แล้วก็กด save setting ซะ
หัวข้อ: Re: การเพิ่มรูปแทนตัวให้กับสมาชิกที่ไม่ได้ใส่รูป และบุคคลทั่วไป
เริ่มหัวข้อโดย: manamail ที่ 31, กรกฎาคม 2012, 02:00:31 PM
ผมลองทำตามแล้วครับ ผลออกมาเป็นแบบนี้ครับ

// display the time
   echo '
            <td class="titlebg2" height="32" align="right">
               <span class="smalltext">' , $context['current_time'], '</span>';

   // this is the upshrink button for the user info section
   echo '
               <a href="#" onclick="shrinkHeader(!current_header); return false;"><img id="upshrink" src="', $settings['images_url'], '/', empty($options['collapse_header']) ? 'upshrink.gif' : 'upshrink2.gif', '" alt="*" title="', $txt['upshrink_description'], '" align="bottom" style="margin: 0 1ex;" /></a>
            </td>
         </tr>
         <tr id="upshrinkHeader"', empty($options['collapse_header']) ? '' : ' style="display: none;"', '>
            <td valign="top" colspan="2">
               <table width="100%" class="bordercolor" cellpadding="8" cellspacing="1" border="0" style="margin-top: 1px;">
                  <tr>';

   if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">', $context['user']['avatar']['image'], '</td>';

   echo '
                     <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';

 // ----------*** ใส่ลิงค์ข้อมูลสมาชิกที่รูปโลโก้ ***---------
   if (!empty($context['user']['avatar']))
      echo '
                     <td class="windowbg" valign="middle">
                        <a href="', $scripturl, '?action=profile">', $context['user']['avatar']['image'], '</a>
                     </td>';
   // ----------*** คนที่ไม่มีรูปส่วนตัวจะแสดงรูป  noavatar.jpg บุคคลทั่วไปจะแสดงเป็นรูป nologin.jpg ***----------
   else if ($context['user']['is_guest'])
      echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/nologin.jpg" alt="" /></td>';
   else
        echo '
      <td class="windowbg" valign="middle"><img src="', $settings['images_url'], '/noavatar.jpg" alt="" /></td>';

   echo '
      <td colspan="2" width="100%" valign="top" class="windowbg2"><span class="middletext">';

   // If the user is logged in, display stuff like their name, new messages, etc.
   if ($context['user']['is_logged'])
   {
// Only tell them about their messages if they can read their messages! ----------*** แก้ไข (เพิ่มลิงค์ข้อความส่วนตัว) ***----------
                if ($context['allow_pm'])
                        echo '', $txt[152], ' <a href="', $scripturl, '?action=pm">', $context['user']['messages'], ' ', $context['user']['messages'] != 1 ? $txt[153] : $txt[471], '</a>', $txt['newmessages4'], ' ', $context['user']['unread_messages'], ' ', $context['user']['unread_messages'] == 1 ? $txt['newmessages0'] : $txt['newmessages1'];