از دو سال پیش شروع به یاد گرفتن وردپرس کردم. وردپرس یه سیستم مدیریت محتوا هستش که کار خیلی از طراحای سایت و کاربرای عادی حتی برای طراحی سایت مورد علاقشون رو راحت تر میکنه. سیستمهای مدیریت محتوای دیگهای مثل جوملا و دروپال در رقابت با وردپرس هستن و هر کدوم مزیتهایی نسبت به هم دارن که با یه سرچ ساده میشه این ها رو راحت فهمید.
وردپرس ولی جامعه آماری قوی تری داره، افزونههای خیلی خوب و خفنی داره تو هر زمینهای مخصوصا SEO که خیلی نقش مهمی در رشد سایت داره.
کار با وردپرس و افزونههای اون شاید در نگاه اول ساده و راحت به نظر برسند، ولی:
هر چه سایتی که طراحی میکنیم پیچیدهتر و نیاز به سفارشی سازی بیشتری داشته باشه، باعث میشه که نیاز ما به استفاده از افزونههای دیگر هم بیشتر شه که اغلب سرعت سایت رو کاهش میدهند و راه حل اصولی مدیریت در استفاده از این افزونههاست نه استفاده بیشتر از آنان.
این دلایل باعث شد که من وردپرس رو نه فقط به عنوان یک سیستم مدیریت محتوا، بلکه به عنوان یک سیستم متن باز بهش نگاه کنم که قابلیت تغییر و دست بردن توش رو داشته باشه. مهمترین دلیل دیگهای که به خاطرش وردپرس رو یاد گرفتم این بود که روی زبان PHP تسلط داشتم و از اونجا که وردپرس با زبان PHP نوشته شده بود، کار برای من خیلی راحت تر میشد.
معماری کدنویسی وردپرس رو باهاش آشنا شدم، ساختار مدیریت فایل توی وردپرس و داکیومنت خیلی خوبی هم که داشت من رو با ساختار کد نویسی توی وردپرس بیشتر آشنا کرد و توسعه وردپرس رو برای من راحت تر.
این که برای طراحی و توسعه هر سایت از چه تکنولوژی هایی بهتره استفاده کرد، بیشتر از هر چیزی به نیازمندیها و توضیحات پروژه بستگی داره و نمیشه وردپرس رو همیشه بستر مناسبی برای توسعه سایت در نظر گرفت و با توجه به زمینه سایت و امکانات سایت میتوان تصمیمگیری کرد که پیادهسازی آن با وردپرس بهتر است یا خیر!
به عنوان یک برنامه نویس توسعه وردپرس برایم تجربهی جذابی بوده و هست، به دلیل اینکه کمتر کسی معمولا به فکر توسعه وردپرس میافتد و اغلب آن را به چشم یک سیستم کاملا آماده و بدون نقص میبینند و از آنجا که توسعه کد علاقهی من است اگر کدهای افزونهها و قالب های وردپرسی در دسترس و قابل تغییر نبودند، کار با وردپرس به جای تجربه به یک کابوس برای من بدل میشد.
یکی از مضوعات پرکاربرد در توسعه وردپرس ایجاد و استفاده از child theme ها هستش که توی یه پست دیگه بیشتر راجع بهش صحبت میکنم.