اگر شما یکی از کاربران وردپرس هستید حتما باخطای syntax errorمواجه شده اید. این خطا یک خطای کاملا طبیعی در وردپرس است زیرا ممکن است شما ازقوانین صحیح phpپیروی نکرده باشید. در صورتی که Error debug مربوط به وردپرس خود را در حالت Trun on قرارداده باشیدمی توانید خطای صحیح را مشاهده کنید.
در این مقاله ما به شما نشان خواهیم داد که چگونه خطاهای نحوی وردپرس را با دستور العمل های ساده ای که برای مبتدیان طراحی شده است، رفع کنید.
قبل از شروع این آموزش شما نیاز دارید به حساب هاست خود دسترسی داشته باشد.
syntax errorچیست؟
در برنامه نویسی کامپیوتر syntax error ناشی از عدم اجرای قوانین زبان های برنامه نویسی خاص است. تصور کنید syntax error مشابه قرارگرفتن اسم و فعل ها به صورت اشتباه در یک جمله انگلیسی هستند. درست همان گونه که یک مترجم زبان انگلیسی قادر به درک جمله اشتباه نخواهد بود، کامپایلریا مترجم زبان برنامه نویسی هم قادر به پردازش بلوک نادرست از کد های نوشته شده نخواهد بود. در صورتی که شما در یک خط کد خود فراموش کنید که یک سیمیکالن را قرار دهید یا یک دستور را اشتباه تایپ کنید معمولا با syntax error مواجه خواهید شد.
در مورد خطاهای نحوی که در وردپرس اتفاق می افتد کاربران معمولا یک اشتباه نحوی در اسکریپت های php خود انجام داده اند. Syntax error به دسته های گسترده از خطاها، تجزیه می شود زیرا آنها می تواند در خط کد که برای برنامه نوشته می شوند قرار داشته باشند.
رفع syntax Error در وردپرس:
خطای نحوی در وردپرس را به راحتی می توان با دو مرحله بر طرف کرد:
بیاید جزئیات این دو مرحله را با هم ببینیم.
- خط کدهایی که خطا را مشخص می کنند
- وارد سرور شدن و تغییر این خط کدها
مرحله اول – تعیین فایل خراب :
اولین گام در اصلاح یک syntax error ابتدا تشخیص منبع مشکل است. به طور خاص شما باید بدانید کدام پوشه وفایل مشکل ایجاد کرده است و کدام یک از بلوک های کد داخل فایل مسئول ایجاد این خطا شده است. یکی از دلایل به وجود آمدن این خطا می تواند از طریق به روز رسانی تم یا پلاگین های نصب شده روی وردپرس شما باشد یا حتی با نصب یک پلاگین جدید ممکن است شما یک خطا نحوی دریافت کنید. خوب، اگر پس از نصب پلاگین خطا را دریافت کردید شما می دانید مشکل از کدام پلاگین خواهد بود.
خوشبختانه، حتی اگر شما هیچ نظری درباره منبع خطا نداشته باشید، هنوز می توانید به راحتی آن را شناسایی کنید. هنگامی که شما سایت خود را با هر مرورگری باز کنید شما پیغام خطایی را مشاهده خواهید کرد.
این خطا به صورت parse error:syntax error شروع می شود و به دنبال آن اطلاعاتی درباره مسیر کامل پرونده مربوط به خطا و همچنین خط کدی که نادرست کد شده است، آورده می شود. این خطا به شما اطلاعات کاملی درباره خطا ارائه می کند که به راحتی می توانید به مسیر خطا سترسی داشته باشید.
بیاید نگاهی به پیام خطایی زیر در وردپرس بیندازیم.
Pars error: syntax error, unexpected end of file in /home/cpaneluser/public-html/wp2/wp-content/thems/twentyserverteen/single.php on line 43
در این خطا به صورت کامل مسیر فایلی که باعث ایجاد خطا شده است نشان داده شده است و دقیقا بیان شده که خط 43 فایل single.php دارای خطا می باشد.
مرحله دوم :حل مشکل با استفاده از FTP Client:
اکنون شما می دانید مسیر خطا کجا است با توجه به اینکه با وقوع این خطا شما دیگر به داشبورد وردپرس خود دسترسی ندارید، میتوانید با استفاده از اکانت ftp خود به فایل مورد نظر دسترسی داشته باشید برای این منظور ما از filezilla استفاده می کنیم.
حال رفع خرابی فایل اسان است، به سادگی با file zila به کنترل پنل هاست خود متصل شوید و به مسیری که در خطا نشان داده شده است بروید. سپس روی فایل مورد نظر راست کلیک کنید و گزینه view/edit را انتخاب کنید.
حال فایل را در ویرایشگر باز کنید.
شما در این ویرایشگر می توانید کد معیوب را اصلاح یا حذف کنید. تا مطمئن شوید خطای شما برطرف شده و سایت به درستی کار می کند. در بعضی مواقع با حذف کد معیوب، خطا به راحتی برطرف خواهد شد ولی در بعضی مواقع خطی که داری خطا است ممکن است مسئول محاسبه یک متغییر باشد که در خطوط بعدی از آن استفاده می شود که با حذف آن، خطوط بعدی نیز با مشکل مواجه خواهند شد. لذا در این مورد گزینه حذف رد می شود و باید خطا ریشه یابی شود. برای نمونه در مثال عنوان شده ما در خط 43 ما کد زیر را داریم.
<()php get_footer?>
تابع get_footer را نمی توانیم از فایل خود حذف کنیم زیرا این بخش کوچک می تواند برای وب سایت ما بسیار مهم باشد با دقت در کد خواهید دید که در آخر این کد یک سیمیکالن وجود ندارد و باعث ایجاد syntax error شده است. در این مثال شما به راحتی با اضافه کردن یک سمیکالن به آخر خط می توانید مشکل را برطرف کنید. اگر شما یک مبتدی در زبان php هستید می توانید از سایت phpcodechecker.com استفاده کنید. پس از حل مشکل باید فایل را ذخیره و مجددا در هاست خود آپلود کنید تا مشکل برطرف شود.