آموزش ساخت جعبه جادویی اشتراک در وردپرس

۹ ۰۲ ۱۳۸۸

جعبه جادویی اشتراک زنگوله را حتمآ زیر هر پست دیده اید. فکر می کنم حدود هشت – نه ماه پیش برای تسهیل مراحل مشترک شدن درستش کردم که انصافآ هم تاثیر خوبی روی وبلاگ داشته. خوشبختانه دیدم که چند تا وبلاگ دیگه هم از همین طرح استفاده کردند و قید تصاویر و نوشته هایی که به صورت دستی به آخر هر پست اضافه می کردند را زدند! البته جعبه اشتراک زنگوله از تکنولوژی ویژه ای برخوردار است که گمان نکنم در وبلاگ دیگه ای به کار گرفته شده باشه.  :))

امکان تغییر متن داخل جعبه به راحتی و نسبت به محتوای هر پست!

مثلآ در پست «می خوای وقتی ایمیل برات میاد یک چراغ واقعی روی میزت چشمک بزنه؟» متن جعبه را به صورت زیر تنظیم کردم:

متنی که می بینید با محتوای پست که شامل یک برنامه مخصوص برای روشن کردن یک چراغ واقعی توسط کامپیوتر هنگام دریافت ایمیل است همخوانی بسیار خوبی دارد و مخصوصآ چون قید کرده ام که برنامه را خودم نوشته ام مخاطب می داند که نسخه جدید جای دیگری پیدا نخواهد شد پس اگر به مطلب علاقه مند باشد ترجیح می دهد زحمت وارد کردن ایمیل و کلیک کردن روی دکمه اشتراک را به خودش بدهد بلکه شاید در آینده نسخه جدید به کارش بیاید و این باعث افزایش چشمگیر تعداد مشترکان وبلاگ می شود.

برخی از مثال های دیگر متن دلخواه برای جعبه اشتراک را می توانید در پست های زیر ببینید:

- داستان یک «مشترک گرامی و یک سو تفاهم بامزه!»
- هشت سوالی که باید قبل از انتشار هر پست از خودتان بپرسید
- نهایت امنیت وردپرس با 15 ترفند امنیتی

دوستان زیادی از اون موقع تا الان با من تماس گرفتند و درخواست کردند آموزش ساخت این جعبه را به آنها بدهم ، جواب همگی را از طریق ایمیل تا جایی که در توانم بود دادم اما خوب یقینآ جواب های ایمیلی به اندازه یک پست وبلاگی کامل به درد بخور نیست. پس همانطور که به دوستان از طریق ایمیل هم قول دادم آموزش کامل و دقیق ساخت آن را منتشر کردم که همه از آن استفاده کنند.

حالا اگر تصمیم خودتان را برای ساختن یک جعبه اشتراک جادویی گرفته اید ادامه پست را با دقت دنبال کنید:

* متاسفانه انجام این ترفند برای کاربران wordpress.com که امکان تغییر کد پوسته را ندارند ممکن نیست.
* آشنایی ابتدایی با HTML و PHP به شدت توصیه می شود.

اولین کاری که باید بکنید دستکاری کد فایل single.php قالب وبلاگ تان است ، باید قسمتی که می خواهید جعبه را قرار دهید پیدا کنید. مثلآ من از قالب freshy استفاده می کنم و می خواهم جعبه را زیر لینک به مطلب قبلی و بعدی قرار دهم. پس با دیدن کد فایل single.php می فهمم که قسمتی که من باهاش کار دارم زیر این خطوط است:

<p class="navigation">
<span class="alignleft"><?php previous_post_link('&laquo; %link') ?></span>
<span class="alignright"><?php next_post_link('%link &raquo;') ?></span>
</p>

خوب حالا جایی که باید کد خودمو اضافه کنمو پیدا کردم ، کد زیر را زیر کد های بالا اضافه می کنم:

<div style="direction:rtl; border: 1px solid rgb(230, 219, 85); padding: 5px; margin-top: 10px; background:transparent url(http://YOURSITE.COM/background.jpg) repeat; background-color: rgb(255, 251, 204); font-size:16px; font-family:'Times New Roman';">
<?php
$subtext=get_post_meta($post->ID, "subtext", true);
if ($subtext<>null)
{
echo "<b>".get_post_meta($post->ID, "subtext", true)."</b>";
echo "<form action=\"http://www.feedburner.com/fb/a/emailverify\" method=\"post\" target=\"popupwindow\" onsubmit=\"window.open('http://www.feedburner.com/fb/a/emailverifySubmit?feedId=YOUR-FEEDBURNER-NUMBER', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true\">
<img style='border:0px;' align=right src=http://YOURSITE.COM/email.gif><font size=2 face=tahoma>به وسیله‌ی ایمیل:</font></img>
<br>
<input type=\"text\" style='width:190px;' name=\"email\" />&nbsp;<input type=\"submit\" value='مشترک کن مرا' />
<input type=\"hidden\" value=\"http://feeds.feedburner.com/~e?ffid=YOUR-FEEDBURNER-NUMBER\" name=\"url\" />
<input type=\"hidden\" value=\"TITLE-HERE\" name=\"title\" />
<input type=\"hidden\" name=\"loc\" value=\"en_US\" />
<br><font face=Tahoma size=2px>ایمیل شما نزد ما محفوظ و اشتراک تان هر لحظه با یک کلیک قابل انصراف است.</font></form>
<br><a href=http://feeds.feedburner.com/zangoole><img style=border:0px; align=right src=http://YOURSITE.COM/rss.png></a><b>
یا به وسیله‌ی<a href=http://feeds.feedburner.com/YOUR-FEEDBURNER-ID>&nbsp;فـیـد (خوراک)</a></b></div>";
}
else
{
echo "<b>مشترک سایت من شوید تا حتی یک مطلب را هم از دست ندهید!</b>";
echo "<form action=\"http://www.feedburner.com/fb/a/emailverify\" method=\"post\" target=\"popupwindow\" onsubmit=\"window.open('http://www.feedburner.com/fb/a/emailverifySubmit?feedId=YOUR-FEED-NUMBER', 'popupwindow', 'scrollbars=yes,width=550,height=520');return true\">
<img style='border:0px;' align=right src=http://YOURSITE.COM/email.gif><font size=2 face=tahoma>به وسیله‌ی ایمیل:</font></img>
<br>
<input type=\"text\" style='width:190px;' name=\"email\" />&nbsp;<input type=\"submit\" value='مشترک کن مرا' />
<input type=\"hidden\" value=\"http://feeds.feedburner.com/~e?ffid=YOUR-FEEDBURNER-NUMBER\" name=\"url\" />
<input type=\"hidden\" value=\"TITLE-HERE\" name=\"title\" />
<input type=\"hidden\" name=\"loc\" value=\"en_US\" />
<br><font face=Tahoma size=2px>ایمیل شما نزد ما محفوظ و اشتراک تان هر لحظه با یک کلیک قابل انصراف است.</font></form>
<br><a href=http://feeds.feedburner.com/YOUR-FEEDBURNER-ID><img style=border:0px; align=right src=http://YOURSITE.COM/rss.png></a><b>
یا به وسیله‌ی<a href=http://feeds.feedburner.com/YOUR-FEEDBURNER-ID>&nbsp;فـیـد (خوراک)</a></b></div>";
}
?>

بدیهی است که مقدار های زیر را باید نسبت به فید برنر و سایت خودتان تغییر دهید:

YOUR-FEEDBURNER-ID

TITLE-HERE

YOUR-FEEDBURNER-NUMBER

YOURSITE.COM

کد بالا چطوری کار می کنه؟

اگر با php و html آشنا باشید که یقینآ تا الان دوزاری تان افتاده. حالا به طور خلاصه نحوه کارکرد کد بالا را برای دوستان گرامی مبتدی تر توضیح میدم که هم یک جعبه قشنگ اشتراک داشته باشید هم بدانید که چطور کار می کند.

کد بالا با کمک قابلیتی در وردپرس نوشته شده به نام «زمینه های دلخواه» یا Custom Fields ، آموزش های کامل مربوط به آن را می توانید در وبلاگ گناهکار بخوانید.

کد ما میاد اول قیافه جعبه را تعریف می کنه که رنگش چطوری باشه عکس هاش کجا باشن و این جور چیزا… بعد میاد یک زمینه دلخواه تعریف می کنه میگه اگر زمینه دلخواه subtext تنظیم شده بود متنی که نویسنده نوشته را در جعبه نشون بده ، اگر subtext تنظیم نشده بود متن ثابت که همان «مشترک زنگوله شوید تا حتی یک پست را هم از دست ندهید!» است نشان داده شود.

با این حساب اگر شما دوست نداشته باشید متن خاصی بنویسید لازم نیست کار اضافه ای بکنید ولی اگر بخواهید متن خاصی بنویسید از قسمت زمینه های دلخواه (زیر قسمتی که پست را می نویسید) یک زمینه دلخواه با نام subtext تعریف می کنید و متنی که می خواهید بنویسید در قسمت «مقدار» وارد می کنید. مثلآ تصویر زیر را ببینید:

اصل کد همینه و بقیش فقط اندازه و جای دکمه و تکست باکس و کد فیدبرنر برای اشتراک ایمیلی است.

می توانید ابتکار بزنید و در قسمت «مقدار» کمی کد html قاطی کنید و از تصاویر هم استفاده کنید.

ابتکار حد و مرزی ندارد!

بله ، واقعآ ندارد! می توانیم با استفاده از افزونه Feed Count اگر تعداد مشترکین فیدی خوبی دارید آن را به نمایش بگذارید تا دیگران را ترغیب کنید که مشترک وبلاگ تان شوند.

اول وارد اکانت فید برنر تان شده و از قسمت Publicize گزینه Awareness API را فعال کنید.

حالا افزونه Feed Count را نصب و فعال کنید و از قسمت تنظیمات > feed count تنظیمات آن را درست کنید.

حالا باید کد فایل feedcount.php را کمی دستکاری کنید تا همانطور که می خواهید عمل کند. متاسفانه امکان این که من مرحله به مرحله آنها را نشان بدهم وجود ندارد چون هر کس می تواند به روش خودش کد را ویرایش کند.

برای مثال من کد را دستکاری کردم که اگر تعداد مشترکین بیش از 4400 بود و من در زمینه دلخواه subtext نوشته بودم feed ، متن «شما هم به جمع xxxx مشترک زنگوله بپیوندید!» نمایش داده شود که به جای x ها تعداد مشترکین به طور خودکار جایگزین می شود و شرط اول (بزرگتر بودن از 4400) از نمایان شدن این متن در شرایطی که تعداد مشترکین افت ناگهانی می کند یا حتی صفر می شود جلوگیری می کند.

و تعریف کرده ام که اگر تعداد مشترکین کمتر از 4400 بود (یعنی یک مشکلی پیش اومده…) همان متن «مشترک زنگوله شوید تا حتی یک مطلب را هم از دست ندهید!» نمایش داده شود.

نتیجه را ببینید:

این است انعطاف پذیری و قدرت وردپرس!

این مطلب را با بقیه به اشتراک بگذارید...
  • del.icio.us
  • Twitthis
  • Balatarin
  • Donbaleh
  • Google Bookmarks
  • FriendFeed
  • Facebook

Gooya IT

شما هم به جمع 10078 مشترک زنگوله بپیوندید!
به وسیله‌ی ایمیل:
 
ایمیل شما نزد ما محفوظ و اشتراک تان هر لحظه با یک کلیک قابل انصراف است.

یا به وسیله‌ی فـیـد (خوراک)

* تبادل لینک نمی کنیم

 تا کنون ۴۰ نظر برای برای این مطلب نوشته شده است

سنتری :

خوب بود خسته نباشی من بیشتر از فید استفاده میکنم

پاسخ به این نظر

علیرضا :

ممنون بابک جان
بابت ایمیل های امروز هم دستت درد نکنه :)
بنابراین نکتش:
subtext
بود اگر من به اون کدی که برات میل کرده بودم فقط بخوام همین نکته رو اضافه کنم فقط باید :
ID, “subtext”, true);
if ($subtextnull)
{
echo ““.get_post_meta($post->ID, “subtext”, true).”“;

رو اضافه کنم به اون کد؟ چون وقتی همین رو به اون کدهان اضافه می کنم به عنوان کد نمیشناسه و دقیقا این ۴ خط دستور رو مثل نوشته نمایش میده

پاسخ به این نظر

بابک گفت:

خواهش می کنم علیرضا جان.
آره اصل نکته اونه ، راستش من پیشنهاد می کنم یک بار از اول از روی همین آموزش برو جلو.
اینکه به عنوان کد نمیشناسه یکم مشکل داره ، داری یه جایی اشتباه می کنی…
یه بار از همین آموزش بری جلو فک کنم حل شه مشکل. ;)

پاسخ به این نظر

علیرضا :

aa belakhare ino ro kard :D aval sabtesh mikardi bad yad midadi :P

پاسخ به این نظر

بابک گفت:

D-: مخلصم.

پاسخ به این نظر

محمود :

بسیار عالی بود بابک جان :) از این پانوشتت خیلی خوشم میومد.ممنون که برای استفاده بقیه به اشتراک گذاشتیش.راستی چرا ظاهر وبلاگت یه کم به هم ریخته؟اون نوار سیاه که روی منوی بالای قالب روی منو میافته چیه؟چندبار رفرش کردم و بازهم همینطوری بود

پاسخ به این نظر

بابک گفت:

ممنون محمود جان. راستش نمی دونم. بهت ایمیل می زنم جزییات رو برام بگو ببینیم مشکل از کجاست….

پاسخ به این نظر

Amir :

خیلی جالب بود بابک جان ! موفق باشی .

پاسخ به این نظر

آخرین پدرخوانده :

بسیار عالی! لذت میببرم از شیرینگ!

پاسخ به این نظر

بابک گفت:

ممنون. آره انصافآ شیرینگ رو هستم… :دی
باید همه مون به همدیگه چیزایی که بلدیمو یاد بدیم که این طوری پیشرفت کنیم…

پاسخ به این نظر

محمود :

بابک چان ظاهرا دیگه اون مشکل رو نداره.الان همه چیز درسته.نمیدونم شاید مشکل از فایرفاکس من بود اون روز که قاطی کرده بود :)

پاسخ به این نظر

بابک گفت:

;-) بسیار عالی. ممنون از اطلاع رسانی محمود جان.

پاسخ به این نظر

mohand.es :

آموزش ساخت جعبه جادویی اشتراک در وردپرس …

جعبه جادویی اشتراک زنگوله را حتمآ زیر هر پست دیده اید. فکر می کنم حدود هشت – نه ماه پیش برای تسهیل مراحل مشترک شدن درستش کردم که انصافآ هم تاث…

بهروز :

سلام …
آقا بابک جون آموزش فوق العاده به درد بخوری دادی…
اما متاسفانه من یه مشکل با فید برنر دارم…
اونم اینه که وقتی فید سایت روبهش می دم پیغام:
The URL does not appear to reference a valid XML file. We encountered the following problem: Error on line 925: XML document structures must start and end within the same entity.
میده!!!
آدرس فیدم :http://www.shirinak.com/feed هست…
لطفا راهنماییم کن اگه جوابم رو میل بزنی خیلی عالی میشه…

پاسخ به این نظر

بابک گفت:

سلام بهروز جان. فهمیدم مشکل شما چیه. پلاگین را ادیت کنید و خط را با خط زیر عوضی کنید:

‘map_fc_queryurl’ =>’https://feedburner.google.com/api/awareness/1.0/GetFeedData?uri=’,

جواب را برات ایمیل هم کردم. قربانت.

پاسخ به این نظر

بهروز گفت:

سلام…
مشکل من با فیدبرن هستش…
فید سایتم رو که بهش دادم پیغام رو داد…
منظورتون از پلاگین کد بالاست؟
یا پلاگین دیگه ای مد نظرتونه؟

پاسخ به این نظر

علی :

سلام دوست عزیز
بابت این آموزشتون ممنونم .
در کل وب جالب و مفیدی دارید .
با تشکر

پاسخ به این نظر

بابک گفت:

سلام. ممنون.

پاسخ به این نظر

کیان :

آقا سلام
قبل از هرچیز معذرت می خواهم چون جای این پست اینجا نیست
چندروز قبل برای لاگین کردن به وبلاگم در فایرفاکس نتوانستم ( ضمن اینکه از طریق ویندو لایو چند ماهی است که نمی شود ) به ie پناه بردم در آنجا توانستم اما با سرعت کم ولی از دیروز همان مشکل برای ie پیدا شد و الان نمی توانم از هیچ کدام لاگین کنم . علت چیست .؟

پاسخ به این نظر

عال رحیمی :

جالب بود واسه دفعه ی بعد یه سری پلاگین واسه وردپرس معرفی کن که خودت هم استفاده میکنی : )

پاسخ به این نظر

محمد کشوری :

مخلصیم بابک جان. مثل همیشه مفید و لذت بخش بود برادر

پاسخ به این نظر

بابک گفت:

ممنونم محمد جان. خوشحالم که به دردت خورده.

پاسخ به این نظر

javad33 :

سلام آقا بابک.
ممنون از این آموزشی که گذاشتید. هرچند بیشتر بخاطر ایده‌اش بود که جذابیت داشت والا چیز پیچیده ای نبود. راستش من تا قبل از این زیاد در مورد کارایی زمینه های دلخواه اطلاعات نداشتم اما حالا میبینم که واقعا ویژگی کاربردیی هست.
ممنون. توی وبلاگ من هم فعال شد

پاسخ به این نظر

enigma2 :

سلام خسته نباشید
کم پیش می اید من سوال فنی بپرسم ولی ۵ ساعت روش کار کردم نشد التماس دعا دارم بد جوری
مشکل اینه که من ایدی فید برنرم را نمی دونم و پیداش هم نمی کنم

فید من در قسمن میل به این صورت است
<form style=”border:1px solid #ccc;padding:3px;text-align:center;” action=”http://feedburner.google.com/fb/a/mailverify” method=”post” target=”popupwindow” onsubmit=”window.open(‘http://feedburner.google.com/fb/a/mailverify?uri=Irancall

خط اخر را ببینید من نمی تونم کد را پیدا کنم
کدی که من پیدا کردم اینه http://feedburner.google.com/fb/a/publicize?id=1pa3o8693jrv428qba3ntj05v0

که اگر این کد را جایگزین کنم

http://www.feedburner.com/fb/a/emailverifySubmit?feedId=1pa3o8693jrv428qba3ntj05v0
این میشه که میل هم کار نمی کنه

می خواهم از کد پیش فرض خوده گوگل استفاده کنم باز اون هم کار نمی کنه تو این دستورات
التماس دعا دارم بد جوری

enigma2.king@gmail.com

که این هم کار نمی کنه

پاسخ به این نظر

بابک گفت:

سلام
از کدی که خود گوگل به شما میده اگر استفاده کنید مشکلی نباید داشته باشید.
یعنی به جای اونی که من نوشتم که feed id داره از همونی که uri داره و خودتون در صفحه فید برنر تون می بینید استفاده کنید.

فقط توجه کنید قبل از تمام علامت های ” (گیومه) (که در دستور echo پی اچ پی نوشته می شود) از علامت \ (بک اسلش) استفاده کنید.

پاسخ به این نظر

محمد :

روش ساده تر و قبل فهم تری برای ساخت جعبه اشتراک وجود نداره؟چون من آشنایی ابتدایی با PHP و HTML ندارم.متنش هم ثابت باشه برام فرقی نمی کنه.
اگه میشه در این زمینه راهنمایی کنید…

پاسخ به این نظر

محمد گفت:

ببخشید،متنی که نوشتم اشتباه املایی داشت.باید می نوشتم”روش ساده تر و قابل فهم تری…”که بدین وسیله اصلاح میکنم.

پاسخ به این نظر

بابک گفت:

متاسفانه به طور کلی باید بگم نه ،
من می خواستم برای این جعبه جادویی اشتراک یک افزونه منتشر کنم که کار را تقریبآ کاملآ اتوماتیک می کند اما متاسفانه خیلی گرفتارم و نشد…

پاسخ به این نظر

محمد گفت:

افزونه ای وجود نداره که این کار رو(ساخت جعبه اشتراک) به صورت اتوماتیک انجام بده؟نیازی هم نیست که تا این حد مانند جعبه اشتراک شما پیشرفته و جادویی باشد…کار من و شاید خیلی از وبلاگ نویسان دیگر با متن های ثابت در جعبه اشتراک هم راه می افتد…

پاسخ به این نظر

بابک گفت:

نه ، خودم می خواستم درست کنم اما وقت نکردم متاسفانه.

پاسخ به این نظر

علی :

برای جوملا ۱٫۵ هم میشه از این استفاده کرد ؟
اگر نمیشه من که اینو میخوام چی کار کنم ؟!!

پاسخ به این نظر

شرکت ارتباط گستر پرشیا :

سلام سایت بسیار جالبی دارین حاضرین با سایت ما تبادل لینک کنید؟

پاسخ به این نظر

مهدی معتمد :

سلام ، بسیار متشکرم ، استفاده کردم ولی قسمت فیدکانت را متوجه نشدم…خیلی دوست داشتم تعداد مشترکین هم نمایش داده شود …اگر وقت کردید راجع به این موضوع بیشتر توضیح بدید…ممنون و متشکر

پاسخ به این نظر

درف :

بابک جان سلام من چند روز با این نوشته کلنجار رفتم و نتوستم در آخر از بعضی کدها که داده بودی استفاده حیاتی کردم ممنون.مثل پیام به دیدگاها و قسمتی هم به مشترکین خبر نامه به هر حال ممنون
مثال: http://www.dorf.ir/?p=981
:D

پاسخ به این نظر

بابک گفت:

درف عزیز من جعبه ای که ساختی را تونستم ببینم و قشنگ هم هست و درست دیده میشه.
اگر مشکلی بود خوشحال می شم کمک کنم.

پاسخ به این نظر

درف :

سلام بابک جان من تا الان فیدبرنر نداشتم امروز ازمایشی ساختم که سه مرحله داشت
مرحله اول را پاس کردم و دو مرحله دیگر را چون متوجه نشدم بی خیال شدم البته آدرس خوراکم را خروجی اراس اس دادم اگر زحمتی نیست محبت کنید به اختصار این سه مرحله را توضیح دهید و
نحوه مشترکین با ایمیل و در ضمن آیا با یک حساب کاربری وِیژه برای سایت ثبت کنم یا با همان اکانت
گمیل کدام مناسبتر است .چون من میخوام فیدم را پاک کنم واساسی بسازم!

پاسخ به این نظر

فرزاد :

حیف … ای کاش wordpress.com هم میشد . یعنی هیچ راهی نداره ؟

پاسخ به این نظر

بابک گفت:

متاسفانه نه.

پاسخ به این نظر

نظر دهید