Home Webboard ArticlesKnowledges  

ผู้เขียน หัวข้อ: ปรับบอร์ด 3 คอลัมน์+mod Responsive curve  (อ่าน 233 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ drkann

  • Just
  • **
  • กระทู้: 23
  • เห็นด้วย&ขอบคุณ: 4
ปรับบอร์ด 3 คอลัมน์+mod Responsive curve
« เมื่อ: 19, กรกฎาคม 2019, 01:18:32 PM »
 :cheesy: พอดีปรับบอร์ด smf 2.0.15 เป็นบอร์ด 3 คอลัมน์โดยอาศัยโค้ดของ Indytheme และลง mod Responsive curve https://custom.simplemachines.org/mods/index.php?mod=4040  การแสดงผลของคอมพิวเตอร์ปกติดี แต่ในมือถือมันล้นขอบครับ

อยากวอนผู้รู้ช่วยปรับโค้ดหน่อยครับ ลองนานแล้วแต่ไม่ได้เลย
โค๊ด: [Select]
<?php
/**
 * Simple Machines Forum (SMF)
 *
 * [แอท]package SMF
 * [แอท]author Simple Machines
 * [แอท]copyright 2011 Simple Machines
 * [แอท]license http://www.simplemachines.org/about/smf/license.php BSD
 *
 * [แอท]version 2.0
 */

function template_main()
{
global $context$settings$options$txt$scripturl$modSettings;

// Show some statistics if stat info is off.
if (!$settings['show_stats_index'])
echo '
<div id="index_common_stats">
'
$txt['members'], ': '$context['common_stats']['total_members'], ' &nbsp;&#38;#8226;&nbsp; '$txt['posts_made'], ': '$context['common_stats']['total_posts'], ' &nbsp;&#38;#8226;&nbsp; '$txt['topics'], ': '$context['common_stats']['total_topics'], '
'
, ($settings['show_latest_member'] ? ' ' $txt['welcome_member'] . ' <strong>' $context['common_stats']['latest_member']['link'] . '</strong>' $txt['newest_member'] : '') , '
</div>'
;

// Show the news fader?  (assuming there are things to show...)
if ($settings['show_newsfader'] && !empty($context['fader_news_lines']))
{
echo '
<div id="newsfader">
<div class="cat_bar">
<h3 class="catbg">
<img id="newsupshrink" src="'
$settings['images_url'], '/collapse.gif" alt="*" title="'$txt['upshrink_description'], '" align="bottom" style="display: none;" />
'
$txt['news'], '
</h3>
</div>
<ul class="reset" id="smfFadeScroller"'
, empty($options['collapse_news_fader']) ? '' ' style="display: none;"''>';

foreach ($context['news_lines'] as $news)
echo '
<li>'
$news'</li>';

echo '
</ul>
</div>
<script type="text/javascript" src="'
$settings['default_theme_url'], '/scripts/fader.js"></script>
<script type="text/javascript"><!-- // --><![CDATA[

// Create a news fader object.
var oNewsFader = new smf_NewsFader({
sSelf: \'oNewsFader\',
sFaderControlId: \'smfFadeScroller\',
sItemTemplate: '
JavaScriptEscape('<strong>%1$s</strong>'), ',
iFadeDelay: '
, empty($settings['newsfader_time']) ? 5000 $settings['newsfader_time'], '
});

// Create the news fader toggle.
var smfNewsFadeToggle = new smc_Toggle({
bToggleEnabled: true,
bCurrentlyCollapsed: '
, empty($options['collapse_news_fader']) ? 'false' 'true'',
aSwappableContainers: [
\'smfFadeScroller\'
],
aSwapImages: [
{
sId: \'newsupshrink\',
srcExpanded: smf_images_url   \'/collapse.gif\',
altExpanded: '
JavaScriptEscape($txt['upshrink_description']), ',
srcCollapsed: smf_images_url   \'/expand.gif\',
altCollapsed: '
JavaScriptEscape($txt['upshrink_description']), '
}
],
oThemeOptions: {
bUseThemeSettings: '
$context['user']['is_guest'] ? 'false' 'true'',
sOptionName: \'collapse_news_fader\',
sSessionVar: '
JavaScriptEscape($context['session_var']), ',
sSessionId: '
JavaScriptEscape($context['session_id']), '
},
oCookieOptions: {
bUseCookie: '
$context['user']['is_guest'] ? 'true' 'false'',
sCookieName: \'newsupshrink\'
}
});
// ]]></script>'
;
}
    
// ---*** à¾ÔèÁµÒÃÒ§ãµé¢èÒÇ ***---
   //echo '
      //<div class="tborder" ', $context['browser']['needs_size_fix'] && !$context['browser']['is_ie6'] ? 'style="width: 100%;"' : '', '>
      //<table border="0" width="100%" cellspacing="1" cellpadding="4" class="bordercolor">
      //<div class="catbg" style="padding: 6px; vertical-align: middle; text-align: center; ">
      // ';

   // This is the "Recent Posts" bar.
if (!empty($settings['number_recent_posts']) && (!empty($context['latest_posts']) || !empty($context['latest_post'])))
{
echo '
<div class="cat_bar">
<h4 class="catbg">
<span class="ie6_header floatleft">
<a href="'
$scripturl'?action=recent"><img class="icon" src="'$settings['images_url'], '/post/xx.gif" alt="'$txt['recent_posts'], '" /></a>
'
$txt['recent_posts'], '
</span>
</h4>
</div>
<div class="hslice" id="recent_posts_content">
<div class="entry-title" style="display: none;">'
$context['forum_name_html_safe'], ' - '$txt['recent_posts'], '</div>
<div class="entry-content" style="display: none;">
<a rel="feedurl" href="'
$scripturl'?action=.xml;type=webslice">'$txt['subscribe_webslice'], '</a>
</div>'
;

// Only show one post.
if ($settings['number_recent_posts'] == 1)
{
// latest_post has link, href, time, subject, short_subject (shortened with...), and topic. (its id.)
echo '
<strong><a href="'
$scripturl'?action=recent">'$txt['recent_posts'], '</a></strong>
<p id="infocenter_onepost" class="middletext">
'
$txt['recent_view'], ' &quot;'$context['latest_post']['link'], '&quot; '$txt['recent_updated'], ' ('$context['latest_post']['time'], ')<br />
</p>'
;
}
// Show lots of posts.
elseif (!empty($context['latest_posts']))
{
echo '
<table cellpadding="2" cellspacing="0" width="100%" border="0" id="ic_recentposts" class="middletext">'
;

/* Each post in latest_posts has:
board (with an id, name, and link.), topic (the topic's id.), poster (with id, name, and link.),
subject, short_subject (shortened with...), time, link, and href. */
$indytheme 0;
foreach ($context['latest_posts'] as $post)
{
$indytheme  ;
echo '
<tr>
<td valign="top">&nbsp;<img src="'
$settings['images_url'], '/icon_number/',$indytheme,'.png" > &nbsp;<strong>'$post['link'], '</strong>&nbsp;<img src="' $settings['lang_images_url'] . '/new.gif"</td>
<td valign="top" nowrap="nowrap">[ '
$post['board']['link'], ' ]&nbsp;(อ่าน '$post['views'], ' / ตอบ '$post['replies'], ')</td>
<td valign="top" nowrap="nowrap">'
$txt['by'], ' '$post['poster']['link'], ' </td>
<td align= "right" valign="top" nowrap="nowrap">'
$post['time'], '</td>';
echo '
</tr>'
;
}

}
echo '
</table>'
;
echo '
<br/></div>'
;
}


echo '
<div id="boardindex_table">
<table class="table_list">'
;

/* Each category in categories is made up of:
id, href, link, name, is_collapsed (is it collapsed?), can_collapse (is it okay if it is?),
new (is it new?), collapse_href (href to collapse/expand), collapse_image (up/down image),
and boards. (see below.) */


foreach ($context['categories'] as $category)
{
//count board.


// If theres no parent boards we can see, avoid showing an empty category (unless its collapsed)
if (empty($category['boards']) && !$category['is_collapsed'])
continue;

echo '
<tbody class="header" id="category_'
$category['id'], '">
<tr>
<td colspan="3">
<div class="cat_bar">
<h3 class="catbg">'
;

// If this category even can collapse, show a link to collapse it.
if ($category['can_collapse'])
echo '
<a class="collapse" href="'
$category['collapse_href'], '">'$category['collapse_image'], '</a>';

if (!$context['user']['is_guest'] && !empty($category['show_unread']))
echo '
<a class="unreadlink" href="'
$scripturl'?action=unread;c='$category['id'], '">'$txt['view_unread_category'], '</a>';

echo '
'
$category['link'], '
</h3>
</div>
</td>
</tr>
</tbody>
<tbody class="content" id="category_'
$category['id'], '_boards">';

// Assuming the category hasn't been collapsed...
if (!$category['is_collapsed'])
{
$indytheme=1;

/* Each board in each category's boards has:
new (is it new?), id, name, description, moderators (see below), link_moderators (just a list.),
children (see below.), link_children (easier to use.), children_new (are they new?),
topics (# of), posts (# of), link, href, and last_post. (see below.) */


foreach ($category['boards'] as $board)
{



echo'

<td>
<div class="board_icon"><a class="subject img_fade" href="'
$board['href'], '" name="b'$board['id'], '"><img class="rotate" src="'$settings['images_url'], '/boardicons/' $board['id'] , '.png"  alt=""/></a></div>
<div class="board_data">
<a class="subject" href="'
$board['href'], '" name="b'$board['id'], '"><span class="board_link">'$board['name'], '</span></a>
'
;
// Has it outstanding posts for approval?
if ($board['can_approve_posts'] && ($board['unapproved_posts'] || $board['unapproved_topics']))
echo '
<a href="'
$scripturl'?action=moderate;area=postmod;sa=', ($board['unapproved_topics'] > 'topics' 'posts'), ';brd='$board['id'], ';'$context['session_var'], '='$context['session_id'], '" title="'sprintf($txt['unapproved_posts'], $board['unapproved_topics'], $board['unapproved_posts']), '" class="moderation_link">(!)</a>';

echo '

<p style="color:#888">'
$board['description'] , '</p>
<p style="color:#CC0000"><small>'
comma_format($board['posts']), ' ',$txt['posts'], ' | ',comma_format($board['topics']),' ' $txt['board_topics'].'</small></p>
<p><small><strong>'
$txt['last_post'], ' '$txt['on'],' </strong>'$board['last_post']['time'],'</small></p>

'
;
echo'
</div>

</td>'
;

if($indytheme==3){
echo'</tr><tr>
'
;
$indytheme=0;
}
$indytheme  ;



}
}
echo '
</tbody>
<tbody class="divider">
<tr>
<td colspan="4"></td>
</tr>
</tbody>'
;
}
echo '
</table>
</div>'
;

if ($context['user']['is_logged'])
{
echo '
<div id="posting_icons" class="floatleft">'
;

// Mark read button.
$mark_read_button = array(
'markread' => array('text' => 'mark_as_read''image' => 'markread.gif''lang' => true'url' => $scripturl '?action=markasread;sa=all;' $context['session_var'] . '=' $context['session_id']),
);

echo '
<ul class="reset">
<li class="floatleft">'
, empty($settings['new_some_image']) ? ('<img src="'$settings['images_url']. '/'$context['theme_variant_url']. 'new_some.png" alt="'$txt['new_posts']. '" title="'$txt['new_posts']. '" /> '$txt['new_posts']. '') : ('<img src="' $settings['new_some_image'] . '" alt="" /> '$txt['new_posts']. ''), '</li>
<li class="floatleft">'
, empty($settings['new_none_image']) ? ('<img src="'$settings['images_url']. '/'$context['theme_variant_url']. 'new_none.png" alt="'$txt['old_posts']. '" title="'$txt['old_posts']. '" /> '$txt['old_posts']. '') : ('<img src="' $settings['new_none_image'] . '" alt="" /> '$txt['old_posts']. ''), '</li>
<li class="floatleft">'
, empty($settings['new_redirect_image']) ? ('<img src="'$settings['images_url']. '/'$context['theme_variant_url']. 'new_redirect.png" alt="'$txt['redirect_board']. '" title="'$txt['redirect_board']. '" /> '$txt['redirect_board']. '') : ('<img src="' $settings['new_redirect_image'] . '" alt="" /> '$txt['redirect_board']. ''), '</li>
</ul>
</div>'
;

// Show the mark all as read button?
if ($settings['show_mark_read'] && !empty($context['categories']))
echo '<div class="mark_read">'template_button_strip($mark_read_button'right'), '</div>';
}
else
{
echo '
<div id="posting_icons" class="flow_hidden">
<ul class="reset">
<li class="floatleft">'
, empty($settings['new_none_image']) ? ('<img src="'$settings['images_url']. '/'$context['theme_variant_url']. 'new_none.png" alt="'$txt['old_posts']. '" title="'$txt['old_posts']. '" /> '$txt['old_posts']. '') : ('<img src="' $settings['new_none_image'] . '" alt="" /> '$txt['old_posts']. ''), '</li>
<li class="floatleft">'
, empty($settings['new_redirect_image']) ? ('<img src="'$settings['images_url']. '/'$context['theme_variant_url']. 'new_redirect.png" alt="'$txt['redirect_board']. '" title="'$txt['redirect_board']. '" /> '$txt['redirect_board']. '') : ('<img src="' $settings['new_redirect_image'] . '" alt="" /> '$txt['redirect_board']. ''), '</li>
</ul>
</div>'
;
}

template_info_center();
}

function 
template_info_center()
{
global $context$settings$options$txt$scripturl$modSettings;

// Here's where the "Info Center" starts...
echo '
<span class="clear upperframe"><span></span></span>
<div class="roundframe"><div class="innerframe">
<div class="cat_bar">
<h3 class="catbg">
<img class="icon" id="upshrink_ic" src="'
$settings['images_url'], '/collapse.gif" alt="*" title="'$txt['upshrink_description'], '" style="display: none;" />
'
sprintf($txt['info_center_title'], $context['forum_name_html_safe']), '
</h3>
</div>
<div id="upshrinkHeaderIC"'
, empty($options['collapse_header_ic']) ? '' ' style="display: none;"''>';

// Show information about events, birthdays, and holidays on the calendar.
if ($context['show_calendar'])
{
echo '
<div class="title_barIC">
<h4 class="titlebg">
<span class="ie6_header floatleft">
<a href="'
$scripturl'?action=calendar' '"><img class="icon" src="'$settings['images_url'], '/icons/calendar.gif''" alt="'$context['calendar_only_today'] ? $txt['calendar_today'] : $txt['calendar_upcoming'], '" /></a>
'
$context['calendar_only_today'] ? $txt['calendar_today'] : $txt['calendar_upcoming'], '
</span>
</h4>
</div>
<p class="smalltext">'
;

// Holidays like "Christmas", "Chanukah", and "We Love [Unknown] Day" :P.
if (!empty($context['calendar_holidays']))
echo '
<span class="holiday">'
$txt['calendar_prompt'], ' 'implode(', '$context['calendar_holidays']), '</span><br />';

// People's birthdays. Like mine. And yours, I guess. Kidding.
if (!empty($context['calendar_birthdays']))
{
echo '
<span class="birthday">'
$context['calendar_only_today'] ? $txt['birthdays'] : $txt['birthdays_upcoming'], '</span> ';
/* Each member in calendar_birthdays has:
id, name (person), age (if they have one set?), is_last. (last in list?), and is_today (birthday is today?) */
foreach ($context['calendar_birthdays'] as $member)
echo '
<a href="'
$scripturl'?action=profile;u='$member['id'], '">'$member['is_today'] ? '<strong>' ''$member['name'], $member['is_today'] ? '</strong>' '', isset($member['age']) ? ' (' $member['age'] . ')' '''</a>'$member['is_last'] ? '<br />' ', ';
}
// Events like community get-togethers.
if (!empty($context['calendar_events']))
{
echo '
<span class="event">'
$context['calendar_only_today'] ? $txt['events'] : $txt['events_upcoming'], '</span> ';
/* Each event in calendar_events should have:
title, href, is_last, can_edit (are they allowed?), modify_href, and is_today. */
foreach ($context['calendar_events'] as $event)
echo '
'
$event['can_edit'] ? '<a href="' $event['modify_href'] . '" title="' $txt['calendar_edit'] . '"><img src="' $settings['images_url'] . '/icons/modify_small.gif" alt="*" /></a> ' ''$event['href'] == '' '' '<a href="' $event['href'] . '">'$event['is_today'] ? '<strong>' $event['title'] . '</strong>' $event['title'], $event['href'] == '' '' '</a>'$event['is_last'] ? '<br />' ', ';
}
echo '
</p>'
;
}

// Show statistical style information...
if ($settings['show_stats_index'])
{
echo '
<div class="title_barIC">
<h4 class="titlebg">
<span class="ie6_header floatleft">
<a href="'
$scripturl'?action=stats"><img class="icon" src="'$settings['images_url'], '/icons/info.gif" alt="'$txt['forum_stats'], '" /></a>
'
$txt['forum_stats'], '
</span>
</h4>
</div>
<p>
'
$context['common_stats']['total_posts'], ' '$txt['posts_made'], ' '$txt['in'], ' '$context['common_stats']['total_topics'], ' '$txt['topics'], ' '$txt['by'], ' '$context['common_stats']['total_members'], ' '$txt['members'], '. ', !empty($settings['show_latest_member']) ? $txt['latest_member'] . ': <strong> ' $context['common_stats']['latest_member']['link'] . '</strong>' '''<br />
'
, (!empty($context['latest_post']) ? $txt['latest_post'] . ': <strong>&quot;' $context['latest_post']['link'] . '&quot;</strong>  ( ' $context['latest_post']['time'] . ' )<br />' ''), '
<a href="'
$scripturl'?action=recent">'$txt['recent_view'], '</a>'$context['show_stats'] ? '<br />
<a href="' 
$scripturl '?action=stats">' $txt['more_stats'] . '</a>' '''
</p>'
;
}

// "Users online" - in order of activity.
echo '
<div class="title_barIC">
<h4 class="titlebg">
<span class="ie6_header floatleft">
'
$context['show_who'] ? '<a href="' $scripturl '?action=who' '">' '''<img class="icon" src="'$settings['images_url'], '/icons/online.gif''" alt="'$txt['online_users'], '" />'$context['show_who'] ? '</a>' '''
'
$txt['online_users'], '
</span>
</h4>
</div>
<p class="inline stats">
'
$context['show_who'] ? '<a href="' $scripturl '?action=who">' ''comma_format($context['num_guests']), ' '$context['num_guests'] == $txt['guest'] : $txt['guests'], ', ' comma_format($context['num_users_online']), ' '$context['num_users_online'] == $txt['user'] : $txt['users'];

// Handle hidden users and buddies.
$bracketList = array();
if ($context['show_buddies'])
$bracketList[] = comma_format($context['num_buddies']) . ' ' . ($context['num_buddies'] == $txt['buddy'] : $txt['buddies']);
if (!empty($context['num_spiders']))
$bracketList[] = comma_format($context['num_spiders']) . ' ' . ($context['num_spiders'] == $txt['spider'] : $txt['spiders']);
if (!empty($context['num_users_hidden']))
$bracketList[] = comma_format($context['num_users_hidden']) . ' ' $txt['hidden'];

if (!empty($bracketList))
echo ' (' implode(', '$bracketList) . ')';

echo $context['show_who'] ? '</a>' '''
</p>
<p class="inline smalltext">'
;

// Assuming there ARE users online... each user in users_online has an id, username, name, group, href, and link.
if (!empty($context['users_online']))
{
echo '
'
sprintf($txt['users_active'], $modSettings['lastActive']), ':<br />'implode(', '$context['list_users_online']);

// Showing membergroups?
if (!empty($settings['show_group_key']) && !empty($context['membergroups']))
echo '
<br />[' 
implode(']&nbsp;&nbsp;['$context['membergroups']) . ']';
}

echo '
</p>
<p class="last smalltext">
'
$txt['most_online_today'], ': <strong>'comma_format($modSettings['mostOnlineToday']), '</strong>.
'
$txt['most_online_ever'], ': 'comma_format($modSettings['mostOnline']), ' ('timeformat($modSettings['mostDate']), ')
</p>'
;

// If they are logged in, but statistical information is off... show a personal message bar.
if ($context['user']['is_logged'] && !$settings['show_stats_index'])
{
echo '
<div class="title_barIC">
<h4 class="titlebg">
<span class="ie6_header floatleft">
'
$context['allow_pm'] ? '<a href="' $scripturl '?action=pm">' '''<img class="icon" src="'$settings['images_url'], '/message_sm.gif" alt="'$txt['personal_message'], '" />'$context['allow_pm'] ? '</a>' '''
<span>'
$txt['personal_message'], '</span>
</span>
</h4>
</div>
<p class="pminfo">
<strong><a href="'
$scripturl'?action=pm">'$txt['personal_message'], '</a></strong>
<span class="smalltext">
'
$txt['you_have'], ' 'comma_format($context['user']['messages']), ' '$context['user']['messages'] == $txt['message_lowercase'] : $txt['msg_alert_messages'], '.... '$txt['click'], ' <a href="'$scripturl'?action=pm">'$txt['here'], '</a> '$txt['to_view'], '
</span>
</p>'
;
}

echo '
</div>
</div></div>
<span class="lowerframe"><span></span></span>'
;

// Info center collapse object.
echo '
<script type="text/javascript"><!-- // --><![CDATA[
var oInfoCenterToggle = new smc_Toggle({
bToggleEnabled: true,
bCurrentlyCollapsed: '
, empty($options['collapse_header_ic']) ? 'false' 'true'',
aSwappableContainers: [
\'upshrinkHeaderIC\'
],
aSwapImages: [
{
sId: \'upshrink_ic\',
srcExpanded: smf_images_url   \'/collapse.gif\',
altExpanded: '
JavaScriptEscape($txt['upshrink_description']), ',
srcCollapsed: smf_images_url   \'/expand.gif\',
altCollapsed: '
JavaScriptEscape($txt['upshrink_description']), '
}
],
oThemeOptions: {
bUseThemeSettings: '
$context['user']['is_guest'] ? 'false' 'true'',
sOptionName: \'collapse_header_ic\',
sSessionVar: '
JavaScriptEscape($context['session_var']), ',
sSessionId: '
JavaScriptEscape($context['session_id']), '
},
oCookieOptions: {
bUseCookie: '
$context['user']['is_guest'] ? 'true' 'false'',
sCookieName: \'upshrinkIC\'
}
});
// ]]></script>'
;
}
?>
ขอบคุณล่วงหน้าครับ



ออฟไลน์ drkann

  • Just
  • **
  • กระทู้: 23
  • เห็นด้วย&ขอบคุณ: 4
Re: ปรับบอร์ด 3 คอลัมน์+mod Responsive curve
« ตอบกลับ #1 เมื่อ: 19, กรกฎาคม 2019, 01:19:34 PM »
เว็บบอร์ดครับ http://kwdho.com/forum/

Cony

  • บุคคลทั่วไป
Re: ปรับบอร์ด 3 คอลัมน์+mod Responsive curve
« ตอบกลับ #2 เมื่อ: 17, กันยายน 2019, 05:47:55 AM »
จากโค้ดตัวอย่างต้องแก้หลายจุดเลยครับเพราะเค้าใช้ table ในการจัด layout
แนะนำให้ใช้ tableless ดีกว่าครับถ้าจะทำให้ responsive

 

Sitemap 1 2 3 4 5 6 
Back to top