همانطوري که در نوشته قبلي قول داده بودم، اين دفعه مي خوام طرز ادغام کردن دو وبلاگ را قدم به قدم و با جزييات توضيح بدهم. روش کار همون روش قبلي است فقط با کمي تغييرات کوچولو موچولو توي قالب و کدها :)
مواد مورد نياز:
۱ - اس کيو ال پلاگين (MTSQL Plugin)
۲ - کامپير پلاگين (Compare Plugin)
۳ - امي تي شما بايد بوسيله ديتابيس اس کيو ال گرداننده شود .
اس کيو ال پلاگين داراي دو تا فايل هست که بايد بصورت زير آپلود بشن :
(mt home)/plugins/sql.pl
(mt home)/extlib/bradchoate/sql.pm
کامپير پلاگين داراي يک فايل هست که از
اينجا مي توانيد دريافتش کنيد و بايد در پوشه پلاگين قرار بگيره.
نکته: حتما بخاطر داشه باشيد که اين فايل ها بايد در حالت ASCII روي سرور آپلود بشند.
وارد تمپليت خانه (Main Index) بشويد و کدهاي <MTEntries> تا کدهاي <MTEntries/> را انتخاب و همه را پاک کنيد و بجاي آنها کدهاي زير را قرار دهيد :
<MTSetVar name="openedList" value="0">
<MTSQLEntries query="select entry_id, entry_blog_id, date_format(entry_created_on, '%Y.%m.%d') as mtdate, date_format(entry_created_on, '%h.%i.%S') as mttime FROM mt_entry where entry_blog_id in (1,2) and entry_status=2 order by mtdate desc, entry_blog_id desc, mttime desc limit 0,20" unfiltered="1">
<MTDateHeader></p>
<h2 class="date"><$MTEntryDate format="%B %e, %Y"$></h2>
<p> <MTIfEqual a="[MTSQLColumn column='2']" b="2" numeric="1"></p>
<ul class="sideblog">
<MTSetVar name="openedList" value="1">
</MTIfEqual>
</MTDateHeader>
<MTIfEqual a="[MTSQLColumn column='2']" b="1" numeric="1">
<MTIfEqual a="[MTGetVar name='openedList']" b="1">
</ul>
<p> <MTSetVar name="openedList" value="0">
</MTIfEqual>
<!-- کدهاي مربوط به وبلاگ اصلي --></p>
<!-- انتهاي کدهاي مربوط به وبلاگ اصلي-->
<p></MTIfEqual>
<MTIfEqual a="[MTSQLColumn column='2']" b="2" numeric="1">
<!-- کدهاي مربوط به وبلاگ دوم--></p>
<!-- انتهاي کدها براي وبلاگ دوم-->
<p></MTIfEqual>
<MTIfEqual a="[MTGetVar name='openedList']" b="1" numeric="1">
</ul>
<p> <MTSetVar name="openedList" value="0">
</MTIfEqual>
</MTDateFooter>
</MTSQLEntries>
<MTIfEqual a="[MTGetVar name='openedList']" b="1" numeric="1"></ul>
</MTIfEqual>
در اينجا فرض بر اين است که اي دي وبلاگ اصلي شما ۱ و وبلاگ دوم ۲ است اگر آي دي هر يک از اين ها متفاوت است کافي است عبارت b="1" يا b="2" را به ادي دي وبلاگ دلخواه تعيير دهيد. مثلا اگر اي دي وبلاگ دوم ۴ است کافي است هر کجا b="2" ديديد آنرا به b="4" تغيير دهيد.
طرز کار هم بدين صورت است که بوسيله اس کيو ال نوشته ها را اول با تاريخ بعد با آي دي بلاگ و بعد هم با زمان پست دسته بندي مي کند. اگر نوشته اولي روز مربوط به لينکدوني باشد تک <ul> باز مي شود و اگر نوشته جديدي در وبلاگ اصلي فرستاده بشه اين تک بسته ميشه و نوشته وبلاگ اصلي در مبناي قالب اصلي چاپ ميشه. فقط نکته اصلي اين است که اگر مي خواهيد وبلاگ دوم با وبلاگ اول نمايششون متفاوت باشه بايد در استايل شيت (Stylesheet) اين کلاس <ul class="sideblog"> را معرفي کنيد
در بين تک هاي زير نيز کدهاي مربوط به پست هاي وبلاگ اصلي را بگذاريد يک نمونه من اينجا مي گذارم :
<!-- کدهاي مربوط به وبلاگ اصلي -->
<div class="entry">
<b class="entryTitle"><$MTEntryTitle$></b><br/>
<$MTEntryBody$>
<MTEntryIfExtended> <i><a href="<$MTEntryPermalink$>“>Read More…</a></i></MTEntryIfExtended></p>
<p class="entryPostscript"><$MTEntryDate format="%X"$>
[<a href="<$MTEntryPermalink$>“><$MTEntryCommentCount$> comments</a>]
</p>
</div>
<!-- انتهاي کدهاي مربوط به وبلاگ اصلي-->
همچنين در بين تک هاي زير کدهاي مربوط به وبلاگ دوم را بگذاريد. وبلاگ دوم مي تواند لينکدوني يا فوتوبلاگ يا حتي روزنوشت باشد. براي مثال اگر مي خواهيد وبلاگ دوم ليندوني باشد کدهاي زير را قرار دهيد:
<!-- کدهاي مربوط به وبلاگ دوم-->
<li class="quicklink">
<a href="<$MTEntryBody escape_html="1"$>" <MTIfNotEmpty var="EntryExcerpt"> title="<$MTEntryExcerpt escape_html="1" escape_htmlattr="1"$>" </MTIfNotEmpty>
class="quicklinkLink"><$MTEntryTitle$></a> | <MTEntryIfAllowComments>
| <a href="<$MTCGIPath$><$MTCommentScript$>?entry_id=<$MTEntryID$>" onclick="OpenComments(this.href); return false">نظرات (<$MTEntryCommentCount$>)</a>
</MTEntryIfAllowComments>
</li>
<!-- انتهاي کدها براي وبلاگ دوم-->
بدين صورت براي اضافه كردن لينك به لينكدوني به قسمت New entry وبلاگ لينكدوني برويد و در قسمت عنوان (title) مطلب نام و عنوان لينك و در قسمت متن مطلب (Entry Body) آدرس لينك را بنويسيد و در قسمت EntryExcerpt توضيحي براي لينک بنويسيد. بدين طريق شما حتي مي توانيد براي هر لينک فرستاده شده نظرخواهي هم داشه باشيد.
اگر کسي از اين روش براي ساخت لينکدوني استفاده کرد و مشکلي داشت، خوشحال مي شوم بهش کمک کنم. کسي هم از اين يادداشت استفاده کرد يه يادي هم از خط سوم توي وبلاگش بکنه ممنون مي شوم :)
همین طور در این باره در کلیک آنلاین :
در بین نوشته های قبلی در این باره :
2005, 02, 01 -
اختصاص عكس به هر موضوع
2004, 10, 25 -
مطالب مرتبط بوسيله اس کيو ال
2004, 10, 04 -
پينگ سايت weblogs.com چه مرگشه؟!
2004, 09, 26 -
پلاگين "در چنين روزي" با پي اچ پي
2004, 09, 06 -
متمايز کردن نوشته هاي جديد در ام تي