WordPress сыни тұстары: әзірлеушінің көзқарасы

WordPress сыни тұстары: әзірлеушінің көзқарасы

Көбірек әзірлеушілер платформаны ұнатпаса да, WordPress сияқты CMS пайдаланады.

Тәжірибелі әзірлеушілер, әсіресе бағдарламалауда өте жақсы әзірлеуші ​​болсаңыз, жиі таңдамалы шешімдерді пайдалануды жөн көреді. Пайдаланушы шешімімен сіз өте жақсы жұмыс істейтін өте талғампаз қолданбаларды жасай аласыз. Дегенмен, әзірлеушілер платформаны қатты ұнатпаса да, WordPress сияқты CMS пайдаланады.

Бұл мақала осы әзірлеушілерге бағытталған және WordPress (WP) бағдарламасымен жұмыс істеу кезінде кездесетін көптеген қиындықтарды қарастырады. Біз бұл қиындықтардың не екенін түсіндіріп, сондай-ақ ұсыныс береміз: әлемдегі ең танымал CMS-тің кейбір маңызды сындарын ескеруге көмектесетін WP құралдар жинағын ұсынатын Plesk көмегі: WordPress.

Неліктен әзірлеушілер WordPress-ті пайдаланады

Қателік жасамаңыз, WordPress өте жақсы себептермен нарықтағы ең танымал CMS болып табылады. Бұл бөлімде біз CMS неліктен өз кодын жаза алатын тәжірибелі әзірлеушілер арасында да соншалықты танымал екенін сипаттаймыз.

Біріншіден, WordPress орнату өте оңай. Сізге тек стандартты LAMP/LEMP ортасы қажет – Linux, Apache/Nginx, PHP және ДҚБЖ ретінде MySQL/MariaDB. Егер сізде болса, WordPress орнатуды бастауға болады.

Теңшеу оңай, өйткені WP CMS қондырмалардың үлкен ауқымымен келеді, оның ішінде сыртқы көрініс пен сезімді теңшеуге арналған тақырыптар мен функционалдылықты қосатын плагиндер. Сондай-ақ, өз тақырыбыңызды құруға болады және тәжірибелі әзірлеушілер де өздерінің плагиндерін жасай алады, бірақ бұл процесс күрделірек.

WordPress-тің танымал болуының ең үлкен себебі, әрине, оның техникалық емес пайдаланушылар үшін қолжетімді болуы. Орнатылған WP бағдарламасы жақсы жұмыс істеуі үшін кодтау тәжірибесін немесе бағдарламалық жасақтаманы түсінуді қажет етпейді, жаңадан бастаған пайдаланушылар веб-сайтты жариялай алады және жұмыстан кейін бірден WordPress данасын орната алады.

WordPress-тегі мәселе неде?

Әлемдегі ең танымал CMS-те көптеген мәселелер қарастырылады. Біз WordPress мәселелері туралы әбігерге салғымыз келмейді, бірақ бұл ашық талқылау және осы керемет танымал CMS-тің артындағы әзірлеушілер тобы келесі тармақтарды оң сын ретінде қабылдайды деп үміттенеміз. Міне, біз WordPress әзірлеушілерді ренжітеді деп ойлаймыз:

Кең қабілетті, бірақ ешқашан тамаша емес

WordPress-тің басталуы қарапайым болды. WP блог жазып, жариялағысы келетіндерге арналған платформа болу үшін дүниеге келген. CMS жылдар бойы толығымен өзгерді және қазір оның қарапайым бастамаларына ұқсамайды. Кейбір адамдар оны бүкіл сайтты басқару үшін негізгі жүйе ретінде, интернет-дүкендерге арналған платформа ретінде және тіпті статикалық сайттарды жасау әдісі ретінде пайдаланады (есі ауысқан, бірақ біз мұны көптеген жылдар бойы көрдік)

Бұл CMS қаншалықты бейімделгіш екенін көрсетеді және біз бұл мәлімдемемен келісеміз, бірақ соншалықты икемді болу проблемасы кез келген рөлде жоғарылау қиынға соғады. Мұны түсінудің бір жолы - плагин объективі арқылы қарау: қол жетімді мыңдаған WordPress плагиндері адамдар WordPress-ті жай емес немесе одан да жаман нәрсеге айналдыруға, оның қолынан келмейтін нәрсені жасауға қалай тырысатынын көрсетеді. жасайды, ауырады. Осы себепті, біз WordPress-ті пайдаланған кезде және оны жиі және өз қалауымызбен пайдаланған кезде, біз оны ешқашан қажет емес плагиндермен жүктемейміз. Бұл кезде біз оларды өзіміз жасағанды ​​жөн көреміз.

Әлбетте, WordPress осы «өздігінен жасалған» тәсіл үшін жасалған және икемділіктің көптеген артықшылықтары бар екені сөзсіз. Бірақ белгілі бір тапсырмаға қатты шоғырланбай, CMS нақты шешім ұсыну үшін көп күреседі. Барлығына бәрі болуға тырысу үлкен проблемаларды тудырады. Дегенмен, біз мұны атап өтуіміз керек: WordPress әлі де блогтар мен күрделі емес веб-сайттар мен электрондық коммерция сайттарын құруға арналған платформа ретінде жақсы жұмыс істейді.

Hacks және Cracks: WordPress ашық есік болуы мүмкін

Қысқасы, WordPress тәулік бойы бұзылады және бұл әзірлеушілер әлемінен естіген ең үлкен шағым. Мұны жоққа шығаруға болмайды, CMS қауіпсіздік саңылауларына толы, ол ешқашан аяқталмайды. Бұл қысқа көрпе сияқты: сіз оны бір жағына реттейсіз, ал екінші жағы ашылады. Ішінара бұзулардың саны WordPress-тің танымалдылығына байланысты, сонымен қатар WordPress-тің ашық бастапқы кодына байланысты.

Кез келген адам CMS ашық бастапқы кодын көре алатындықтан, бұл хакерлерге кодтың әлсіз жақтарын табуға мүмкіндік береді. Біз ашық бастапқы кодты жаман тәсіл деп айтқымыз келмейді, бірақ WordPress CMS-тің ашық бастапқы сипаты оның шексіз қауіпсіздік мәселелеріне ықпал етеді деп ойлаймыз.

Талдау көрсеткендей, WordPress сайттары интернеттің төрттен бір бөлігін құрайды. WordPress командасы мұны біледі және CMS қауіпсіз екеніне көз жеткізу үшін қолдан келгеннің бәрін жасауға тырысады, бірақ бүгінгі күні әзірлеу циклдері соншалықты жылдам болғандықтан, күрделі қолданбаны толығымен қорғау қиын болуы мүмкін. Қауіпсіздік шаралары сәтсіз болғанда, миллиондаған веб-сайттар қауіпке ұшырауы мүмкін.

Әрине, «WordPress данасын жаңартудан» басқа WordPress қауіпсіздік мәселелеріне бізде айқын шешім жоқ. Сонда да WordPress шығарылым циклі өзімен бірге бірегей және шексіз проблемаларды әкеледі.

Көптеген адамдар WordPress қауіпсіздігіне қамқорлық жасау оңай екенін айтады және бұл үлкен дәрежеде дұрыс, бірақ сұрақ неге сайт иелерінен WordPress қауіпсіз екеніне көз жеткізу үшін істер тізімін жасауды талап ету керек? Неліктен бұл WordPress қауіпсіздік бөлігі қораптан тыс емес?

  • Біреуге WordPress-ке орындалатын файлды жүктеп салу оңай және бұл опция әдепкі бойынша шектелуі керек. Зиянды коды бар файлды PHP сценарийіне жүктеп салу үшін сәл ғана ақылды адам қажет және сіздің сайтыңыз бұзылды.
  • Қазіргі уақытта опцияларды файлдық жүйеде конфигурациялауға болады. Оның орнына, WordPress мұны алып тастап, файлдық жүйе «тек оқуға арналған» деп болжауы керек. WordPress-тің өзегі мұны істегенімен, плагиндер бұл мінез-құлық үлгісін ұстанбайды. Егер сіз оның конфигурация файлын белсенді түрде өндіру кезінде өзгертетін плагинге тап болсаңыз, оны пайдалануды тоқтатыңыз. Бұл жазуға болатын файлдық жүйені және, демек, зиянды өзгертулерді жасаудың оңай жолын көрсетеді. Шешімдердің бірі - wp-config.php файлын жүйенің түбірінен жою (WordPress бәрібір жұмыс істейді), бірақ бұл қауіпсіздіктің толық кепілі емес және кез келген жағдайда бейсаналық әзірлеушілердің қолдарымен жазылған көптеген плагиндердің дұрыс жұмыс істеуіне жол бермейді. .
  • Әдепкі бойынша, WordPress пайдаланушыларға қалағанша кіру әрекеттерін жасауға мүмкіндік береді. Бұл дөрекі күш шабуылына жол ашады, онда хакерлер жүйеге кіру сәтті болғанша кездейсоқ құпия сөздерді қолданып көреді. WordPress CMS орнату кезінде шектеусіз кіру әрекеттерін өшіруі керек.

Бұл толық тізім емес, бұл бір-екі нүкте ғана. Әлбетте, үлкен бағдарламалық шешім, әсіресе ашық бастапқы шешім, шабуылға толықтай төтеп бере алмайды. Бірақ біздің ойымыз маңызды әзірлеушілер WordPress-ті дәл пайдаланғысы келмейді, өйткені ол өте осал. Білікті әзірлеушілер болашақтағы белгісіз осалдықтар туралы алаңдамай, олардың қажеттіліктеріне талғампаздықпен жауап беретін және қатаң қорғалатын жаңа қолданбаны құруды қалайды.

Немесе PLESK параметрлерін барынша тиімді пайдалану және WordPress-ті «ұсынылмайды» немесе одан да жаманы «тегін» немесе нашар, бірақ нашар жазылған плагиндермен жүктемеу арқылы (бұл туралы пікір айту үшін сізге осы салада тәжірибе қажет) WordPress-ті қауіпсіздік тұрғысынан да тамаша платформаға айналдырыңыз. Бірақ бұл енді «өз қолыңмен» басқару емес, сарапшы қол қажет.

Проблемалар көзі ретінде плагиндер

Жақсы әзірлеуші ​​бірінші рет тұрып қалған плагинге жүгінбейді. Оның орнына жақсы әзірлеушілер қарапайым және талғампаз шешім жасауға тырысады. Керісінше, әрқашан плагиндерді интернеттен іздеу немесе қауымдастық ұсынғандарға сену - бұл өте қате ойлау тәсілі.

Сайып келгенде, плагин WordPress-ке арнайы функцияларды қосуды жеңілдетеді, бұл WP үшін қолжетімді плагиндердің кең ауқымын CMS-тің күші етеді, бірақ бұл да қауіп. Плагиндер істерді жеңілдетіп, жылдамырақ ете алатындай, плагиндер де көптеген қауіпсіздік тәуекелдерін тудырады және сонымен бірге олар сізді WP нұсқасының қай нұсқасын пайдалануға болатынын таңдауға мәжбүрлейді және сонымен бірге олар WordPress данасын сенімсіз арттырады. Интернеттегі қатысуыңызды ренжіту немесе дағдарысқа ұшырату арқылы өлшеңіз, сайтты ашу жылдамдығы және осылайша қол жетімділік және нәтижесінде іздеу жүйелерінде дұрыс индекстеу.

Плагиндер және қауіпсіздік

Алдымен плагиндер жасайтын қауіпсіздік мәселелерін қарастырайық. Бір есепте белгілі WordPress қауіпсіздік мәселелерінің жартысынан көбі плагиндерден туындайтынын көрсетеді. Әзірлеушілер плагин жасаушы ұстанатын кез келген жақсы тәжірибелерге бағынады - бұл соншалықты жақсы болмауы мүмкін. Сондықтан әзірлеуші ​​ретінде сіз плагинді қолданар алдында оны мұқият тексеріп алуыңыз керек. Белгілі бір дәрежеде бұл тексеру процесі плагиндермен үнемдейтін уақытты жоя алады, сондықтан сол кезде сіз сайтқа қосу үшін қажетті мүмкіндікті нөлден бастап әзірлеуді қарастыра аласыз.

WP нұсқаларына шектеулер

«Нұсқа шектеуі» ретінде белгілі плагиндер WP CMS нұсқасының қай нұсқасын іске қосуға болатынын шектей алады. Енді WordPress өзінің шығарылым циклімен өте агрессивті, сондықтан ол үнемі жаңа жаңартуды шығарады және шын мәнінде платформа кез келген айда бірнеше шағын нұсқаларды немесе патчтарды шығарады. Бұл түсінікті, өйткені WP командасы шабуыл векторларын үнемі бекітеді. Дегенмен бұл жаңартулардың барлығында мәселе бар: WP жаңартуы плагинді бұзып, сайттың жұмысын тоқтатуға немесе бұзылуға әкелуі мүмкін.

Әрине, CMS-ді жаңартып отыру керек, бірақ плагиндер жүктеген нұсқа шектеулері бұл жұмысты қиындатады. Кейбір плагин әзірлеушілері әрқашан өздерінің плагиндерін сынап, жаңартып отырады, бірақ бұл кішкентай «әлем». премиум плагиндер ол көпшілікті білдірмейді. Осы премиум плагиндерден басқа WP нұсқасын жаңарту сайтты бұзуы мүмкін деген нақты қауіп бар.

Плагиннің кебуі

Көптеген әзірлеушілер артық кодты пайдаланбайтын тиімді жобаларды құру маңызды екенін біледі делік. Енді кейбір плагиндер осы принципке сәйкес келеді, бірақ көптеген плагиндер өте кеңейген, себебі бұл плагиндер пайдаланушыда болуы мүмкін барлық мәселені шешуге тырысады. Әзірлеушіге плагин бір мәселені шешіп, оның сайтына қатысы жоқ басқа елу мәселенің шешімін ұсына алады. (Тақырыптар мен «құрылысшыларды» айтпағанда).

Плагиндер WordPress жұмыс процесін үзеді

Ақырында, көптеген плагиндер жасайтын тағы бір жалпы мәселе - бұл плагин WordPress-тегі пайдаланушы тәжірибесіне кедергі келтіруі мүмкін, бұл әсерге байланысты. bloat плагиндері WordPress. Мысалы, плагин посттың қалай жасалатынын және бүкіл сайтта таралуын толығымен өзгерте алады.

Бұл WP әзірлеушілері жиі кездесетін мәселеге әкеліп соғады, олар плагинді пайдаланудың орнына, плагинді тым көп жұмыс істеу керек сияқты сезінеді. Сөзсіз, әзірлеушілер плагиндерді айналып өту процесін қабылдайды, себебі бұл плагин процесс мәселесін шешіп жатқан сияқты көрінуі мүмкін (ол сөзсіз жоқ).

Веб-архитектура дамыды

Біз WordPress-тің біраз уақыттан бері пайда болғанын айттық. Ол салынған кезде әзірлеушілер веб-сайт әрқашан бір файлдық жүйемен қатар бір серверді пайдаланады деп есептеді. Дегенмен, әзірлеушілер бірнеше түйіндерді пайдаланатын микро-сервер архитектурасы деп аталатын нәрсені көбірек пайдаланады. Олар мұны істейді, себебі бұл жұмыс әдісі ауқымды және икемді. Бірақ WordPress-ті күрделі архитектурада пайдалану проблемаларды тудыруы мүмкін, мысалы, WP CMS жаңартулары үшін FTP дерлік эксклюзивті пайдалану.

Қазіргі заманғы әзірлеушілер FTP арқылы кодты жаңарту тек архаикалық деп ойлайтыны анық. Әзірлеушілер әдетте белгілі бір жұмыс процесін пайдаланады, осылайша код жұмыс істей бастағанға дейін ықтимал проблемаларды тоқтатуға болады. Бұл әзірлеу жергілікті түрде орындалатынын, код нұсқасы басқарылатынын және бұл код автоматты түрде сыналатынын білдіреді – барлығы үздіксіз интеграция процесі арқылы. Осылайша, қысқа циклдармен жұмыс істейтін ортаға жаңа кодты жүктеп салу жеткілікті, бұл нәрселердің дұрыс емес болуы ықтималдығы жоғары екенін білдіреді.

Түзету мәселесінен үлкенірек - бұл бір түйінде бір файлдық жүйемен жұмыс істеп жатырмыз деген болжам. Веб-серверлердің көп түйінді кластері аппараттық құрал ақауларын да, өнімділікті де жақсартады, сондықтан бұл тәсіл көбірек қабылдануда. WP-де кедергі бар, дегенмен тақырыпты немесе плагинді жаңартуды FTP арқылы орнату бір уақытта тек бір файлдық жүйені жаңартуға болатындығын білдіреді. Осылайша, көп түйінді кластермен сіз әрбір түйін үшін осы жаңартуды орындауға тура келеді.

Әзірлеушілер бұл мәселені шеше алады, бірақ бұл оңай шешілмейтін қиындық болып қала береді. Сондай-ақ, процесс файлдық жүйенің жазылуын талап етеді, бұл өз кезегінде WordPress-тің жүрегі болып табылатын Дерекқорға үлкен қауіпсіздік мәселесін тудырады.

Жетім деректер және жалпы деректер құрылымы

Бастапқыда WordPress деректер құрылымы қарапайым. Дегенмен, көп ұзамай WP дерекқорында артық кестелер бар екені белгілі болады. Мысалы, неліктен метадеректер екі кестеге бөлінуі керек: бірі «wp_posts» және екіншісі «wp_postmeta» деп аталады? Барлық деректерді бір кестеге қосқан дұрыс емес пе? Метадеректер үшін екінші байланыстырылған кесте бар түсініктемелер кестесіне де қатысты.

Нәтижесінде дерекқорда қосымша деректер қалады. Иә, WP жетім деректердің әсерін азайтуға көмектесетін кейбір мүмкіндіктерді қамтиды, бірақ мыңдаған жолдардың жолдар санын өңдеу қажет болғанда функциялар орындалмайды. Негізінде WordPress мүмкіндіктері сервер күту уақытын тудырады және жадтың ағып кетуіне әкеледі және жай ғана тиімді емес.

Әрине, сіз SQL сұрауларын тікелей жазу арқылы жетім деректерді азайтуды таңдай аласыз. Бірақ дұрыс SQL сұрауларын жазу үшін кестелердің қалай қосылғанын мұқият түсіну керек. WordPress дерекқорындағы деректерді бөлу дәрежесі артық болып шығады.

WordPress үшін Plesk Toolkit нәрселерді жақсарту үшін не істейді

Plesk's WordPress Toolkit - бұл WordPress данасын бір басқару тақтасынан орнатудың және теңшеудің оңай жолы. Сіз оны веб-сайтыңызда орнатылғанша пайдалана аласыз. Міне, WordPress құралдар жинағы WP туралы қамқорлық жасауға көмектесетін бірнеше аймақтар:

Қауіпсіздікті басқару

Құралдар жинағы арқылы ең айқын қауіпсіздік саңылауларын автоматты түрде жабуға болады. Мысалы, XML-ді RPC пинг-ке ауыстыруға болады, «wp-content» қалтасының қауіпсіз екеніне көз жеткізіңіз және т.б. Құралдар жинағы сайтыңыздың қауіпсіздік күйін көрсетеді және қауіпсіздікті жақсартуға арналған ұсыныс болып табылатын «қауіпті» немесе «ескерту» мәселелерін белгілейді.

WP данасын жаңарту

Toolkit 3.x және одан кейінгі нұсқаларында қондырма мүмкіндігі ретінде қол жетімді, Smart Updates мүмкіндігі торапты бұзу қаупінсіз өндіріс сайтын жұмыс істеп тұруға және оны бір уақытта жаңартуға мүмкіндік береді. Құрал жаңартуға байланысты туындауы мүмкін ақауларды тексереді және қандай да бір қауіп бар-жоғын хабарлайды.

Клоназион

WordPress сайтының көшірмесін жасағыңыз келетін көптеген себептер бар. Мысалы, сізде тікелей эфирге шықпас бұрын өзгерістерді тексеруге болатын сахналық сайт болуы мүмкін. Дайын болғаннан кейін сайт мазмұнын көшіргіңіз келеді.

Немесе сізде жалпыға қолжетімді сайт болуы мүмкін және оның көпшілікке қолжетімді болуын қаламайтын көшірмесін жасағыңыз келуі мүмкін. Тағы бір мысал, WordPress қондырғысының үлгі көшірмесі бар және оны, соның ішінде тақырыптар мен плагиндерді автоматты түрде клондауды қалайтын кәсіби әзірлеушілер.

Сондай-ақ бізде әртүрлі себептермен сайттың бірнеше көшірмесін жасағысы келетін клиенттер бар, мысалы, сайт бірнеше өзгертулер арқылы қалай басқаша көрінетінін көрсету.

Себептеріңізге қарамастан, WordPress құралдар жинағындағы клондау құралы барлығын, соның ішінде сайт файлдарын, сайт дерекқорын және барлық WP CMS параметрлерін көшіруді жеңілдетеді.

Синкронизация

Түрлі себептерге байланысты екі WordPress веб-сайтының сәйкес келетініне көз жеткізгіңіз келуі мүмкін. WP Toolkit WP дерекқорын және барлық WP файлдарын автоматты түрде синхрондауға мүмкіндік береді.

Егер сізде сайттың кезеңдік көшірмесі болса, жалпыға ортақ көшірмеңіз басқа жерде жұмыс істеп тұрған кезде, сіз сайттарды синхрондағыңыз келуі мүмкін, себебі сахналық торапта жасалған өзгертулерді WP тікелей сайтына көшіргіңіз келеді.

Сол сияқты, кезеңдік нұсқаға енгізілген өзгертулердің тікелей деректермен жақсы ойнайтынын тексеру үшін өндіріс торабындағы кейбір деректерді сахналық данаға көшіргіңіз келуі мүмкін. Немесе кезеңдік торабыңызға жасалған өзгертулер дерекқор кестелеріңіздің өзгеруіне әкелді, бұл жағдайда құралдар жинағы қаласаңыз, бұл өзгертулерді дерекқорыңызбен синхрондауға мүмкіндік береді.

WP Toolkit синхрондау мүмкіндігін пайдаланудың тағы бір жағдайы - әзірлеуші ​​​​кезеңдік сайтты WordPress-тің бөлшек нұсқасына жаңартқан және өзгерістерді тікелей сайтта көрсетуді қалайтыны.

Сізде бүкіл WP CMS немесе оның кейбір бөліктерін синхрондау мүмкіндігі бар. Сонымен, сіз WP файлдарын, оның дерекқорын немесе екеуін де көрсете аласыз. Бүкіл дерекқорды немесе жай кестелерді немесе тіпті көзде бар, бірақ тағайындалған жерде жоқ кестелерді синхрондау арасында таңдауға болатын қосымша түйіршіктілік бар. Сондай-ақ жеке кестелерді шағылыстыруға болады.

WP жүйесінде қателерді іздеу

Plesk WordPress Toolkit сонымен қатар әзірлеушілерге оның жөндеу режимін қосу арқылы веб-сайт көзіндегі қателерді автоматты түрде анықтауға және түзетуге мүмкіндік береді.

Қорытынды.

Жоғарыда айтылғандардың бәрінен кейін жұмыс істейтін әзірлеушіні немесе сізді қадағалай алатын агентті ғана емес, сонымен қатар WordPress-те сайтыңызды орналастыратын хостингті таңдау өте маңызды екені анық. Тіпті осы нәрселерден біз кәсіби хостингте қараңғы сайттың болуы не жоқ екенін түсінеміз.

WordPress өңдеуге оңай «нысан» емес. Әрине, сіз өзіңізді еркін сезінесіз, сізге әзірлеуші ​​қажет емес немесе агенттікке байланысты емес деп ойлайсыз, сіз мұны өзіңіз жасай алу керемет деп ойлайсыз, бірақ шын мәнінде, шындық басқаша айтады және бүгінгі күні қауіпсіздік тақырыбы бұдан былай екінші емес, сонымен қатар үшінші тұлғалар алдындағы міндеттемелері мен жауапкершілігіне байланысты негізгі болып табылады.