یکی از خطاهای رایجی که در هنگام اجرای وردپرس ممکن است با آن مواجه شوید، Syntax Error یا همان خطای نحوی در کد نویسی است. این خطا معمولاً به دلیل اشتباه در نوشتار کدهای PHP رخ می دهد و تا زمانی که رفع نشود، مانع از اجرای صحیح سایت خواهد شد. در ادامه همراه تیم متخصص الماس هاست باشید تا خطای Syntax Error در وردپرس و نحوه رفع آن را بررسی کنند.
چرا این خطا رخ می دهد؟
زمانی که کد PHP به درستی نوشته نشده باشد یا کاراکتری جا بیفتد، مفسر زبان PHP نمی تواند ادامه اسکریپت را تجزیه کند و پیامی مشابه "Unexpected" را نمایش می دهد. به عنوان مثال، اگر از دستور شرطی if استفاده کنید اما پرانتزهای آن را به شکل ناقص یا اشتباه بنویسید، با پیغام خطای نحوی مواجه خواهید شد. نمونههایی از نگارش نادرست if:
if]
if)
تشخیص محل دقیق خطا
در پیام خطا معمولاً سه اطلاعات مهم وجود دارد:
- نوع خطا: مانند "unexpected" که نشان از وجود کاراکتر اشتباهی دارد.
- مسیر فایل خطادار: مانند /wp-content/themes/twentyseventeen/index.php
- شماره خط: مثلاً خط 21 که نشان میدهد دقیقاً در کدام بخش از فایل خطا رخ داده است.
چگونه خطا را پیدا و موقتاً رفع کنیم؟
فرض کنیم که طبق پیام خطا، فایل index.php در قالب twentyseventeen در خط ۲۱ دچار مشکل شده است. برای دسترسی به این فایل، کافی است وارد پنل هاست خود شوید و از طریق File Manager مسیر زیر را دنبال کنید:
در اینجا میتوانید فایل index.php را باز کرده و بررسی کنید که آیا تمام دستورات به درستی نوشته شدهاند یا خیر. اگر به هر دلیلی نمیتوانید خطا را خودتان اصلاح کنید، میتوانید به صورت موقت پوشه قالب را تغییر نام دهید تا وردپرس به صورت خودکار قالب پیشفرض را بارگذاری کند و سایت مجدداً در دسترس قرار گیرد.
اگر خطا از افزونه باشد چه کنیم؟
در برخی موارد خطای Syntax ممکن است در یکی از افزونه ها باشد. به عنوان مثال، اگر خطا در مسیر زیر گزارش شده باشد:
در این صورت کافیست وارد مسیر افزونه شوید و پوشه آن را مثلاً از akismet به akismet-disable تغییر نام دهید. با این کار افزونه غیرفعال شده و سایت از حالت خطا خارج خواهد شد.
در پایان
Syntax Error یک خطای متداول اما قابل مدیریت در وردپرس است. کافی است پیام خطا را به دقت بخوانید، مسیر و فایل خطادار را پیدا کنید و یا به صورت موقت با تغییر نام پوشه قالب یا افزونه، سایت را بازیابی کنید. اگر قادر به اصلاح کد نیستید، پیشنهاد میشود از یک توسعه دهنده متخصص کمک بگیرید.