วันพฤหัสบดีที่ 10 พฤษภาคม พ.ศ. 2555

รวมคลิปเก่าๆขั้นตอนการสร้างหน้า Portal ดิสคัส

ช่วงนี้ค้นเอาคลิปเก่าๆที่เคยสร้างไว้ตอนสมัยยังเล่น เว็บบอร์ดดิสคัส นำมารวบรวมไว้ ตอนนี้ก็ไม่ค่อยได้จับแล้วล่ะครับขี้เกลียดตามเวอร์ชั่นใหม่ออกมาเร็วเหลือเกิน คลิปที่ทำก็เป็นการสอนสร้างหน้า Portal ดิสคัส 2.0 แต่เนื้อหาไม่ค่อยละเอียดเท่าไรนะครับอ่านแล้วอาจจะงง เอาไว้ถ้ามีคนสนใจ+ขยันก่อน เดียวค่อยทำสอนใหม่ครับ





/////////////////////////////////// ทำส่วนล็อกอิน //////////////////////////////////


ส่วนล็อกอินนั้นเราจะทำการแก้ไขอยู่ 2 ส่วน

              ก.สมาชิกเข้าระบบแล้ว ส่วนในไฟล์ index.htm ใน ./template/ชื่อโฟเดอร์สกิน/portal จากขั้นตอนด้านบน
              เราจะเพิ่มโค้ดด้านล่างเข้าไปตรงที่อยากให้สมาชิกล็อกอิน
      <!--{eval $mnid = getcurrentnav();}--> 
      <!--{if $_G['uid']}-->
      <ul class="loginmember">
// เมื่อล็อกอินแล้วไม่ว่าจะเป็นผู้ดูแลหรือสมาชิกจะเห็น
            [ส่วนนี้แสดงทั้งผู้ดูแลและสมาชิก]
      <!--{if $_G['uid'] && getstatus($_G['member']['allowadmincp'], 1)}-->
// เมื่อล็อกอินแล้วผู้ดูแลจะเห็น
            [ส่วนผู้ดูแลระบบ]
      <!--{/if}-->
      <!--{hook/global_usernav_extra2}-->
      <!--{hook/global_usernav_extra3}-->
      <!--{eval $upgradecredit = $_G['uid'] && $_G['group']['grouptype'] == 'member' && $_G['group']['groupcreditslower'] != 999999999 ? $_G['group']['groupcreditslower'] - $_G['member']['credits'] : false;}-->
// เมื่อล็อกอินแล้วสมาชิกจะเห็น
            [ส่วนสมาชิก ]
      </ul>
      <!--{elseif !empty($_G['cookie']['loginuser'])}-->
      <a>admin</a>
      <!--{else}-->
// เรียกฟอร์มล็อกอินจากไฟล์ login_socialkpk.htm ใน template\ชื่อโฟเดอร์เทมเพลต\member
      <!--{template member/login_socialkpk}-->
      <!--{/if}-->


       ส่วนที่ต้องทำการแก้ไขคือ [ส่วนนี้แสดงทั้งผู้ดูแลและสมาชิก]  [ส่วนผู้ดูแลระบบ]  [ส่วนสมาชิก ]  และ  login_socialkpk  แล้วแต่ว่าใครต้องการอย่างไหน ผมจะแนะนำโค้ดบางส่วน
       
       // เมนูเพิ่มเติม
<a href="javascript:;" style="font-size:12px;" id="qmenu" onMouseOver="showMenu({'ctrlid':'qmenu','pos':'34!','ctrlclass':'a','duration':2});">เมนูเพิ่มเติม</a>

       // ภาพสมาชิก
<!--{avatar($_G[uid],small)}-->
    
       // ชื่อสมาชิก 
<a href="home.php?mod=space&uid=$_G[uid]" target="_blank" title="{lang visit_my_space}">
{$_G[member][username]}
</a>

       // เครดิต 
<a href="home.php?mod=spacecp&ac=credit&showcredit=1" id="extcreditmenu"{if !$_G[setting][bbclosed]} onMouseOver="delayShow(this, showCreditmenu);" class="showmenu"{/if}>{lang credits}: $_G[member][credits]</a>

         ข.สมาชิกยังไม่เข้าระบบ ในส่วนไฟล์ login_socialkpk.htm (สร้างขึ้นเอง) ใน template\ชื่อโฟเดอร์เทมเพลต\member
         ส่วนนี้จะเป็นฟอร์มล็อกอินดูโค้ดจากไฟล์ login_simple.htm ก็ได้ ตัวอย่างโค้ด
<!--{if CURMODULE != 'logging'}-->
<script type="text/javascript" src="{$_G[setting][jspath]}logging.js?{VERHASH}"></script>
<form method="post" autocomplete="off" name="login" id="loginform_L6zyw" class="cl" onsubmit="pwdclear = 1;ajaxpost('loginform_L6zyw', 'returnmessage_L6zyw', 'returnmessage_L6zyw', 'onerror');return false;" action="member.php?mod=logging&amp;action=login&amp;loginsubmit=yes&amp;loginhash=L6zyw">

//สร้างฟอร์มเองจุดสำคัญจะอยู่ที่สีแดง
//ชื่อสมาชิก
<input type="text" name="username" id="logusername" autocomplete="off" tabindex="1" />
//รหัส
<input name="password" type="password" class="logpassword" id="logpassword" tabindex="902" autocomplete="off" />
// จำการเข้าระบบ
<input type="checkbox" class="pc" name="cookietime" id="cookietime_L6zyw" tabindex="1"value="2592000"  />
<input name="submit" type="submit" id="submit" value="&nbsp;"> //ปุ่ม submit
//จบสร้างฟอร์มเองจุดสำคัญจะอยู่ที่สีแดง
</form>
<!--{/if}-->

หมายเหตุ: สีชมพูนั้นจำเป็นต้องมี ส่วนสีแดงเมื่อเราสร้างช่องกรอกข้อมูลสมาชิกเองเราก็ต้องกำหนด name ตามสีแดง

/////////////////////////////////////////////////เมนู///////////////////////////////////////

ใส่โค้ดนี้ลงไปในจุดที่อยากให้เมนูแสดง

<ul class='discuz'> 
        <!--{loop $_G['setting']['navs'] $nav}--> 
        <!--{if $nav['available'] && (!$nav['level'] || ($nav['level'] == 1 && $_G['uid']) || ($nav['level'] == 2 && $_G['adminid'] > 0) || ($nav['level'] == 3 && $_G['adminid'] == 1))}-->
         <li {if $mnid == $nav[navid]}class="a" {/if}$nav[nav]></li>
         <!--{/if}--> 
        <!--{/loop}-->
</ul>
แล้วปัญหาตรงภาษาอังกฤษที่มากับเมนูให้คุณใช้ CSS กำหนดรูปแบบเอาเอง

.discuz li a {............................}        //สำหรับข้อความชื่อเมนู
.discuz li a span {....................}        //สำหรับตัวอังกฤษ

โค้ด CSS ใส่เข้าไปเองนะครับ เช่นไม่ต้องการให้ตัวล่างแสดงข้อความก็ใส่ 

.discuz li a span { display:none; }

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Disqus Comments