خطای syntax در وردپرس یک مشکل رایج است که ممکن است هنگام به روز رسانی قالب، فایل های افزونه های موجود و یا ایجاد تغییرات خاصی در این فایل ها مشکل ایجاد کند و معمولاً با نوشتن کدهای PHP نادرست ایجاد می شود. این یکی از دلایلی است که به شما توصیه می شود قبل از انجام هرگونه تغییر در قالب و یا فایل های افزونه از سایت خود نسخه پشتیبان و یا بک آپ تهیه کنید.
خطای syntax زمانی رخ می دهد که در کد شما اشتباهی وجود داشته باشد. در نتیجه، کامپایلر نمی تواند فایل را پردازش و یا (تجزیه) کرده و وب سایت شما را نمایش دهد. در وردپرس، خطاهای syntax معمولاً به دلیل وارد کردن کد های نادرست در اسکریپت های PHP ایجاد می شوند. برخی از اشتباهات رایج در وارد کردن کد ها می توانند ساختار نادرست کدگذاری، علائم نگارشی، متغیرهای نامعتبر و نام تابعی که اشتباه وارد شده است، باشند.
در صورتی که به این خطا در سایت خود برخورد کرده اید، نگران نباشید. خطای syntax در وردپرس بسیار رایج است و می توان آن را به راحتی برطرف کرد. ما در این مقاله به شما خواهیم گفت که این خطا دقیقاً به چه علت به وجود می آید و چگونه می توان آن را برطرف کرد.
به خاطر داشته باشید که ممکن است برای شناسایی محل خطا مشکل داشته باشید و خطای syntax در قسمت مدیریت سایت شما قفل شده باشد. به همین دلیل ما به شما نحوه دسترسی به فایل های سایت خود از طریق سرور FTP را نشان می دهیم تا بتوانید این مشکل را بدون نیاز به ورود از طریق wp-admin برطرف کنید.
بررسی پیام خطا و شناسایی محل وقوع آن
خطای نحوی وقتی در سایت شما ظاهر می شود، معمولاً به این شکل است:
این پیام به شما می گوید که خطای سینتکس و یا syntax در سایت شما وجود دارد. syntax همان “ترتیب کلمات و عبارات برای ایجاد جملات در یک زبان است.” در برنامه نویسی، این بدان معناست که همه چیز باید به ترتیب خاصی در کد ها قرار بگیرد. بنابراین هنگامی که این خطا رخ می دهد، به این معنی است که یک مورد در سایت به ترتیبی که باید اتفاق می افتاد، رخ نداده است.
بخش دوم این پیام دقیقاً به شما می گوید مشکل چیست. End in $ به این معنی است که از تگ ها در کد خود به درستی استفاده نکرده اید. به عنوان مثال شاید فراموش کرده اید که پرانتز اضافه کنید یا براکت را نبسته اید.
قسمت بعدی خطا دقیقاً به شما می گوید که مشکل در کجا قرار دارد. اگر هرگز به فایل های سایت خود خارج از ویرایشگر در قسمت مدیریت وردپرس دسترسی نداشته اید، ممکن است در این مرحله مشکل به وجود بیاید. وقتی شما فایل ها را در ویرایشگر وردپرس یا ویرایشگرهای متنی عمومی ادیت می کنید، پیدا کردن محل دقیق دشوار است.
قسمت آخر پیام به شما می گوید که کدام فایل حاوی خطا است. در این مثال function.php فایلی است که در آن کد مخرب وجود دارد. در ادامه شما می توانید ببینید که این فایل دقیقاً در کجا قرار دارد. در مثال بالا فایل functions.php در پوشه تم Zerif Lite قرار دارد.
چرا خطای syntax اتفاق می افتد؟
دلیل وقوع این خطا می تواند بسته به شرایط شما متفاوت باشد، اما برخی از دلایل رایج آن عبارتند از:
قرار دادن کد مخرب و یا ناقص
هنگامی که کد را به اشتباه در وبسایت خود قرار می دهید، ممکن است خطای syntax رخ دهد. شاید هنگام کپی کردن کد، قسمتی را اشتباه وارد کرده باشید و یا شاید یک برچسب بسته اضافی در انتهای اسکریپت وجود داشته باشد. به عنوان مثال این یک تگ باز PHP است: <؟ php ، و این یک تگ بسته است:؟>. قرار دادن این موارد به صورت اشتباه می تواند باعث بروز این خطا شود. هنگامی که یک قطعه کد PHP را کپی و جایگذاری می کنید، اغلب شامل برچسب باز است و باعث خطای syntax می شود.
ویرایش قالب
همچنین هنگام ویرایش قالب خود در وردپرس ممکن است خطای syntax دریافت کنید. اگر این اتفاق بیفتد، به طور کلی می دانید مشکل چیست، یا حداقل در کجا رخ می دهد. شما می توانید با انجام چند تغییر در فایل wp-config.php خطا را پیدا کرده و آن را برطرف کنید.
به روزرسانی افزونه
دلیل دیگری که ممکن است این پیام را مشاهده کنید، بروزرسانی یا نصب افزونه است. ممکن است برنامه افزودنی با نسخه وردپرس شما سازگار نباشد، یا ممکن است مشکلات دیگری نیز وجود داشته باشد. اگر هنگام بروز خطا در حال بروزرسانی یا نصب افزونه بودید، به احتمال زیاد منبع این مشکل افزونه است.
چرا رفع خطای syntax وردپرس اهمیت دارد؟
خطای syntax نشان می دهد که چیزی در کد سایت شما درست نیست. این مشکل می تواند وب سایت شما را خراب کند و از سایتتان تنها یک صفحه خالی یا پیام خطا برای شما باقی بگذارد. اگر وب سایت شما غیرقابل دسترسی باشد، بدیهی است که تجربه کاربری (UX) را مختل می کند.
علاوه بر آسیب رسیدن به ترافیک و نرخ تبدیل، وجود داشتن تنها یک صفحه خالی که سایت شما در آن قرار دارد، می تواند به رتبه بندی شما در نتایج موتورهای جستجو و یا سئو سایت شما نیز آسیب برساند .پیام های خطای syntax وردپرس می تواند نگران کننده باشد، به خصوص اگر با کدنویسی و برنامه نویسی وب سایت آشنا نیستید. با این حال، همانطور که در ادامه خواهید دید، راه حل های مختلف برای برطرف کردن این خطا وجود دارد که به شما معرفی خواهیم کرد.
نحوه ی رفع خطای syntax
برای رفع این خطا در حالت کلی دو مرحله وجود دارد: شناسایی محل خطا و رفع آن. برای شناسایی محل خطا همانطور که در بخش قبل به آن اشاره شد، می توانید موارد زیر را انجام دهید:
- به پیام خطا مراجعه کنید. پیام نمایش داده شده برای خطا حاوی اطلاعاتی مانند محل اتفاق افتادن آن و … است.
- کد اشکال زدایی و یا دیباگ را قرار دهید. برای فعال کردن debug می توانید قطعه کد زیر را به فایل wp-config.php خود اضافه کنید.
define (‘WP_DEBUG’ ، true) ؛
هنگامی که فایل را ذخیره می کنید و وب سایت خود را در مرورگر خود باز می کنید، باید پیامی را مشاهده کنید که محل خطا را نشان می دهد، از جمله فایل، نام و شماره خط در کدها. پس از رفع خطا، حتماً اشکال زدایی را غیرفعال کنید، زیرا روشن نگه داشتن این ویژگی برای وب سایت ها توصیه نمی شود.
استفاده از ویرایشگر کد
ساده ترین راه برای یافتن خطا، استفاده از ویرایشگر متن پیش فرض است. این ویرایشگر ها برای برنامه نویسان است و انواع مختلفی از آن ها وجود دارد. یکی از آن ها را به دلخواه نصب و در سیستم خود باز کنید. این برنامه ها هر خط فایل شما را شماره گذاری می کنند و پیدا کردن خط حاوی خطا را برای شما ساده می کند. پس از یافتن و اصلاح خطا، فایل را در ویرایشگر متنی که استفاده می کنید، ذخیره کنید.
تا به اینجای کار شما محل خطا را پیدا کرده اید. زمان آن رسیده است که آن را برطرف کنید. برای انجام این کار، می توانید از دستورالعمل های زیر استفاده کنید:
-
اصلاح فایل حاوی خطا از طریق FTP
وقتی خطای syntax رخ می دهد، می توانید آن را با حذف یا تصحیح کد حاوی خطا برطرف کنید. در هر صورت، به فایلی که مشکل در آن رخ می دهد مراجعه کنید. اگر در داشبورد سرپرست وردپرس خود قرار دارید، می توانید با استفاده از سرویس گیرنده پروتکل انتقال فایل (FTP) به این دسترسی داشته باشید .
دسترسی به فایل های سایت خود از طریق FTP
وقتی نمی توانید فایل های خود را از طریق ویرایشگر وردپرس ویرایش کنید، بهترین گزینه این است که از یک سرویس گیرنده FTP استفاده کنید. یک سرویس گیرنده FTP به شما امکان می دهد از طریق یک سرور به فایل های سایت خود دسترسی پیدا کنید. این کار شبیه نحوه دسترسی شما به فایل های سایت شما از طریق میزبان در cPanel است.
سپس FileZilla را در سیستم خود نصب کنید. مطمئن شوید که نسخه سازگار با سیستم عامل خود را انتخاب کرده اید. برنامه را روی سیستم خود نصب کرده و آن را باز کنید. روی File کلیک کنید و Site Manager را انتخاب کنید. نام سایت خود را برای متصل شدن وارد کرده و موارد زیر را کامل کنید:
- میزبان – دامنه شماcom
- پورت – خالی بگذارید.
- پروتکل – FTP – پروتکل انتقال فایل
- رمزگذاری – فقط از FTP ساده استفاده کنید (ناامن)
- نوع ورود – معمولی
سپس از شما یک رمز و نام کاربری می خواهد. بهتر است نام کاربری و گذرواژه ای که برای دسترسی به سایت خود از طریق هاست استفاده می کنید را در FileZilla وارد کنید. به عنوان مثال اگر هاست شما از cPanel استفاده می کند، نام کاربری و گذرواژه ای که برای ورود به cPanel استفاده می کنید را وارد کنید. برگه Transfer Settings را باز کنید. تعداد محدود اتصالات همزمان را بررسی کرده و 8 را به عنوان حداکثر تعداد اتصالات وارد کنید. برای اتصال به فایل های سایت خود از طریق سرور FTP روی Connect کلیک کنید.
پس از انجام تمامی این موارد، شما در فهرست راهنمای سایت وردپرس خود، پوشه های wp-admin ، wp-content و wp-include و لیستی از فایل های دیگر را مشاهده خواهید کرد.
اگر صفحه شما شبیه به مثال بالا است، در مکان مناسب هستید! اکنون وقت آن است که این خطا را برطرف کنید. به فایلی که نیاز به ویرایش دارد، بروید. در صورتی که فراموش کرده اید کدام فایل را باید ویرایش کنید، به پیام خطا نگاه کنید. این خطا دقیقاً به شما می گوید که کدام فایل و کدام خط را باید ویرایش کنید. می توانید کدی را که آخرین بار اضافه کرده اید حذف کنید، یا کد را به صورت درست بنویسید. پس از اتمام حذف / ویرایش کد، فایل را ذخیره کرده و مجدداً در سرور خود بارگذاری کنید.
-
رفع خطا از طریق مدیریت فایل
hPanel’s File Manager را باز کرده و به پوشه حاوی فایل بروید. در این حالت، می توانید با رفتن به public_html -> wp -content -> themes -> به فایل موردنظر دسترسی داشته باشید . بر روی فایل دوبار کلیک کنید و خطی را که باعث ایجاد مشکل می شود، پیدا کنید. اگر می خواهید خطی را حذف کنید، مراقب باشید زیرا ممکن است مشکل دیگری ایجاد کند.
-
وردپرس را دوباره فعال کنید.
اگر مشکل شما به طور کلی با وردپرس است، یک نسخه جدید از وردپرس را از WordPress.org بارگیری کنید. مطمئن شوید نسخه ای که دریافت می کنید، همان نسخه ای است که با موارد مختلف سازگار است. اگر مشکل شما با wp-include یا wp-admin است، می توانید نسخه های جدیدی از این فایل ها را در سایت خود قرار دهید. به خاطر داشته باشید که هرگز نسخه جدیدی از wp-content را قرار ندهید، زیرا با این کار محتوا از سایت شما حذف می شود.
-
رفع خطای syntax که توسط به روز رسانی افزونه ایجاد شده است.
اگر هنگام نصب و به روزرسانی افزونه با خطای syntax برخورد کردید، ساده ترین و سریع ترین راه حل غیرفعال کردن افزونه است. از طریق SFTP به وب سایت خود دسترسی پیدا کنید. پس از اتصال، به فهرست wp-content/plugins بروید و پوشه افزونه دارای خطا را پیدا کنید. از آنجا می توانید افزونه را غیرفعال کنید یا فایل حاوی خطا را تصحیح کنید – البته اگر می دانید علت این مشکل چیست. در غیر این صورت، می توانید افزونه را با تغییر نام فایل در فهرست افزونه ها غیرفعال کنید. اگر به آدرس وب سایت خود بروید و مرورگر را بازخوانی کنید، سایت شما باید عادی به نظر برسد.
در صورتی که استفاده از این افزونه اجباری است و باید آن را در سایت خود قرار دهید، به جای غیرفعال کردن آن، خطا را برطرف کنید. برای اصلاح خطای افزونه، فایل و شماره آن را از پیام خطا پیدا کنید. هرگونه کد مخرب و یا نادرست را در آن شناسایی کنید. اگر مطمئن نیستید که چه چیزی باعث خطا شده است، می توانید کد را در یک ویرایشگر کد قرار دهید تا به شما در شناسایی خطا کمک کند.
همیشه می توانید افزونه را برای مدت کوتاه غیرفعال کنید. سپس، بعد از اصلاح خطا، می توانید آن را دوباره فعال کنید. این ممکن است بهترین رویکرد باشد، به خصوص اگر افزونه برای عملکرد وب سایت شما ضروری نباشد.
-
رفع خطای syntax که با فایل قالب ایجاد شده است.
برای رفع خطایی که هنگام ویرایش قالب به وجود آمده است، از طریق SFTP به وب سایت خود دسترسی پیدا کرده و به پوشه wp-content/themes بروید. فایل قالب خود را باز کرده و خطا – معمولاً فایل functions.php – پیدا کنید.
فایل را ویرایش کرده و خطا را تصحیح کنید. اگر علت مشکل را نمی دانید، مانند روش قبلی می توانید از ویرایشگر کد برای شناسایی خطا استفاده کنید. هنگامی که مشکل را برطرف کردید، یک پنجره مرورگر را باز کنید و به URL خود بروید تا مطمئن شوید که سایت شما دوباره فعال شده است.
چگونه از بروز خطا syntax در آینده جلوگیری کنیم؟
استفاده از syntax مناسب می تواند به شما در جلوگیری از خطاها در آینده کمک کند. PHP یک زبان ساده و انعطاف پذیر است. برای اصول اولیه می توانید کمی وقت بگذارید و آن ها را فرا بگیرید. از این طریق هنگامی که در حال قرار دادن کد یا ویرایش فایل های سایت خود هستید، می دانید که چگونه هنگام کار خطاها را تصحیح کنید.
همچنین می توانید ویرایشگر کد را برای بررسی syntax قبل از قرار دادن کد به وب سایت خود، در دسترس نگه دارید. این یک روش هوشمند برای اطمینان از صحیح بودن کد قبل از افزودن آن به فایل های سایت است. یکی دیگر از راه های جلوگیری از این خطا این است که هنگام ایجاد تغییرات در سایت خود، امکان اشکال زدایی و یا دیباگ را فعال کنید تا قبل از جلو رفتن خطاها آن را مشخص کنید. در نهایت پیشنهاد می کنیم افزونه ها و قالب های خود را از منابع معتبر مانند ژاکت دریافت کنید تا دارای کد مخرب نباشند. این نه تنها می تواند از خطاهای syntax جلوگیری کند، بلکه یک اقدام امنیتی برای بهبود وب سایتتان است.
جمع بندی
همانطور که می دانید، تقریباً 40 درصد از همه وب سایت ها از طریق وردپرس ساخته شده اند و همین موضوع آن را به محبوب ترین سیستم مدیریت محتوا (CMS) در جهان تبدیل کرده است. وردپرس یک پلتفرم امن است، اما با این حال خطاها هنوز هم ممکن است رخ دهند.
در این مقاله، خطای syntax و شایع ترین علل آن را توضیح دادیم. سپس گام به گام نحوه ی رفع خطاهای syntax در وردپرس را نشان دادیم. حل این خطا برای عموم افراد معمولاً ساده است، اما بهتر است برای جلوگیری از بروز مشکلات در ابتدا اقداماتی انجام دهید، مانند استفاده از ویرایشگر کد برای بررسی کد قبل از افزودن آن به سایت خود. مدیریت صحیح وب سایت شما یکی از بهترین راه ها برای جلوگیری از مشکلات و حفظ عملکرد صحیح آن است. سعی کنید از ابزار های پشتیبان گیری روزانه خودکار و یا یک تیم پشتیبانی از متخصصان وردپرس را در اختیار داشته باشید تا در هنگام بروز خطا به کسب و کارتان آسیب زیادی وارد نشود.
فعلی
آموزش رفع خطای syntax در وردپرس
نویسنده سینا عباسی
سایر مقالات نویسندهسینا عباسی، مدیر سئو ژاکت، بیش از 7 ساله که بهصورت تخصصی در حوزه سئو فعالیت میکند. وی مدرس و مشاور سئوی کسب و کارهای اینترنتی میباشد. سینا عباسی با تخصص و تجربهای که در حوزه سئو دارد، نگاه شما را به آموزش سئو در دنیای دیجیتال مارکتینگ تغییر میدهد.