به جرات می توان یکی از مهمترین نقاط قوت سیستم مدیریت محتوای مووبل تایپ را امکانات بسیار زیاد آن در دسته بندی مطالب به انواع شکلها و فرمت ها دانست. جایی که وقتی کار به کدنویسی یک قالب ام تی می رسد می تواند یک قالب سایت را (با تمام پیچیدگیهای آن) از یک قالب وبلاگ ساده متمایز کند. در این مطلب می کوشم شما را با راههای گوناگون استفاده از کدهای مربوط به دسته (Category) آشنا کنم.
قطعا همه می دانیم که دسته بندی مطلب به نظم بهتر مطالب یک وبلاگ کمک می کند. مثلا هنگامی که شما مطالبتان را با دسته بندی های مختلف منتشر می کنید خواننده به راحتی می تواند مطالب مرتبط با هم را از طریق آرشیو موضوعی بلاگ شما پیدا کرده و مطالعه کند. این حالت حداقل استفاده ایست که شما می توانید از دسته ها با هر سیستم مدیریت محتوایی بکنید. درمووبل تایپ استفاده از این حالت به سادگی امکان پذیر است و از دوجنبه می توان به آن نگاه کرد: اول، از داخل سیستم مدیریت ام تی و دوم، در ساختار کدهای قالب (جایی که شما صفحه یا سایدبار آرشیو موضوعی تان را می سازید تا مطالب تحت هر دسته لیست شوند). بیایید از همینجا شروع کنیم.
دسته ها در داخل سیستم مدیریت ام تی
بدیهی است پیش از آنکه بتوانید از قدرت دسته ها استفاده کنید باید ابتدا خود دسته ها را تعریف کنید و بسازید. برای اینکار در داخل سیستم مدیریت ام تی به بخش
Manage>Categories
بروید. اگر سیستم ام تی شما تازه نصب شده باشد احتمالا دسته ای در آن وجود ندارد و این قسمت مانند تصویر زیر خالی است:
برای ساختن اولین دسته (Category) روی Create top level category کلیک کنید. حالا اسم دسته را وارد کرده و روی Create کلیک کنید. نخستین دسته سایت شما ساخته شده است:
در تصویر بالا (برای دیدن تصویر بزرگتر روی آن کلیک کنید) در صورتی که روی کلمه Create که روبروی نام دسته تازه ساخته شده شما قرار دارد کلیک کنید می توانید برای آن زیر شاخه (Sub Category) هم تعریف کنید که موضوع آموزش امروز ما نیست. در صورتی که روی نام دسته کلیک کنید وارد صفحه ای می شوید مانند تصویر زیر:
در این صفحه علاوه بر فیلدهایی برای ویرایش دسته با یک فیلد مهم روبروییم به نام Description که بسیار به درد غیر انگلیسی زبانها می خورد. از آنجا که اسم دسته معمولا در آدرس مطلب به نمایش در می آید و از طرفی خیلی از توسعه دهندگان وب ترجیح می دهند از متون غیر انگلیسی در آدرس مطلبشان استفاده نکنند فیلد Description به عنوان فیلدی کلیدی به کمک ما می آید. در اینجا می توانید به راحتی اسم فارسی دسته را بنویسید. در ادامه به شما خواهم گفت در کجا و چگونه می توانیم از آن استفاده کنیم.
بعد از ساخته شدن دسته ها، اختصاص دادن مطالب به هر دسته بسیار آسان است. کافیست در صفحه نوشتن/ویرایش مطلب در ستون سمت راست دسته مطلب خود را انتخاب کنید:
تا اینجا دیدیم که ساختن دسته ها و اختصاص دادن مطالب به آنها بسیار ساده و آسان است. اما همانطور که گفتم این دسته بندی در صفحه آرشیو است که قدرت نمایش می یابد. در باره ساختن صفحه آرشیو موضوعی قبلا در “مووبل تایپ از الف تا ی (قسمت نهم)” توضیح داده ام. آنچه آنجا توضیح داده ام درواقع ابتدایی ترین حالت استفاده از Category ها در مووبل تایپ است. پیشنهاد من این است که حتما پیش از ادامه این مطلب، آن آموزش را بخوانید اما اگر وقت کافی ندارید به طور خلاصه در آن آموزش توضیح داده ام که چطور یک قالب آرشیو برای سایتتان کدنویسی کنید. کدهای نهایی که به صورت زیر هستند:
<h2><$MTCategoryLabel$></h2>
<ul>
<MTEntries>
<li><a href=”<MTEntryPermalink>”><MTEntryTitle></a></li>
</MTEntries>
</ul>
این کدها در صورتی که در یک قالب آرشیو ذخیره شوند پس از بازسازی سایت صفحه ای برای هر موضوع می سازند که حاوی عنوان دسته و لینک تمام مطالب منتشر شده تحت آن دسته خواهند بود.
مورد بعدی که در قسمت نهم آموزشها به آن پرداختم ساخت یک صفحه ایندکس برای آرشیوها (Main Archive Index) بود. این صفحه که علیرغم اسمش در حقیقت نوعی قالب ایندکس به شمار می رود با تکه کد زیر ساخته می شد:
<MTIfArchiveTypeEnabled archive_type=”Category”>
<MTCategories>
<h2><a href=”<MTCategoryArchiveLink>”><MTCategoryLabel></a></h2>
<ul>
<MTEntries>
<li><a href=”<MTEntryPermalink>”><MTEntryTitle></a></li>
</MTEntries>
</ul>
</MTCategories>
</MTIfArchiveTypeEnabled>
دقت داشته باشید از آنجا که این قالب به دسته قالبهای ایندکس تعلق دارد باید در هنگام کد نویسی به استفاده از ظرف مناسب (که در قسمت ششم توضیح داده شده) توجه داشته باشیم. مثلا برای اینکه کدهای مربوط به دسته ها را در یک صفحه ایندکس نمایش دهیم باید از ظرفی مشابه این استفاده کنیم:
<MTCategories>
.
.
.
</MTCategories>
در تکه کد قبلی اگر به جای تگ MTCategoryLabel از تگ MTCategoryDescription استفاده شود می توانیم بجای نام انگلیسی دسته، نام فارسی آن را که قبلا از آن صحبت شد به بیننده نشان دهیم.
استفاده های پیشرفته تر از دسته ها
همانطور که گفتم می توانیم از دسته بندی در ام تی استفاده های بیشتری در حد یک سایت پیشرفته ( نه وبلاگ) داشته باشیم. بگذارید مثالی بزنم:
به سایتی فکر کنید که در صفحه اول خودش چهار ستون مختلف دارد برای چهار نوع خبر یا مطلب مختلف:
راحت ترین راه برای نشان دادن چهار ستون مطلب در تصویر بالا استفاده از دسته هاست. برای اینکار باید بتوانیم نحوه نمایش مطالب را طوری تعیین کنیم که در هر ستون تنها مطالب همان دسته نمایش داده شود و باقی مطالب فیئلتر شوند. پیش از آنکه دست بکار شویم توجه شما را به این نکته جلب می کنم که برای ساخت صفحه ای مانند تصویر فوق باید قالبتان را به صورت یک قالب ایندکس (Index Template) بسازید و همانطور که در “مووبل تایپ: از الف تا ی (قسمت ششم)” گفته شد باید از ظرف های مناسب هرجا که نیاز باشد استفاده کرد. به تکه کد زیر نگاه کنید:
<h3>Computer</h3>
<MTEntries category=”computer” lastn=”10″>
<a href=”<MTEntryPermalink>”><MTEntryTitle></a><br />
</MTEntries>
با همین تکه کد می توانید هر چهار ستون مثال فوق را با عنوان مطالب یک دسته خاص پر کنید. خط اول به سادگی اسم دسته را نشان می دهد. خط دوم همان ظرفی است که از آن صحبت کردیم. با همین ظرف هم هست که می توانیم یک دسته خاص را فئیلتر کرده و نمایش دهیم. در صورتی که تکه کد:
category=”computer”
را ننویسیم حاصل کد، عنوان کلیه مطالب نوشته شده در این بلاگ بدون در نظر گرفتن دسته آنها خواهد بود.
حالا تصور کنید که می خواهید مطالب دو یا سه دسته را تحت یک عنوان نمایش دهید. این کار هم در مووبل تایپ به راحتی امکان پذیر است. کافیست به تکه کد زیر نگاه کنید:
category=”computer AND mobile”
امیدوارم این آموزش کوتاه به کدنویسی مووبل تایپی شما کمکی هرچند کوچک کرده باشد. این آموزش به درخواست دوستی گرامی نوشته شده است. در صورتی که شما هم احساس می کنید نوشتن مطلبی در باره قابلیتهای کوچک و بزرگ مووبل تایپ می تواند کمکی به گسترش بیش از پیش این سیستم مدیریت محتوای قدرتمند در بین علاقمندان کند آن را با ما در میان بگذارید.
توجه: این سلسله مطالب به طور اختصاصی برای سایت writeage.com نوشته شده است. درج تمام یا قسمتی از این مطالب، تنها با ذکر نام سایت و آدرس دقیق این صفحه مجاز است.
سلام
اگر میشه آموزش درختی کتگوری و ساب کتگوریها را هم بدهید.
بدین صورت که بعد از کلیک روی کتگوری وارد صفحهای بشویم که لیست سابکتگوریها را نمایش بدهد و بعد از کلیک روی هر سابکتگوری لیست مطالب قرار گرفته در آن سابکتگوری نمایش داده بشود و …
ممنون میشوم
عباس جان متاسفانه من حضور ذهن ندارم در نسخه 3 چه کاری می شه کرد. دوست من بهتره هرچه زودتر ارتقاء بدی. نسخه 4 دستت رو خیلی بازتر می کنه.
با سلام
من اين كدي رو كه دو تا كتگوري رو با هم نشون ميده رو در ام تي 3.38 امتحان ميكنم جواب نميده
لطفا براي ام تي 3 بگيد چطوري مطالب دو كتگوري رو با هم در يك صفحه نشون بديم
مثلا صفحه اصلي مون فقط مطالب دو گروه رو نمايش بده
ممنو ن ميشم
فقط خواهش ميكنم جواب بدين چون هر جا سوال ميكنم همون كد ام تي 4 رو ميدن و ديگه هيچي
من براي ام تي 3.38 ميخام
ممنون
سلام شقایق جان
1) نه هیچ ایرادی نداره. در این باره اینجا بیشتر می تونی بخونی.
2) کدت هیچ مشکلی نداره. ببین ام تی واقعا داره از روی کد تو اجرا می کنه یا یه جایی ارتباط قطعه؟!
3) من همچین چیزی ندیدم. فکر نمی کنم درست باشه.
موفق باشی
دکتر جان خسته نباشید.
سه تا سوال داشتم
استفاده از بیش از یک category در تگ ایرادی داره؟
مثل این کد:
مورد دیگه این که کدی که برای صفحه اصلی نوشتم یعنی main index (کد زیر) نمیدونم چرا جواب نمیده میخوام توی صفحه اصلی فقط مطالب مربوط به چند category رو نمایش بده ولی هیچ کدوم از مطالب رو نمایش نمیده وکلا قسمت مربوط به entry ناپدید میشه.
این هم کدش اگر لازم هست لطفا یه نگاهی بهش بندازید.
توی فروم مووبل تایپ دیدم که از این کد با کمی تغییر استفاده کرده بود و به جای AND برای جدا کردن category ها از کاراکتر & استفاده شده بود این کد هم درسته؟
از زحمات شما بسیار بسیار متشکرم.
سلام ، از آموزش های شما ممنونم .
من اکنون یک وبلاگ دارم که با یک دامنه ی شخصی باز می شود . می توانم با مووبل تایپ سایتم را بسازم ، بدون این که مجبور بشم ارتباط دامنه و وبلاگ را قطع کنم . یعنی سایت را بسازم و بعد دامنه را از وبلاگ به سایت رهنمون(!) کنم .
و یک موضوع دیگه که شاید هنوز نتوانسته ام با آن کنار بیایم . وردپرس یا مووبل تایپ ؟!! هر چند خودم مووبل تایپ را بیش تر ترجیح می دهم ، اما می ترسم در هنگام کار و برخورد با یک مشکل پشیمان شوم که چرا وردپرس را انتخاب نکرده ام . آخه واقعا تازه کارم 🙁
با سلام و تشكر از مطالبتون
من ميخوام در صفحه individual يا همون صفحه تكي وقتي يك مطلب اصلي داره نشون داده ميشه زير اون صفحه لينك عنوان چند تا مطلب مربوط به همون كتگوري نمايش داده بشه.
البته تا بحال چندين كد رو بكار بردم ولي اكثر اونا كل مطالب رو نشون ميدن