وردپرس یک CMS رایگان و متن باز با استفاده از PHP, HTML, JavaScript, AJAX, CSS ساخته شده است. وردپرس اولین بار توسط مت مولنوگ و مایک لیتل در سال 2003 ارائه شد. و در همان سال بر روی بیش از 2000 وبلاگ نصب گردید. و در سال 2017 وردپرس در نزدیک به 59 درصد وب سایت هایی که از CMS استفاده می کنند بکار گرفته شده است یعنی در 27 درصد از 10 میلیون وب سایت برتر. از وردپرس می توان برای وب سایت های کوچک تا متوسط تجاری استفاده کرد اما برای مقیاس های بزگ نیاز به دانش بیشتری است. اصولا استفاده از وردپرس بسیار ساده بوده و تنها در موارد خاص نیاز به تخصص بیشتر است. همچنین از نظر امنیتی در سطح مطلوبی قرار دارد.
وردپرس دارای یک Web Template System است که از یک پردازشگر Template بهره می برد. معماری آن یک front controller است، مسیریابی همه ی URI ها (یا شناسانه ی یکنواخت منبع) غیر استاتیک را به یک فایل PHP واحد هدایت می شود که URI را تجزیه می کند و صفحه هدف را شناسایی می کند. این کار اجازه حمایت برای لینک های ثابت Permalinks قابل خواندن توسط انسان را می دهد.
تم در وردپرس Themes
کاربران وردپرس ممکن است تم های مختلفی را نصب و یا بین آنها سوئیچ کنند. تم ها در وردپرس به کاربران اجازه می دهند که ظاهر و کاربری یک وب سایت که با وردپرس ساخته شده را تغییر دهیم بدون اینکه کد های هسته یا اصلی و یا محتوای وب سایت تغییر کند. هر وب سایت نیاز به حداقل یک تم دارد، و هر تم می بایست بر اساس استاندارد های وردپرس به کمک PHP، HTML و CSS ایجاد شده باشد. تم ها ممکن است مستقیما توسط داشبورد وردپرس نصب گردند و یا توسط FTP در فلدر تم ها کپی شوند. PHP، HTML و CSS تم های وردپرس را می توان برای تغییر عملکرد و یا ظاهر آن مستقیما ویرایش کرد. و یا حتی یک تم می توانند فرزند تم دیگر باشد و خصوصیاتی از تم دیگر به ارث ببرد و یا از امکانات آن استفاده کند.
تم های وردپرس را می توان در دو دسته تقسیم بندی کرد: رایگان و اختصاصی Premium. بسیاری از تم های رایگان در فلدر تم ها لیست شده اند و تم های Premium در بازار قابل خرید هستند یا توسط دهندگان وب ایجاد شده اند. کاربران وردپرس همچنین می توانند تم های خود را ایجاد یا ویرایش کنند.
پلاگین ها در وردپرس
پلاگین ها در معماری وردپرس به کاربران اجازه می دهند تا کاربری و امکانات بیشتری به وب سایت اضافه شود. وردپرس بیش از 50 هزار پلاگین دارد و هر یک از آنها امکاناتی را برای نیاز ها مختلفی برآورده می کنند. این امکانات می تواند در رنج مختلفی از بهینه سازی سایت برای موتور های جستجو گرفته تا نمایش ظاهر وب بکار گرفته شود. همه ی پلاگین ها با هم برابر نیستند بلکه ممکن است با یک به روز رسانی عملکرد وب سایت دچار مشکل شود. برخی پلاگین ها توسط خود وردپرس ارائه شده و برخی توسط اشخاص ثالث توسعه داده شده اند و گاه باید برای استفاده نیز خریداری شوند.
چند کاربری Multi-user
چند کاربری وردپرس برای کسانی که می خواهند همزمان چند کاربر در چندین سطح با وب سایت کار کنند مناسب می باشد. این امکان معمولا در روزنامه ها، مجلات، وبلاگ ها، دانشگاه ها و شرکت ها بزرگ اهمیت دارد. وردپرس این امکان را می دهد که شما در نقش هایی چون Administrator, Editor, Author, Contributor, Subscriber تعریف کنید هر یک به بخش های خاصی از وردپرس دسترسی دارند. مثلا Administrator اختیار کامل را دارد که می تواند کاربر های دیگر و نقش های دیگری را تعریف کند و Subscriber حداقل دسترسی را دارا می باشد.
سایر امکانات وردپرس
وردپرس همچنین خصوصیاتی چون بهینه سازی برای موتور جستجو SEO، قابلیت اضافه کردن تگ و دسته بندی به پست ها و همچنین یکپارچگی لینک ها را در خود دارا است. علاوه بر این ویرایش گر آن مجهز به ابزارهای ویرایشی و همچنین تبدیل سازی فرمت ها می باشد. دیگر خصوصیات وردپرس امکان ویرایش در حالت ویژوال و حالت HTML است.
آسیب پذیری وردپرس
Secunia همیشه لیستی از مشکلات امنیتی وردپرس نگهداری می کند. در سال 2007 و 2008 و 2015 تعداد زیادی آسیب پذیری در نرم افزار ها آشکار شد. در سال 2009 طبق گزارش Secunia وردپرس دارای 7 مشکل امنیتی با درجه حداکثری بود. در سال 2007 تعداد زیادی از وب سایت های تجاری برتر و کوچک که از AdSense استفاده می کردند مورد حمله قرار گرفتند. یک آسیب پذیری در یک پروژه وب سرور به یک هکر اجازه داد تا کد های مخرب را به شکل یک Back door در وردپرس ورژن 2.1.1 دانلود شود. که با بروز این مشکل به کاربران اعلام شد تا وردپرس را بلافاصله به ورژن 2.1.2 آپدیت کنند. در ماه می 2007 یک بررسی نشان داد که 98 درصد از وبلاگ ها آسیب پذیر هستند بعلت آنکه آنها وردپرس را آپدیت نکرده اند. برای حل این گونه مشکل ها وردپرس آپدیت برنامه از ورژن 2.7 به بعد بسیار آسان کرد، و از آن پس تنها با یک کلیک می توان وردپرس را آپدیت نمود. هرچند که این تغییر به علت فعال کردن سیستم فایل ها بدون ریسک نمی باشد.
در سال 2013 یک بررسی دیگر نشان داد که 50 پلاگینی که بیشترین دانلود را در وردپرس داشته اند آسیب پذیری هایی از نوع SQL injection و XSS دارند. و یک تحقیق دیگر نشان داد که 10 پلاگین برتر که برای تجارت الکترونیک استفاده می شوند آسیب پذیرند.
در مقابل برای بهبود کلی امنیت در وردپرس از ورژن 3.7 به بعد امکان گرفتن بکاپ به صورت اتوماتیک به وردپرس اضافه شد.
در مارچ 2015 از سوی بسیار از متخصصان امنیت و موتورهای جستجو گزارش داده که یک پلاگین SEO به نام Yoast که بیش از 14 میلیون کاربر داشت دارای مشکل امنیتی است که هکر ها می توانند از آن برای حمله Blind SQL injection از آن استفاده کنند. که برای رفع آن نیز لازم شد که پلاگین مربوطه مجدد آپدیت شود.
در ماه ژانویه 2017 شرکت Secunia یک آسیب پذیری دیگر در WordPress REST API پیدا کرد که به یک کاربر غیر مجاز اجازه ویرایش هر نوع پست را در وردپرس ورژن 4.7 و بالاتر می داد. با این گزارش توسعه دهندگان وردپرس در 6 روز توانستند این مشکل را در ورژن 4.7.2 رفع کنند.
همچنین می توان امنیت انفرادی وردپرس های نصب شده را با استفاده از پلاگین های امنیتی برای مخفی سازی منابع و امنیت پلاگین ها بالا برد. این بسیار مهم می باشد که وردپرس، تم ها و پلاگین ها را برای اطمینان بیشتر به روز نگاه داشت و همچنین از منابع معتبر آنها دانلود و مورد استفاده قرار داد. در صورت به روز نگه نداشتن این موارد ممکن است هکر ها پلاگین ها و یا وردپرس را برای وجود احتمالی حفره های امنیتی اسکن کنند و از این حفره ها برای آپلود کردن کد های مخرب خود در سود ببرند. بعلاوه با ویرایش فایل ها . htaccess می توان از ورود کاربران غیر قانونی و یا حملات از نوع SQL injection به فایل های حساس جلوگیری نمود.
برنامه نویسان و توسعه دهنده گان وب نیز می توانند با استفاده از ابزار هایی مانند WPScan, WordPress Auditor , WordPress Sploit Framework که توسط 0pc0deFR ایجاد شده اند برای آنالیز و بررسی پلاگین ها استفاده کنند. این ابزار ها می توانند آسیب پذیری هایی مانند CSRF, LFI, RFI, XSS, SQL injection , user enumeration را شناسایی کنند. هرچند این غیر ممکن است تمامی مشکلات امنیتی را با این ابزار ها شناسایی کرد اما این نکته بسیار مهم است که حداقل وردپرس، تم ها و پلاگین ها را با این ابزار ها اسکن نمود.
توسعه دهندگان اصلی وردپرس
مت مولنوگ و مایک لیتل بنیانگذاران اصلی وردپرس هستند. همچنین وردپرس توسط گروهی از داوطلبان به نام WP testers در هر ورژن تست می شود. این گروه اولین دسترسی را به ورژن جدید انتشار نیافته دارند و تمامی خطاها را بررسی و ثبت می کنند.
هرچند وردپرس توسط گروه ها و انجمنهای مختلفی توسعه داده می شود اما شرکت Automattic که بنیانگذار آن نیز مت مولنوگ است با وردپذس قویا در ارتباط است. از سال 2010 Automattic وردپرس را به برند WordPress Foundation انتقال داد که یک نوع Umbrella Organization است. این سازمان نیز از WordPress.org که حاوی نرم افزار، تم ها و پلاگین ها است و همچنین bbPress و BuddyPress پشتیبانی می کند.
کمپ ها و کنفرانس های وردپرس
معمولا کمپ های وردپرس بصورت غیر رسمی و محلی هستند و هر موضوعی درباره وردپرس را پوشش می دهند. اولین WordCamp در سال 2006 در سانفرانسیکو برگزار شد که بیش از 500 نفر در آن شرکت کردند. از پس به بعد بیش از 507 کمپ در بیش از 207 شهر و 48 کشور در سرتاسر جهان برگزار شده است.
پشتیبان وردپرس
پشتیبان اصلی وردپرس WordPress.org می باشد. این سایت میزبانان وب سایت hosts)) و همچنین WordPress Codex، راهنمای آنلاین وردپرس، مستندات، فروم های وردپرس، انجمن های وردپرس را پشتیبانی می کند.