با عرض سلام
در این هک بسیار جالب شما به راحتی و به شکل استاندارد قالب مطالب کوتاه یا همان shortstory تون رو می توانید عوض کنید
دانلود
آموزش نصب
در این هک قصد ایجاد سه حالت متفاوت برای نمایش مطالب کوتاه خود (shortstory) داریم
1- ابتدا فایل را دانلود نموده و درون قالب در بخش مناسب قرار دهید
2-فایل main.tpl خود را باز کنید و کد زیر را در قسمت دلخواه قرار بدهید (محل درج لینک های انواع نمایش)
در همان فایل قبل از تگ <head/> کد زیر را قرار بدهید
3-فایل styles.css قالب خود را باز کنید و استایل های زیر را در آن قرار دهید
4-به آدرس مقابل رفته engine/modules ،حال فایل show.short.php را باز کنید و به دنبال کد زیر بگردید
بعد از آن کد زیر را قرار دهید
4-به صورت پیشفرض با توجه به مراحل نصب بالا ما هم اکنون سه شکل متفاوت برای مطالب کوتاه خود در نظر گرفتیم،حال باید سه فایل با نام های
shortstory.tpl
shortstory_list.tpl
shortstory_icons.tpl
برای نحوه نمایش مطالب کوتاه در قالب خود ایجاد کنیم تا بتوانیم سه نمایش متفاوت برای مطالب کوتاه خود داشته باشیم
** این بخش چون در قالب های متفاوت به شکل گوناگون هست طراحی و پیکربندی این سه فایل به عهده خود کاربر گذاشته میشود
ولی برای اینکه مثالی واضح از این هک داشته باشید من این سه فایل رو برای قالب دیفالت آماده کردم که میتونید دانلود کنید و به صورت آزمایشی این هک بر روی قالب دیفالت نصب و بررسی کنید
1- ابتدا فایل را دانلود نموده و درون قالب در بخش مناسب قرار دهید
2-فایل main.tpl خود را باز کنید و کد زیر را در قسمت دلخواه قرار بدهید (محل درج لینک های انواع نمایش)
[aviable=main]
<script type="text/javascript">
$(function(){ if($.cookie('short_template')){ $(".templtes").removeClass('current'); $(".templater a[data-template]").removeClass('current').each(function(){ if($(this).data('template')==$.cookie('short_template')){ $(this).addClass('current'); $(".template-"+$.cookie('short_template')).addClass('current'); } }); } $(".templater a[data-template]").click(function(){ if($(this).hasClass('current')) return false; $(this).addClass('current').siblings().removeClass('current'); $(".templtes").removeClass('current'); $(".template-"+$(this).data('template')).addClass('current'); $.cookie('short_template', $(this).data('template'),{path:'/'}); window.location.href=dle_root+'?short_template'+$(this).data('template'); return false; });
})
</script>
<div class="sortn dpad"><div class="sortn"><div class="templater">نوع نمایش: <a href="#" class="current" data-template="default">پیشفرض</a> | <a href="#" data-template="list">پنجره ای</a> | <a href="#" data-template="icons">کوتاه</a></div></div></div> [/aviable]
در همان فایل قبل از تگ <head/> کد زیر را قرار بدهید
<script type="text/javascript" src="{THEME}/js/jquery.cookie.js"></script>
3-فایل styles.css قالب خود را باز کنید و استایل های زیر را در آن قرار دهید
.templater .current{color:#c00;}
.templtes{display:none;}
.templtes.current{display:block;}
4-به آدرس مقابل رفته engine/modules ،حال فایل show.short.php را باز کنید و به دنبال کد زیر بگردید
else $tpl->load_template( 'shortstory.tpl' );
بعد از آن کد زیر را قرار دهید
$user_short_tpl = array(
'default' => 'shortstory.tpl',
'list' => 'shortstory_list.tpl',
'icons' => 'shortstory_icons.tpl'
);
$user_tpl =(isset($_COOKIE['short_template']) && isset($user_short_tpl[$_COOKIE['short_template']])) ? $user_short_tpl[$_COOKIE['short_template']] : $user_short_tpl['default'];
$user_tpl = (isset($_GET['short_template']) && isset($user_short_tpl[$_GET['short_template']])) ? $user_short_tpl[$_GET['short_template']] : $user_tpl;
if( isset( $view_template ) and $view_template == "rss" ) {
} elseif( $category_id and $cat_info[$category_id]['short_tpl'] != '' ) $tpl->load_template( $cat_info[$category_id]['short_tpl'] . '.tpl' );
else $tpl->load_template($user_tpl);
4-به صورت پیشفرض با توجه به مراحل نصب بالا ما هم اکنون سه شکل متفاوت برای مطالب کوتاه خود در نظر گرفتیم،حال باید سه فایل با نام های
shortstory.tpl
shortstory_list.tpl
shortstory_icons.tpl
برای نحوه نمایش مطالب کوتاه در قالب خود ایجاد کنیم تا بتوانیم سه نمایش متفاوت برای مطالب کوتاه خود داشته باشیم
** این بخش چون در قالب های متفاوت به شکل گوناگون هست طراحی و پیکربندی این سه فایل به عهده خود کاربر گذاشته میشود
ولی برای اینکه مثالی واضح از این هک داشته باشید من این سه فایل رو برای قالب دیفالت آماده کردم که میتونید دانلود کنید و به صورت آزمایشی این هک بر روی قالب دیفالت نصب و بررسی کنید
سوالات متداول
آیا می شود بیشتر از سه حالت برای نوع نمایش داشته باشم؟
بله
در انتهای مرحله یک بعد از
وقتی میخواهید لینک های نوع نمایش رو بسازید می توانید یک لینک جدید همانند لینک های قرار داده شده ایجاد کنید با این تفاوت که برای data-template لینک آن مقدار متفاوتی برای آن در نظر بگیرید مثلا:
سپس در ابتدای مرحله سه هنگام ساختن array بعد از 'shortstory_icons.tpl' یک , قرار بدهید و نوع چهارم رو را همراه با نام فایل قالب دلخواه معرفی می کنید مثلا:
بله
در انتهای مرحله یک بعد از
<div class="templater">نوع نومایش:
وقتی میخواهید لینک های نوع نمایش رو بسازید می توانید یک لینک جدید همانند لینک های قرار داده شده ایجاد کنید با این تفاوت که برای data-template لینک آن مقدار متفاوتی برای آن در نظر بگیرید مثلا:
| <a href="#" data-template="chahar">نمایش چهارم</a>
سپس در ابتدای مرحله سه هنگام ساختن array بعد از 'shortstory_icons.tpl' یک , قرار بدهید و نوع چهارم رو را همراه با نام فایل قالب دلخواه معرفی می کنید مثلا:
,'chahar' => 'shortstory_chahar.tpl'