اتصال API در وردپرس: نمونه پروژه کاربردی (مثلاً اتصال سایت به CRM یا پنل پیامک)
مقدمه
آیا تا حالا خواستی سایت وردپرست به سیستم خارجی مثل CRM، پنل پیامک یا سرویس دیگر وصل کنی ولی نمیدونستی از کجا شروع کنی؟
وردپرس با استفاده از API و شورتکدها این کار را خیلی ساده میکند.
در این مقاله، یاد میگیری:
- API چیست و چگونه کار میکند
- اتصال وردپرس به سرویسهای خارجی
- نمونه عملی اتصال سایت به CRM یا پنل پیامک
- کدهای آماده و نکات امنیتی
- چکلیست عملی برای توسعهدهندهها
 اتصال API در وردپرس: نمونه پروژه کاربردی (مثلاً اتصال سایت به CRM یا پنل پیامک)مقدمهآیا تا حالا خواستی سایت وردپرست به سیستم خارجی مثل CRM، پنل پیامک یا سرویس دیگر وصل کنی ولی نمیدونستی از کجا شروع کنی؟ 
 وردپرس با استفاده از API و شورتکدها این کار را خیلی ساده میکند.در این مقاله، یاد میگیری: - API چیست و چگونه کار میکند
- اتصال وردپرس به سرویسهای خارجی
- نمونه عملی اتصال سایت به CRM یا پنل پیامک
- کدهای آماده و نکات امنیتی
- چکلیست عملی برای توسعهدهندهه
 اتصال API در وردپرس: نمونه پروژه کاربردی (مثلاً اتصال سایت به CRM یا پنل پیامک)مقدمهآیا تا حالا خواستی سایت وردپرست به سیستم خارجی مثل CRM، پنل پیامک یا سرویس دیگر وصل کنی ولی نمیدونستی از کجا شروع کنی؟ 
 وردپرس با استفاده از API و شورتکدها این کار را خیلی ساده میکند.در این مقاله، یاد میگیری: - API چیست و چگونه کار میکند
- اتصال وردپرس به سرویسهای خارجی
- نمونه عملی اتصال سایت به CRM یا پنل پیامک
- کدهای آماده و نکات امنیتی
- چکلیست عملی برای توسعهدهندهها
 
 
بخش ۱: API چیست؟
۱. تعریف ساده
API (Application Programming Interface) یک درگاه ارتباطی بین دو سیستم یا نرمافزار است.
مثال: سایت وردپرس → CRM → دریافت و ارسال اطلاعات مشتریان
۲. انواع API
| نوع API | توضیح | 
|---|---|
| REST API | محبوبترین، مبتنی بر HTTP و JSON | 
| SOAP API | استاندارد قدیمیتر، مبتنی بر XML | 
| GraphQL | انعطافپذیر، مناسب دریافت دادههای خاص | 
برای وردپرس، REST API رایجترین و سادهترین روش است.
بخش ۲: آمادهسازی وردپرس برای اتصال API
- فعالسازی REST API در وردپرس (بهطور پیشفرض فعال است)
- نصب افزونههای کمکی در صورت نیاز مثل:
- WP HTTP API
- Advanced Custom Fields (ACF) برای دادههای سفارشی
 
بخش ۳: نمونه عملی اتصال وردپرس به CRM
فرض کن میخوای اطلاعات فرم ثبت نام را به CRM ارسال کنی:
۱. ایجاد فرم ثبت نام در وردپرس
function my_form_shortcode() {
    $html = '<form method="POST">';
    $html .= '<input type="text" name="name" placeholder="نام">';
    $html .= '<input type="email" name="email" placeholder="ایمیل">';
    $html .= '<button type="submit" name="submit_form">ارسال</button>';
    $html .= '</form>';
    return $html;
}
add_shortcode('my_form', 'my_form_shortcode');
۲. ارسال داده به CRM
function send_to_crm() {
    if(isset($_POST['submit_form'])) {
        $name = sanitize_text_field($_POST['name']);
        $email = sanitize_email($_POST['email']);
        
        $api_url = 'https://crm.example.com/api/add_contact';
        $api_key = 'YOUR_CRM_API_KEY';
        
        $response = wp_remote_post($api_url, array(
            'body' => json_encode(array(
                'name' => $name,
                'email' => $email
            )),
            'headers' => array(
                'Content-Type' => 'application/json',
                'Authorization' => 'Bearer ' . $api_key
            )
        ));
        
        if(is_wp_error($response)) {
            echo 'خطا در اتصال به CRM';
        } else {
            echo 'اطلاعات با موفقیت ارسال شد!';
        }
    }
}
add_action('wp', 'send_to_crm');
✅ با این کد، فرم وردپرس به CRM متصل میشود و دادهها را منتقل میکند.
بخش ۴: اتصال به پنل پیامک
۱. ایجاد فرم ارسال پیامک
function sms_form_shortcode() {
    return '<form method="POST">
        <input type="text" name="phone" placeholder="شماره تلفن">
        <input type="text" name="message" placeholder="متن پیام">
        <button type="submit" name="send_sms">ارسال پیامک</button>
    </form>';
}
add_shortcode('sms_form', 'sms_form_shortcode');
۲. ارسال پیامک از طریق API
function send_sms() {
    if(isset($_POST['send_sms'])) {
        $phone = sanitize_text_field($_POST['phone']);
        $message = sanitize_text_field($_POST['message']);
        
        $api_url = 'https://sms.example.com/api/send';
        $api_key = 'YOUR_SMS_API_KEY';
        
        $response = wp_remote_post($api_url, array(
            'body' => json_encode(array(
                'phone' => $phone,
                'message' => $message
            )),
            'headers' => array(
                'Content-Type' => 'application/json',
                'Authorization' => 'Bearer ' . $api_key
            )
        ));
        
        if(is_wp_error($response)) {
            echo 'ارسال پیامک ناموفق بود';
        } else {
            echo 'پیامک با موفقیت ارسال شد!';
        }
    }
}
add_action('wp', 'send_sms');
این روش، اتصال وردپرس به پنل پیامک را ساده و عملی میکند.
بخش ۵: نکات امنیتی و حرفهای
- sanitize_text_field و sanitize_email برای جلوگیری از ورود داده مخرب
- Authorization Header برای اتصال امن API
- Limit Rate: جلوگیری از ارسال بیش از حد درخواستها
- استفاده از try/catch و بررسی خطاهای wp_remote_post
بخش ۶: چکلیست اتصال API
| مرحله | وضعیت | 
|---|---|
| فرم وردپرس ساخته شود | ✅ | 
| دادهها sanitization شود | ✅ | 
| اتصال به API تست شود | ✅ | 
| خطاها مدیریت شوند | ✅ | 
| امنیت و Authorization اعمال شود | ✅ | 
| نسخه کوتاه و شبکههای اجتماعی آماده شود | ✅ | 
بخش ۷: جمعبندی
اتصال وردپرس به سیستمهای خارجی با REST API راحت و قابل توسعه است.
با این روش میتوان:
- اطلاعات مشتریان را به CRM منتقل کرد
- پیامک ارسال کرد
- هر سیستم دیگری که API دارد را متصل کرد
نکته طلایی: همیشه دادهها را امن نگه دارید و درخواستها را مدیریت کنید تا عملکرد سایت و امنیت آن تضمین شود.
 
								 
															 
								 
								 
								 
								 
								 
								