بایگانی دسته: وردپرس

حل مشکل URL شامل کارکترهای یونیکد توی IIS 8

وقتی که از URL Rewrite استفاده می‌کنید، یک‌سری ملاحظات امنیتی باعث می‌شه که کارکترهای یونیکد از آدرس‌هایی که شامل کارکترهای یونیکد هستن حذف بشن. برای همین، مثلن این‌جا نمی‌تونید برید دیگه و وقتی برید این‌جا، وردپرس فکر می‌کنه که صفحه‌ی اصلی سایت باز شده.

ما سرورمون رو عوض کردیم. قبلن از IIS 7.5 استفاده می‌کردیم و اون‌جا، مشکل‌مون رو این‌جوری حل می‌کردیم که به سرور می‌گفتیم که آدرسی که به وردپرس تحویل می‌دی، آدرس unencoded باشه. این مساله، این مشکل امنیتی رو به وجود میاره که اگر مثلن به IIS بگیم که فقط کاربرهایی که هویت‌سنجی شدن می‌تونن به test.php دسترسی پیدا کنن، این محدودیت رو می‌شه با فرستادن ریکوئست به test%2ephp دور زد.

نمی‌دونم چرا ولی توی IIS 8 با همون web.config به مشکل خوردیم و باعث می‌شد کلن همه‌ی آدرس‌هامون internal server error بگیره. بنابراین پس از اندکی جست‌وجو، به این‌جواب رسیدم. برای حل مشکل، کافیه به وردپرس بگیم که به‌جای آدرسی که از سرور می‌گیری، آدرس unencodedش رو بگیر. برای این‌کار اول wp-config.php این کد رو اضافه می‌کنیم:

if ( isset($_SERVER['UNENCODED_URL']) ) {
$_SERVER['REQUEST_URI'] = $_SERVER['UNENCODED_URL'];}

 

تغییراتی که من روی پوسته دو هزار و چهارده اعمال می‌کنم قبل از استفاده‌ی نهایی ازش

همون‌طور که تاحالا متوجه شدید که بعد از طی شدن دوران ریکاوری بعد از کنکور دوباره اومدیم (اومدم!) سراغ دو برنامه‌نویس و یک‌سری تغییرات بنیادی (مثلا از اول ساختن سایت، دیتابیس‌ها و افزونه‌ها!) روش اعمال کردیم. من از پوسته‌ی دو هزار و چهارده خوشم اومد و تصمیم گرفتیم که از همین پوسته استفاده کنیم. ولی این پوسته مشکلاتی هم داره (داشت!) و باید یک‌سری تغییر روش صورت می‌گرفت (که این چند روز داشته صورت می‌گرفته!) که به حالت تا حدی مطلوب برسه. بدم نیومد که یه توضیحی بدم که چه تغییراتی روی پوسته انجام دادم شاید به درد یکی دیگه هم بخوره (فایل‌های تغییر یافته به صورت جداگانه توی گیت‌هاب موجوده) :

  • پوسته دو هزار و چهارده با صفحات عریض مشکل داره (شاید مشکل نباشه چون این چیزی نیست که از چشم تیم وردپرس دور بمونه ولی چیز جالبی نیست از نظر من) و همون‌طور که این‌جا میبینید حتی توی صفحه‌ی ۱۳۶۶ در ۷۶۸ هم حتی گوشه‌ی سمت چپ‌ش (توی نسخه‌ی راست به چپ) خالیه. برای رفع این مشکل توی انجمن‌های وردپرس چند خط کد css هست که با اضافه‌کردن اون به فایل style.css پوسته یا پوسته‌ی کودک مشکل حل میشه. (البته کدی که توی گیت‌هاب وجود داره یه ذره بیش‌تره و من اون رو از سایت سازنده‌ی پوسته ورداشتم که خودش بر اساس کارهای یکی دیگست :) )
  • برای اضافه کردن تغییرات خودم به پوسته یکی از ساده‌ترین (و در عین حال بدترین!) راه‌ها ویرایش مستفیم فایل style.css پوسته‌ست. حداقل ضررش اینه که اگه پوسته آپدیت بشه اون تغییرات از بین میرن. برای همین هم وردپرس یه راه‌حل جایگزین پیشنهاد می‌کنه و اونم استفاده از پوسته‌ی کودکه. پوسته‌ی کودک تمام فایل‌هاش رو از پوسته‌ی پدر به ارث می‌بره جز فایل‌هایی که خودتون اضافه کنید. (در این مورد فقط فایل style.css) و البته نباید فراموش کنیم که اگه فایلی توی پوسته‌ی کودک وجود داشته باشه وردپرس دیگه اون فایل رو از پوسته‌ی والد اجرا نمی‌کنه. اگه بعدا وقت شد یه نوشته راجع بهش می‌نویسم.
  • توی صفحه‌ی اصلی به دلایلی تصمیم گرفتم که تصویرهای شاخص (یا همون تامبنیل) رو نشون ندم. و این نوشته کمک کرد. من از روش اول‌ش استفاده کردم. و بعدش مجبور شدم تغییراتی توی css بدم چون نوشته‌ها یا خیلی از هم فاصله گرفته بودن یا رفته بودن تو هم.
  • فونت عنوان‌های صفحه‌ی اصلی رو کردم ۲۵ واحد. (کوچیک‌شون کردم)
  • نمی‌دونم چرا ولی حتی توی فایل rtl.css پوسته هم یک‌سری از فونت‌ها تاهوما نبودن و از نظر من فونت پیش‌فرض فارسی (که ما فونت پیش‌فرض استاندارد و رسمی نداریم!) زشته و برای همین هم اون فونت‌هایی که تاهوما نبودن رو تاهوما کردم. از جمله فونت ویرایشگر وردپرس (توی پوشه‌ی /wp-content/themes/twentyfourteen/css/editor-style.css پیداش می‌کنید) و فونت عبارت «اضافه‌کردن دیدگاه».
  • نمی‌دونم کی توی تیم ترجمه‌ی فارسی به ذهن‌ش رسیده که «thought» توی بخش دیدگاه‌ها رو «فکر» ترجمه کنه ولی به نظرم «دیدگاه» واژه‌ی مناسب‌تری اومد برای همین فایل ترجمه‌ی پوسته رو هم ویرایش کردم.
  • آخرین تغییر هم یه ذره توضیح داره. اگه برید آخر صفحه‌ی اصلی می‌بینید که با نوشته‌های «پسین» و «پیشین» مواجه میشید که برای رفتن به صفحات بعد هستن و کنارشون هم یه پیکان وجود داره. توی نسخه‌ی انگلیسی برای رفتن به صفحه‌ی بعد از پیکان سمت چپ استفاده شده و توی فارسی هم (در واقع توی فایل ترجمه) پیکان رو به پیکان سمت راست ترجمه کردن. حدس می‌زنم موقعی که توی CSS جهت صفحه رو تغییر می‌دیم (با ویژگی direction) جهت پیکان ها هم برعکس می‌شه و برای همین هم توی ترجمه‌ی اصلی پوسته پیکان‌ها برعکس هستن. برای همین هم دوباره فایل ترجمه رو ویرایش کردم و جهت پیکان‌ها (پسین و پیشین) رو عوض کردم.

اینا تغییراتی بود که من اعمال کردم و فایل‌های تغییر یافته به صورت جداگانه توی گیت‌هاب موجوده. به دلیل مشکلات افزونه‌ای نتونستم کدها رو این‌جا بزارم ولی فایل‌های گیت‌هاب توضیحات دارن. خوشحال می‌شم اگه مشکل دیگه‌ای توی سایت پیدا کردید در قالب دیدگاه یا ایمیل به info در 2barnamenevis.com به ما اطلاع بدید.

پی‌نوشت: این نوشته و پروژه‌ی گیت‌هاب با هر تغییر به‌روزرسانی می‌شه.

به‌روزرسانی ۱: خط زیر لینک‌ها رو هم حذف کردم.

دیگر در گوگل مشکل نیم‌فاصله نداریم!

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

پس از انتشار افزونه نگاهی برای بازنویسی نوشته‌ی قبلی (به توصیه‌ی مهدی) به site:2barnamenevis.com در گوگل انداختم و در کمال تعجب دیدم که نام دو برنامه‌نویس در تعداد زیادی از نوشته‌ها با نیم‌فاصله نوشته می‌شه.

Capture10

 

Capture11

 

Capture12

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

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

ولی از همین الان نوشته‌ی قبلی رو از اعتبار ساقط می‌کنم چون دیگه نیازی بهش نیست.

موفق باشید و نمی‌دونید چقدر خوشحالم.

چون وردپرس با افزونه‌ی کمتر = سرعت بیش‌تر (حتی اگر آدم خودش افزونه رو نوشته باشه!)

رفع مشکل نمایش نیم‌فاصله در گوگل


این نوشته از اعتبار ساقط شده! (به این نوشته مراجعه کنید)

فقط در صورتی که هنوز کارکتر نیم‌فاصله‌ی شما در گوگل نمایش داده نمی‌شود از این افزونه استفاده کنید


کیبورد غیر استاندارد فارسی نسخه‌ای ویرایش‌شده از کیبورد QWERTY عربی بوده و در ماشین‌های تایپ (و نه در کیبوردهای نوین) کاربرد داشته. متأسفانه این کیبورد به ویندوز راه یافت و در نسخه‌های قبلی ویندوز (تا قبل از ویندوز  ۸) این کیبورد به عنوان کیبورد فارسی استفاده می‌شده. یکی از مهم‌ترین مشکلات این کیبورد این بوده که در عربی مفهومی به اسم نیم‌فاصله وجود نداره در صورتی که در زبان فارسی ما از نیم‌فاصله زیاد استفاده می‌کنیم و همان‌طور که از اسم‌ش پیداست قراره جایگزین فاصله در بعضی از ترکیب‌ها باشه. مثلا در جمله‌ی قبل ترکیب و ها یک واژه به حساب می‌شن و نباید آن‌ها را جدا نوشت (و سرهم نویسی هم منسوخ شده) و در این ترکیب‌ها از نیم‌فاصله استفاده می‌شه.

اگر یادتون باشه در این نوشته توضیح دادم که گوگل کارکتر نیم‌فاصله رو در نتایج جست‌وجو حذف می‌کنه و این که در یکی از بخش‌های پشتیبانی گوگل از گوگل درخواست کردم که کارکتر نیم‌فاصله رو جزو کارکترهایی که نمایش می‌دن اضافه کنند ولی این اتفاق نیافتاد و من به این نتیجه رسیدم که خودم باید دست به کار بشم و برای حل مشکل کاری انجام بدم.

اگر جدیدا توی گوگل دو برنامه‌نویس یا site:2barnamenevis.com رو سرچ کرده باشید (عمرا!) متوجه می‌شید که نوشته‌های جدیدتر و یک‌سری از نوشته‌های قدیمی‌تر ما مشکل نیم‌فاصله رو ندارند (در واقع جای نیم‌فاصله، فاصله گزاشتیم در نسخه‌ی جدید افزونه که در انتشار آن در مخازن وردپرس هستیم، نیم‌فاصله در گوگل به شکل صحیح نشان داده می‌شود) ولی توی نوشته‌ی اصلی همون نیم‌فاصله هستش.

برای این کار من یک افزونه برای وردپرس نوشتم که اگر user-agent بازدیدکننده‌ی سایت، user-agent خزنده‌ی گوگل بود، توی عنوان صفحه، دیدگاه‌ها، توضیحات دسته‌ها، اطلاعات سایت و اسم سایت اگر کارکتر نیم‌فاصله بود، به‌جای اون فاصله بزاره. اول آموزش نصب و استفاده از افزونه رو می‌گم و بعد بخش علمی ماجرا برای افرادی که دوست دارند بیش‌تر بدونن. برای استفاده از افزونه باید:

  1. فایل افزونه رو دانلود کنید (حجم: ۲ کیلوبایت)
  2. افزونه رو فعال کنید.
  3. اگر از افزونه‌ی کش استفاده می‌کنید باید توی تنظیمات اون user-agentهای گوگل رو جدا کنید. (لازم نیست همه‌ی user-agentها رو بنویسید. در ادامه توضیح می‌دیم!)

user-agentهای گوگل اون‌هایی هستند که این‌جا گفته و توی افزونه ما به همه‌ی اون‌ها حساسیم (یعنی اگر user-agent یکی از اون‌ها بود نیم‌فاصله می‌شه فاصله) ولی افزونه‌های کش معمولا یک واژه‌ی کلیدی می‌خوان و اگر اون user-agent اون واژه‌ی کلیدی رو شامل می‌شد دیگه سایت رو کش‌شده (به اون user-agent) نشون نمی‌دن. اگر از افزونه‌ی Hyper cache E استفاده می‌کنید توی صفحه‌ی تنظیمات افزونه Agents to reject رو پیدا کنید و توی اون کادر متنی روبه‌روش این مقادیر رو وارد کنید:

Googlebot
(compatible; Mediapartners-Google/2.1; +http://www.google.com/bot.html)
Mediapartners-Google
(+http://www.google.com/adsbot.html)

و اگر هر افزونه‌ی کش دیگه‌ای دارید باید خودتون ببینید چجوری user-agentها رو جدا کنید. پیشنهاد من اینه که توی گوگل اسم افزونه و user agent exclude رو جست‌وجو کنید؛ حتما به جواب‌تون می‌رسید و یا می‌تونید به ما اطلاع بدید تا ما این نوشته رو آپدیت کنیم. در هر صورت user-agentهایی که باید جدا بشن همین‌هایی هستند که گفتم. و کار تمام است. حالا نوشته‌های جدیدتر شما (و به تدریج نوشته‌های قدیمی‌تر) دیگر مشکل نیم‌فاصله نخواهند داشت.


و حالا بحث علمی (که نمی‌شه دقیقا بهش گفت علمی!) user-agent: هر مرورگری یک‌سری از اطلاعات خودش رو به سایتی که ازش بازدید می‌کنه می‌ده تا اون سایت بتونه تشخیص بده که کاربر داره با چه مرورگری سایت رو نگاه می‌کنه. مثلا برای تشخیص این که بازدیدکننده داره از گوشی موبایل، تبلت یا کامپیوتر سایت رو نگاه می‌کنه از user-agent استفاده می‌شه. برای این‌که بفهمید که user-agentتون چیه می‌تونید به سایت whatsmyuseragent مراجعه کنید. مثلا user-agent فعلی من اینه:

 Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.52 Safari/537.17 AlexaToolbar/alxg-3.1

و این user-agent نشون می‌ده که مثلا من از ویندوز ۶.۲ یا همون ویندوز ۸ استفاده می‌کنم و موتور ساخت صفحات وب من (توضیحات بیش‌تر رو در این‌جا بخونید) webkit هستش و یا

AlexaToolbar/alxg-3.1

می‌گه که من دارم از تولبار alexa استفاده می‌کنم. و خوب معلومه Chrome/24 یعنی مرورگر من گوگل کرومه. اصولا هر چیزی که توی وب هست یک user-agent داره. حالا ما توی این افزونه از user-agentهای خزنده‌های گوگل استفاده کردیم. در واقع user-agentها رو چک می‌کنیم و اگر خزنده‌ی گوگل بود، به‌جای متن نیم‌فاصله‌دار، متن فاصله‌دار به اون نشون می‌دیم. مثلا توی مرورگر کروم می‌تونید user-agent خودتون رو تغییر بدید و مثلا بکنیدش

Googlebot-Image(Googlebot)

و دو برنامه‌نویس رو ریفرش کنید اون‌وقت همه‌ی نیم‌فاصله‌ها می‌شن فاصله!


این افزونه چجوری کار می‌کنه وردپرس در افزونه‌هاش قابلیتی داره یه اسم filters که این اختیار رو به شما می‌ده که محتوایی رو فیلتر کنید. برای اطلاعات بیش‌تر به این‌جا مراجعه کنید. حالا این افزونه یک فیلتر اضافه می‌کنه و اگر user-agent بازدیدکننده user-agent گوگل بود اون‌وقت توی نوشته همه‌ی نیم‌فاصله‌ها رو با فاصله جایگزین می‌کنه. واقعا کار ساده‌ایه. و این رو هم بگم که این افزونه حدود یک ماه و نیمه که آماده‌ست ولی مشکل ما کش گوگل بوده و همین‌طور مشکلاتی که قبلا داشته. پی‌نوشت: یک‌سری از جست‌وجوهام توی گوگل به سایت‌هایی ختم شدند که نیم‌فاصله داشتند (یعنی گوگل نیم‌فاصله‌شون رو نشون می‌داد) ولی وقتی نوشته‌های یک پزشک رو چک کردم دیدم گوگل نیم‌فاصله‌های اون رو هم حذف می‌کنه و خوب این دلیلی شد که افزونه رو عمومی کنیم. من که ترجیح می‌دم گوگل نیم‌فاصله رو نشون بده تا این‌که این افزونه استفاده بشه ولی فعلا شرایط (حداقل برای ما) حکم می‌کنه که از همین افزونه استفاده کنیم چون گوگل که کاری نکرده. در هر صورت اگر مشکلی در استفاده از این افزونه دیدید حتما در این نوشته گزارش کنید.

افزایش سرعت وردپرس با بهره‌گیری از Caching، به زبان ساده و بدون خونریزی!

وردپرس ذاتاً منابع زیادی از سرور را مصرف می‌کند و البته ممکن است به اندازه‌ی کافی سریع هم نباشد، به خصوص در مواقعی که افزونه‌ها و ویجت‌های بسیاری را روی آن نصب کرده باشید. اما این مشکل، بدون راه حل نیست. در واقع، راه اساسی برای فایق آمدن بر این مشکل‌ها، استفاده از شیوه‌های Caching است. Caching نه تنها سرعت سایت را (در بسیاری موارد به طرز چشمگیری) افزایش می‌دهد، بلکه مصرف منابع سرور را نیز تا حد زیادی کاهش می‌دهد. (برای این‌که درک درستی از کارایی Caching، می‌توانید توضیحات این مورد را ببینید. تصاویرش هم همینجا ببینید:)

codinghorror-wordpress-caching

توجه داشته باشید که در نمودار‌ بالا، برای از اعمال Caching، از افزونه‌ی WP-Cache استفاده شده که نسبت به افزونه‌هایی که در ادامه معرفی خواهیم کرد، کارایی کمتری دارد. می‌توانید نمودار‌های مقایسه‌ی سرعت افزونه‌های کش را هم در این صفحه ببینید.

در این مقاله، قصد داریم نحوه‌ی Caching در وردپرس را به زبان ساده آموزش دهیم، بنابراین دانش فنی مورد نیاز برای این کار، در حد توانایی کار با وردپرس و نصب افزونه‌هاست. توجه داشته باشید که راه‌های حرفه‌ای‌تر و مؤثر‌تری هم برای این کار وجود دارد. اما من در این مقاله یکی از ساده‌ترین شیوه‌های ممکن را به شما آموزش خواهم داد.

اصلاً Caching چیست؟

به زبان ساده، هر بار که کاربری می‌خواهد یکی از صفحه‌های وبگاه شما را باز کند، وردپرس «اجرا» می‌شود و صفحه را می‌سازد. از آن‌جایی که این «اجرا‌»‌های مکرر در واقع خروجی یکسانی دارند (مثلاً یک صفحه از سایت شما، تا زمانی که کامنتی ارسال نشود تغییری نمی‌کند)، می‌توانیم خروجی این «اجرا»ها را در جایی ذخیره کنیم و بارهای بعدی، به جای «اجرا»ی دوباره‌ی برنامه، همان خروجی ذخیره شده را برای کاربر ارسال کنیم. به این کار، Caching می‌گویند.

increase-wordpress-speed-boost-wordpress-speed-using-some-plugins1

چه شیوه‌هایی برای Cache کردن وجود دارد؟

به طور کلی، می‌توان دو شیوه‌ی اساسی برای Caching نام برد:

۱. Cache صفحه: در این شیوه، کل خروجی یک صفحه به صورت یک فایل در سرور ذخیره می‌شود و آن صفحه به عنوان خروجی درخواست متناظر، ارسال می‌شود.

۲. Cache عملکرد‌ ها: در این شیوه، به جای ذخیره کردن کل صفحه، برخی عملکرد‌ها (مثل ویجت‌ها، یا درخواست‌های بین دیتابیس و وردپرس) ذخیره می‌شوند و در موقع لزوم مورد استفاده قرار می‌گیرند.

خب، بیایید کار را شروع کنیم!

گام نخست: افزونه‌ی Hyper Cache Extended را روی وردپرس نصب و فعال کنید. این افزونه کارایی مناسبی دارد و راه‌اندازی آن هم بسیار ساده است.

تنظیمات اصلی این افزونه کار شما را راه می‌اندازد. فقط اگر وبگاه شما نسخه‌ی موبایل دارد، باید مراحل زیر را طی کنید:

در منوی وردپرس، از قسمت «پیشخوان» روی Hyper Cache E کلیک کنید.

Screenshot (61)

حال، در قسمت Configuration for mobile devices، یکی از دو گزینه‌ی زیر را فعال کنید:

Screenshot (62)

اگر از افزونه‌ی WordPress Mobile Pack استفاده می‌کنید گزینه‌ی اول و اگر از روش دیگری استفاده می‌کنید، گزینه‌ی دوم را انتخاب کنید.

گام دوم: افزونه‌ی DB Cache Reloaded Fix را هم روی وردپرس نصب و فعال کنید. نیازی به دستکاری تنظیمات این افزونه نیست!

تا این‌جا، شما تنظیمات Cache وبگاه وردپرسی خود را انجام داده‌اید! این تنظیمات برای بسیاری از صاحبان وبلاگ‌ها و وبگاه‌ها کافی است. اما اگر به دنبال افزونه‌ی قدرتمندتری می‌گردید، می‌توانید به جای دو گامی که گفته شد، از افزونه‌ی W3 Total Cache استفاده کنید که قدرتمندتر است، و البته راه‌اندازی‌اش نیاز به دانش فنی بیشتری دارد.

توجه داشته باشید که تا زمانی که در وردپرس لاگین باشید، افزونه‌ی کش صفحه‌های کش شده را به شما نشان نمی‌دهد. برای مشاهده‌ی تغییر سرعت، از وردپرس خارج شوید، یا مرورگر را در حالت Incognito/Private باز کنید. هنگام نخستین مشاهده‌ی صفحه، آن صفحه Cache می‌شود. حال اگر صفحه را Refresh کنید، می‌بینید که چقدر سرعت پاسخگویی سایت بالا رفته است!

***

یک گام اضافه: این گام ربطی به Caching ندارد، اما به بهبود سرعت وبگاه شما کمک به‌سزایی می‌کند: با کمک افزونه‌ی WP-Optimize، پایگاه داده‌ی خود را بهینه‌سازی کنید. بهینه‌سازی دیتابیس، حجم آن را کاهش و سرعت آن را افزایش می‌دهد. برای این‌کار، پس از نصب و فعال سازی این افزونه، در پایین منوی اصلی وردپرس روی WP-Optimize کلیک کنید، گزینه‌ی «بهینه سازی جداول پایگاه داده» را تیک بزنید و روی دکمه‌ی Process کلیک کنید. خوب است هر چند هفته یک بار،‌ این کار را تکرار کنید. (تیک‌زدن گزینه‌ی «حذف تمام رونوشت‌ها» هم می‌تواند حجم دیتابیس را کاهش و در نتیجه سرعت آن را افزایش دهد. اگر صلاح می‌دانید، این گزینه را هم تیک بزنید!)

Screenshot (63)

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

و یک نکته در همین مورد: اگر در قالب یا افزونه‌های وبگاه خود تغییراتی اعمال کردید، می‌توانید از صفحه‌ی تنظیمات Hyper Cache E، با کلیک بر روی دکمه‌ی Clear cache، صفحات ذخیره شده را پاک کنید تا تغییرات اعمال شده به کاربران نمایش داده شوند. همچنین اگر از کلادفلیر استفاده می‌کنید، در صورت تغییر در برخی فایل‌ها، لازم است از وبگاه کلادفلیر در بخش Cloudflare settings، روی دکمه‌ی Purge cache کلیک کنید تا تغییرات اعمال شده نمایش داده شوند. (در صورت انجام ندادن این کار، ممکن است نمایش تغییرات به کاربران تا چند روز به طول بیانجامد)

آیا در راه‌اندازی Cache به مشکلی برخورده‌اید؟ آیا افزونه‌های دیگری را برای این منظور پیشنهاد می‌کنید؟ Caching چه‌قدر در افزایش سرعت وبگاهتان به شما کمک کرده‌است؟ کیفیت گام‌های اضافه‌ی این نوشته از دید شما چطور بود؟! منتظر دیدگاه‌های شما هستیم.

پی‌نوشت: اگر مایلید بدانید، «دو برنامه‌نویس»‌ در حال حاضر برای Caching از افزونه‌های Hyper Cache Extended، DB Cache Reloaded Fix و WP Widget Cache استفاده می‌کند.

چگونه مشکل خطای «پوشه‌ی مقصد وجود ندارد» یا «پوشه‌ی مقصد قابل نوشتن نیست» را حل کنیم؟

 هنگامی که دو برنامه‌نویس را به نسخه‌ی ۳.۵ وردپرس فارسی (که به‌نظر می‌آید در اصل ۳.۶ آلفا باشد یا اشتباها ۳.۶ آلفا ترجمه شده‌است!) به‌روزرسانی کردیم با مشکل خاصی مواجه شدیم: هنگام به‌روزرسانی افزونه‌ها وردپرس خطا‌یی می‌داد با این پیام که «پوشه‌ی مقصد قابل نوشتن نیست» درصورتی که وردپرس به پوشه‌ی wp-content دست‌رسی کامل داشت.

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

برای حل مشکل ابتدا مطمئن شوید که دست‌رسی پوشه‌ی wp-content در لینوکس ۷۷۷ است و در ویندوز سرور گروه‌های IUSR و IIS_IUSRS به این پوشه دست‌رسی کامل (full access) دارند و در سرویس‌های میزبانی ویندوز نیز همه‌ی گروه‌ها دست‌رسی کامل به این پوشه دارند.

سپس فایل wp-config.phpتان را باز کنید و خط 

if ( !defined('ABSPATH') )

define('ABSPATH', dirname(__FILE__) . '/');

را بیابید و پس از آن 

define('WP_TEMP_DIR', ABSPATH . 'wp-content/');

را اضافه کنید.

تمام شد! حالا یک وردپرس آماده دارید که همه‌ چیزش راحت به‌روزرسانی می‌شود.

پی‌نوشت: ما عادت داشتیم همه‌ی افزونه‌های‌مان رو در لحظه به‌روزرسانی کنید. باورتان نمی‌شود این چند روزی که ۱۰ – ۱۲ تا افزونه به‌روزرسانی نمی‌شدند چه جنگ اعصابی داشتیم!

البته همه‌ این‌ها توطئه‌ی آمریکاست تا دانش‌آموزان مملکت حواس‌شان پرت به‌روزرسانی وردپرس شود و درست درس نخوانند و بی‌خیال از این‌که پس فردایش آزمون جامع دارند دل‌شان به به‌روزرسانی وردپرس‌شان خوش شود و …  :-D

شانس خود را در مسابقه‌ی ۴۱۹ دلاری امتحان کنید!

وبگاه WPMU به تازگی سه اکانت به ارزش ۴۱۹ دلار حاوی پوسته‌ها و افزونه‌های وردپرس هدیه می‌دهد!

بد نیست شما هم شانس خود را امتحان کنید!‌ به ویژه که شرکت در این مسابقه تقریباً کاری ندارد!

تنها کافیست متن زیر را توییت کنید:

I just entered the WPMU DEV #100k Users Premium WordPress Plugins/Themes Contest! http://wpmu.org/100k


Celebrate 100k users at WPMU DEV to enter the draw for a free annual account!

برای بالابردن شانس برنده‌شدن در این مسابقه هم، باید کد زیر را در وبگاه خود کپی کنید و نشانی آن صفحه را در صفحه‌ی مربوط به مسابقه وارد کنید.

  <a href="http://wpmu.org/100k"><img title="wpmudev100k" src="http://wpmu.org/wp-content/uploads/2012/08/wpmudev100k.jpeg" alt="" width="650" height="450" /></a><br />Celebrate 100k users at <a href="http://premium.wpmudev.org">WPMU DEV</a> to enter the draw for a free annual account!

امیدوارم برنده‌ی یکی از این سه اکانت شما باشید!

برای وبگاه خود نسخه ی موبایل بسازید!

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

برای برپایی نسخه ی موبایل، شما باید یک پوسته ی مناسب برای موبایل و تبلت داشته باشید.

بهترین گزینه، استفاده از پوسته های Responsive، یا تبدیل پوسته ی مورد علاقه ی خود به یک پوسته ی Responsive است. پوسته ی Responsive پوسته ای است که با توجه به اندازه ی صفحه، شکل ظاهری خود را تغییر می دهد تا کارایی مناسبی را در اختیار بازدید کننده قرار دهد.
گنجینه‏ای از پوسته‏های رایگان Responsive هم در اینجا قرار دارد. بد نیست سری به آن‏ها بزنید! برای مشاهده ی نمونه ای از پوسته های Responsive هم می توانید از میان اين پوسته ها، دموی یکی را با کامپیوتر مشاهده کرده و اندازه ی عرض مرورگر خود را تغییر دهید تا تغییر شکل پوسته برای اندازه های مختلف را ببینید.

دقت کنید که پس از انتخاب/طراحی پوسته‌ی Responsive مورد نظر خود، تنها کافیست آن پوسته را به عنوان پوسته ی پیش فرض وبگاه خود برگزینید!

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

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

از برترین افزونه‏هایی که می‏توانند در راه اندازی نسخه‏ی موبایل وبگاه شما را یاری دهند، می‏توان MobilePress ،Wordpress Mobile Pack و Any Mobile Theme Switcher را نام برد.

MobilePress آسان‌ترین راه برای برپایی نسخه‌ی موبایل وبگاه است.
به محض فعال سازی این افزونه، نسخه ی موبایل وبگاه شما شروع به کار می کند. البته با یک پوسته ی انگلیسی!
بخشی برای مدیریت پوسته های موبایل در وردپرس افزوده می شود. البته این پوسته ها را باید در پوشه ی /wp-content/mobile-themes به وسیله‌ی اف‌تی‌پی آپلود کنید. (البته این پوشه در تنظیمات افزونه قابل تغییر است)

شیوه ی نصب پوسته ی فارسی بر روی MobilePress نیز به شرح زیر است:

این فایل را دانلود کرده، محتویات آن را استخراج کرده و در شاخه‌ی

/wp-content/plugins/mobilepress/system/themes

از وبگاهتان آپلود کنید.

اما افزونه ی بعدی، یعنی WordPress Mobile Pack بدون شک قدرتمند ترین افزونه در این زمینه است. امکانات بسیار زیادی دارد، اما کار با امکانات پیشرفته‌ی آن کمی دشوار است. پوسته ی پیش‌فرض آن نیز چندان زیبا به نظر نمی‌رسد… اما شما می توانید پوسته ی مورد علاقه‌ی خود را دانلود کنید و همان گونه که پوسته های دیگر را در وردپرس نصب می کنید، آن را نصب کنید، سپس از طریق تنظیمات این افزونه، آن را به عنوان پوسته‌ی موبایل وبگاه خود برگزینید!

و اما Any Mobile Theme Switcher (با سپاس از دوست عزیز «حسین» برای معرفی این افزونه به من‎(‎ این افزونه هم به درد کسانی می‌خورد که تمایل دارند برای پلتفرم‌های مختلف (انواع گوشی و تبلت)، پوسته‌های متفاوتی را در نظر بگیرند.

نتیجه‌گیری نهایی

بهترین انتخاب، داشتن یک پوسته‌ی Responsive است. اما ممکن است پیدا کردن چنین پوسته‌ای به هزینه و/یا وقت زیادی نیاز داشته باشد. (در ضمن، ممکن است باز هم برای گوشی‌های خیلی قدیمی مجبور باشید با استفاده از افزونه‌هایی که معرفی شد یک پوسته‌ی ساده هم تنظیم کنید)

اما اگر قصد دارید برای موبایل‌ها و تبلت‌ها پوسته‌ی جداگانه‌ای داشته باشید، دو راه دارید:

اگر حوصله ی گشتن به دنبال پوسته ی مناسب برای وبگاه خود (و احیانا فارسی کردن آن‎(‎ را ندارید، پیشنهاد می کنم از افزونه ی MobilePress استفاده کنید.

اما اگر پوسته ی مناسبی در نظر دارید، به نظر من WordPress Mobile Pack گزینه ی بهتری است.

اگر هم قصد پشتیبانی از انواع گوشی‌ها -از قدیمی‌ترین‌ها تا جدیدترین‌ها- را با پوسته‌های متفاوتی دارید، بهتر است از Any Mobile Theme Switcher بهره بگیرید.

 

*در صورتی که از پوسته ی جداگانه ای برای نسخه ی موبایل وبگاه خود بهره می گیرید (مثلا استفاده از یکی از افزونه‌های فوق‎(‎، و همچنین از افزونه ی W3 Total Cache هم استفاده می کنید، باید تنظیماتی را در افزونه ی کش مطابق مرحله های زیر انجام دهید:

۱. وارد تنظیمات افزونه (Performance) شوید.

۲. وارد بخش Manage user agent groups شوید.

۳. اگر از افزونه‌های MobilePress یا WordPress Mobile Pack استفاده می‌کنید، هر دو گروه پیش‌فرض (High و Low) را فعال کنید. (یعنی تیک گزینه‌ی Enabled را بزنید)

اما اگر از افزونه‌ی Any Mobile Theme Switcher‌ استفاده می‌کنید، باید برای هر یک از دسته‌ها، یک Group ایجاد کرده و User agent های مربوط به هر دسته را در آن بیفزایید.

 

پی نوشت: در مورد افزونه های کش نیز به زودی چیزی خواهم نوشت.

پی نوشت ۲: پوسته ی نسخه ی موبایل «دو برنامه نویس» هم به زودی به روز خواهد شد.

پی نوشت ۳: افزونه‌ی WordPress Mobile Pack به طور خودکار یک نسخه‌ی موبایل هم برای بخش مدیریت وردپرس درست می‌کند. اما اگر از این افزونه استفاده نمی‌کنید، سه افزونه‌ی دیگر هستند که برای ساختن نسخه‌ی موبایل بخش مدیریت وردپرس به کار می‌آیند: + ، + و + . می‌توانید مطابق سلیقه‌ی خود از یکی از این سه افزونه استفاده کنید!

افزونه‌های برتر وردپرس در زمینه‌ی سئو

(نویسنده‌ی مهمان) امروزه سئو یک فاکتور اساسی در رتبه‌بندی وبگاه شماست. اگر سئوی سایت شما خوب باشد، وبگاه شما در نتایج جستجو بیشتر دیده خواهد شد و این یعنی بازدید یا درآمد بیشتر. در این نوشته ۵ افزونه‌ی وردپرس که به شما در بهینه سازی سئوی وبگاه خود کمک می‌کنند معرفی خواهد شد.

۱- All in One SEO Pack

معروفترین و مهم ترین افزونه‌ی سئوی وردپرس! ویژگی های متعددی دارد که توضیح آنها در این نوشته نمی‌گنجد. از مهم ترین ویژگی‌های این افزونه این است که از آنالیزور گوگل پشتیبانی می‌کند، نوشته‌های مشابه را اضافه می کند ، متا تگ ها را طبقه بندی می کند ، عنوان نوشته های شما را برای موتور های جستجو  تنظیم می کند.

۲- Google XML Sitemaps

یک از راه های ساده اما مهم برای حضور بیشتر در نتیاج جستجو، داشتن یک نقشه سایت خوب و کامل است. این  پلاگین فوق العاده نقشه سایت را برای شما ایجاد می کند. نقشه ای که این پلاگین ایجاد می کند ، سایت شما را به صورت کامل شامل می شود، و برای تمام نسخه های وردپرس قابل نصب است. البته باید پس از این‌که این افزونه را راه اندازی کردید، از طریق Google Webmaster Tools، نقشه‌ی سایت خود را Submit کنید. همچنین می‌توانید آن‌را در robots.txt نیز قرار دهید. (به robots.txt وبگاه دو برنامه‌نویس نگاه کنید!)

۳- SEO Friendly Images

وبمسترها زیاد به این موضوع که عکس هایشان در موتورهای جستجو به چشم بیاید دقت نمی کنند و سئو را تنها در نوشته ها می دانند. به این موضوع فکر کنید که عکس های شما در صفحه اول جستجوی تصاویر باشند! این پلاگین به طور اتوماتیک با اضافه کردن نام و برچسب این کار را برای شما می کند.

۴- Redirection

یکی از مهم ترین پلاگین ها برای سایت های وردپرسی! به شما پیشنهاد می کنم این پلاگین رو هم اکنون نصب کنید! این پلاگین ارور 404 را غیرفعال می کند که این کار در افزایش رتبه در موتورهای جستجو بسیار مهم است. همچنین شما می توانید با تنظیم آن ، نه تنها به جای صفحه هایی که وجود ندارند ، بلکه برای سایر صفحات آدرسی برای هدایت شدن مرورگر قرار دهید.

۵- SEO Smart Links

این پلاگین واژه های کلیدی داخل پست و کامنت های شما را با پست ها ، صفحات و موضوعات دیگر لینک می کند. این پلاگین همچنین با ارائه ویژگی «دنبال نکردن» لینک های خروجی (nofollow)، جلوی خروج موتورهای جستجو را از سایت شما می‌گیرد.

آیا افزونه یا ترفند دیگری برای بهبود سئوی وبگاه‌های وردپرسی می‌شناسید؟ بد نیست در دیدگاه‌ها آن‌ها را با سایر بازدیدکنندگان در میان بگذارید!

وردپرس 3.4 نسخه‏ی بتا منتشر شد!

سایت رسمی وردپرس اعلام کرد: وردپرس 3.4 بتا برای آزمایش آماده است.

البته بهتر است آن را بر روی وبلاگ خود نصب نکنید. چرا که ممکن است این نسخه دارای مشکلات و ایراد هایی باشد. اما می‏توانید با خیال راحت آن را روی کامپیوتر خود نصب کنید و با آن کار کنید. همچنین می توانید اشکال های آن را گزارش کنید.

احتمالاً نسخه‏ی نهایی وردپرس 3.4 در ماه آینده (می 2012) منتشر خواهد شد.

برای اطلاعات بیشتر و برای گزارش ایراد های این نسخه، می‏توانید به وبگاه وردپرس سری بزنید.

برای دانلود این نسخه نیز روی اینجا کلیک کنید.