🎨 فصل ۴: قالبها و افزونهها
قالب ظاهر سایت رو کنترل میکنه، افزونه قابلیتها رو. این دو قلب اکوسیستم وردپرسن. توی این فصل یاد میگیریم چطور انتخاب کنیم، نصب کنیم و سفارشیسازی کنیم.
قالب ظاهر سایت رو کنترل میکنه، افزونه قابلیتها رو. این دو قلب اکوسیستم وردپرسن. توی این فصل یاد میگیریم چطور انتخاب کنیم، نصب کنیم و سفارشیسازی کنیم.
🎭 قالبها (Themes)
قالب فقط ظاهر نیست – شامل ساختار، عملکرد و استایل سایته. وردپرس بدون قالب اصلاً اجرا نمیشه.
انواع قالب
- قالب رایگان: از مخزن WordPress.org
- قالب پولی (Premium): از سایتهایی مثل ThemeForest
- قالب اختصاصی: سفارشسازی شده برای پروژه
- قالب بلاک (Block Theme): نسل جدید با ویرایشگر سایت کامل
چطور یه قالب خوب انتخاب کنیم؟
- سرعت بارگذاری بالا (تست با PageSpeed Insights)
- سازگاری کامل با ووکامرس (اگه فروشگاه میخوای)
- پشتیبانی از فارسی و RTL
- بهروزرسانی منظم (آخرین آپدیت کمتر از ۶ ماه قبل)
- تعداد بالای نصب و امتیاز خوب
- سازگاری با گوتنبرگ
- پشتیبانی از Elementor یا WPBakery (اختیاری)
- کد تمیز و SEO-friendly
📥 نصب و فعالسازی قالب
روش ۱: از مخزن وردپرس
- برو به نمایش → پوستهها → افزودن پوسته جدید
- قالب مورد نظر رو جستجو کن (مثلاً «Astra»)
- روی نصب و سپس فعالسازی کلیک کن
روش ۲: آپلود فایل ZIP
- قالب رو از فروشگاهها بخر و دانلود کن
- برو به نمایش → پوستهها → افزودن پوسته جدید
- دکمه بارگذاری پوسته رو بزن
- فایل ZIP رو انتخاب کن و نصب کن
- فعالسازی
روش ۳: نصب دستی با FTP
- فایل ZIP رو اکسترکت کن
- پوشه قالب رو با FTP آپلود کن به
wp-content/themes/ - توی پنل به نمایش → پوستهها برو و فعالش کن
همیشه قبل از تغییر قالب، یه بکآپ کامل بگیر. ممکنه ابزارکها، منوها و تنظیمات از بین برن.
🎨 سفارشیسازی قالب
۱. سفارشیساز (Customizer)
ابزار قدیمی ولی هنوز پرکاربرد برای ویرایش زنده ظاهر:
- برو به نمایش → سفارشیسازی
- تغییرات رو لحظهای میبینی
- تا زمانی که انتشار نکنی ذخیره نمیشه
۲. ویرایشگر سایت کامل (FSE)
توی قالبهای بلاک، میتونی همه چیز رو با گوتنبرگ ویرایش کنی – حتی هدر و فوتر:
- برو به نمایش → ویرایشگر
- قالبها (Templates) رو ویرایش کن
- قطعات قالب (Template Parts) رو بساز
۳. CSS اختصاصی
برای تغییرات کوچک، از CSS اضافی توی Customizer استفاده کن:
/* تغییر رنگ منو */
.main-navigation a {
color: #2271b1;
}
/* بزرگتر کردن دکمهها */
.button {
padding: 12px 24px;
font-size: 16px;
}
/* مخفی کردن یه عنصر */
.author-bio {
display: none;
}
👶 قالب فرزند (Child Theme)
مهمترین مفهوم در سفارشیسازی! اگه میخوای کد قالب رو تغییر بدی، هرگز فایلهای اصلی رو دستکاری نکن – چون با آپدیت قالب، تغییراتت از بین میره.
راه حل: قالب فرزند
یه قالب جدید که از قالب اصلی (والد) ارث میبره و فقط تغییرات اختصاصیت رو نگه میداره.
ساخت قالب فرزند – مرحله به مرحله
- یه پوشه جدید در
wp-content/themes/بساز – مثلاًastra-child - یه فایل
style.cssتوش بساز:
/*
Theme Name: قالب فرزند آسترا
Theme URI: https://icsd.ir
Description: قالب فرزند برای سفارشیسازی Astra
Author: محمدعلی ناظری
Author URI: https://icsd.ir
Template: astra
Version: 1.0.0
Text Domain: astra-child
*/
/* اینجا CSS اختصاصی بنویس */
۳. یه فایل functions.php هم بساز:
<?php
/**
* Child Theme Functions
*/
// لود کردن استایل قالب والد و فرزند
function astra_child_enqueue_styles() {
wp_enqueue_style('parent-style',
get_template_directory_uri() . '/style.css'
);
wp_enqueue_style('child-style',
get_stylesheet_directory_uri() . '/style.css',
array('parent-style'),
wp_get_theme()->get('Version')
);
}
add_action('wp_enqueue_scripts', 'astra_child_enqueue_styles');
// اینجا توابع اختصاصی بنویس
۴. (اختیاری) یه فایل screenshot.png با اندازه ۱۲۰۰x۹۰۰ بذار
۵. توی پنل، قالب فرزند رو فعال کن
- تغییراتت با آپدیت قالب از بین نمیره
- میتونی هر فایل قالب والد رو override کنی
- کد تمیز و قابل نگهداری
Override کردن فایل قالب والد
اگه میخوای فایل header.php رو تغییر بدی:
- اون فایل رو از قالب والد به قالب فرزند کپی کن
- توی قالب فرزند ویرایشش کن
- وردپرس بهطور خودکار از نسخه فرزند استفاده میکنه
🔌 افزونهها (Plugins)
افزونهها قابلیتهای جدید به وردپرس اضافه میکنن. از یه فرم تماس ساده تا یه فروشگاه کامل، هر چیزی رو میشه با افزونه ساخت.
نصب افزونه
- برو به افزونهها → افزودن افزونه
- جستجو کن یا فایل ZIP آپلود کن
- نصب و فعالسازی
هرگز افزونههای پولی رو از سایتهای غیررسمی دانلود نکن! این افزونهها معمولاً حاوی بدافزار، در پشتی (Backdoor) و ابزار سرقت اطلاعات هستن. هزینه افزونه واقعی همیشه از خسارت هک کمتره.
⭐ افزونههای ضروری
سئو
- Yoast SEO یا Rank Math – بهینهسازی موتور جستجو
- WP Sitemap Page – نقشه سایت برای کاربر
- Redirection – مدیریت ریدایرکت ۳۰۱
امنیت
- Wordfence Security – فایروال + اسکن بدافزار
- iThemes Security – بسته امنیتی کامل
- WPS Hide Login – مخفی کردن /wp-admin
- Limit Login Attempts – محدودیت تلاش ورود
عملکرد و سرعت
- WP Rocket (پولی) یا W3 Total Cache – کش
- Smush یا ShortPixel – فشردهسازی تصویر
- Autoptimize – بهینهسازی CSS/JS
- Asset CleanUp – حذف اسکریپتهای اضافه
پشتیبانگیری
- UpdraftPlus – بکآپ خودکار به Cloud
- BackWPup – رایگان و قدرتمند
- All-in-One WP Migration – انتقال سایت
فرم
- Contact Form 7 – رایگان و سبک
- WPForms – drag-drop آسان
- Gravity Forms (پولی) – حرفهای
فروشگاه
- WooCommerce – استاندارد فروشگاهسازی
- Easy Digital Downloads – برای محصولات دیجیتال
چندزبانه
- Polylang – رایگان
- WPML – پولی
- TranslatePress – ترجمه ویژوال
صفحهساز
- Elementor – محبوبترین
- WPBakery – قدیمی ولی پرکاربرد
- Beaver Builder – حرفهای
- Bricks – مدرن و سریع
تقویم جلالی
- WP-Parsidate – تبدیل تاریخ به جلالی
- WP Jalali – گزینه دیگه
💡 نکات و ترفندها
۱. تعداد افزونهها رو کم نگه دار
هر افزونه به سرعت سایت اضافه میکنه. قانون: هر افزونه باید ضروری باشه. اگه قابلیتی رو با چند خط کد در functions.php میتونی اضافه کنی، افزونه نصب نکن.
۲. غیرفعالسازی بهروزرسانی خودکار افزونه
بهروزرسانی خودکار خوبه ولی گاهی باعث ناسازگاری میشه. برای کنترل بهتر:
// خاموش کردن آپدیت خودکار
define('AUTOMATIC_UPDATER_DISABLED', true);
// یا فقط برای core
define('WP_AUTO_UPDATE_CORE', false);
۳. مخفی کردن نسخه وردپرس و افزونهها
برای امنیت بیشتر:
// حذف نسخه وردپرس از منبع HTML
remove_action('wp_head', 'wp_generator');
// حذف نسخه از RSS
add_filter('the_generator', '__return_empty_string');
// حذف نسخه از URL استایل و اسکریپتها
function remove_version_from_assets($src) {
if (strpos($src, 'ver=')) {
$src = remove_query_arg('ver', $src);
}
return $src;
}
add_filter('style_loader_src', 'remove_version_from_assets', 9999);
add_filter('script_loader_src', 'remove_version_from_assets', 9999);
📝 خلاصه فصل
- قالب ظاهر، افزونه قابلیت میسازه
- برای تغییر کد قالب، حتماً قالب فرزند بساز
- افزونههای ضروری: سئو، امنیت، کش، بکآپ، فرم
- هر افزونه به سرعت سایت اضافه میکنه
- هرگز افزونه نَلد دانلود نکن – خطر امنیتی جدی