Հոդվածների տեղեկատու
Նույնիսկ ամենագեղեցիկ կոդը կարող է վնասել ձեր WordPress կայքը, եթե ընտրեք սխալ պլագիններ ։
Սա չափազանցություն չէ։ Ես տեսել եմ չափազանց շատ կայքեր, որոնք աշխատում էին անթերի, միայն թե դրանց բեռնման արագությունը մի քանի կոդի հատվածներ ավելացնելուց հետո 0.8 վայրկյանից ցատկել է մինչև 3 վայրկյան։ Երկար հետաքննությունից հետո պարզվեց, որ որոշակի հատված տվյալների բազայում կատարում էր մի շարք ավելորդ հարցումներ։
Այսպիսով, այսօր եկեք խոսենք WPCode-ի և Fluent Snippets-ի մասին, որոնք երկու կոդի հատվածների կառավարման պլագիններ են, որոնք հաճախ համեմատվում են WordPress համայնքում։
Անկեղծ ասած, ես երկուսն էլ լայնորեն օգտագործել եմ և նույնիսկ օգնել եմ ընկերներիս խուսափել որոշ թակարդներից։ Այսօր ես կկիսվեմ իմ բոլոր անկեղծ փորձով։
Թույլ տվեք սկսել որոշ նախապատմությունից։
WordPress-ում անհատական կոդ ավելացնելու մի քանի եղանակ կա։ Մեկը թեմայի functions.php ֆայլը ուղղակիորեն փոփոխելն է, որը պարզ և հասկանալի է, բայց ամեն թարմացման հետ ամեն ինչ կորչում է։ Մեկ այլ եղանակ է դուստր թեմայի օգտագործումը, որը մի փոքր ավելի լավ է, բայց դեռևս ավելի բարձր սպասարկման ծախսեր ունի։ Եվս մեկ եղանակ է գտնել հուսալի կոդի հատվածների հավելված, որն ավելի անվտանգ է կառավարելու և գործարկելու համար։
WPCode-ը և Fluent Snippets-ը մրցակիցներ են այս երկու մրցուղիներում։
WPCode-ը , որը WordPress համայնքի վետերաններից է, WPCode թիմի արտադրանք է և միշտ վայելել է լավ համբավ։ Այն ունի 10-ից 4.9 գնահատական. չնայած ընդամենը 31 ակնարկ ունենալուն, այդ գնահատականն ինքնին խոսում է իր մասին։
Fluent Snippets-ը WPManageNinja թիմի ևս մեկ արտադրանք է՝ այո, նույն թիմը, որը ստեղծել է FluentCRM-ը: Այն ունի ավելի քան 40 տեղադրում և 4.6 վարկանիշ, մի փոքր պակաս, քան WPCode-ը, բայց տեղադրումների չորս անգամ ավելի քանակով:
Սա հետաքրքիր է։ Տեղադրման ծավալի և վարկանիշների միջև հակադարձ կապը պետք է որ պատճառ ունենա։
Խմբագրի փորձ
WPCode-ը օգտագործում է ACE խմբագրիչը, որը, թույլ տվեք ասել ձեզ, ունի WordPress-ի ավանդական ոճ։ Այն ունի կոդի ընդգծում, բայց գունային սխեման բավականին պահպանողական է և մոռանում է կոդի լրացման մասին։ Եթե դուք սովոր եք VS Code-ին, այստեղ դրա օգտագործումը ձեզ կառաջացնի «Ա՜խ, ես հինգ տարի հետ եմ գնացել» ապակողմնորոշող զգացողություն։
Fluent Snippets-ը տարբերվում է. այն անմիջապես ինտեգրված է Monaco Editor-ի հետ։
Այո, սա նույն խմբագրիչն է, ինչ VS Code-ը: Կոդի ընդգծում, ավտոմատ լրացում, շարահյուսական հուշումներ՝ ամբողջ գործընթացը գրեթե նույնական է տեղային կոդ գրելուն: Երբ ես առաջին անգամ օգտագործեցի այն, ես անմիջապես սիրահարվեցի դրան: Դա այն զգացողությունն էր, որ «վերջապես մի պլագին, որը պատրաստ է լավ խմբագրիչ դառնալ»:
Բայց ահա հարցը. արդյո՞ք ավելի լավ խմբագրիչը անպայման նշանակում է ավելի լավ օգտագործողի փորձառություն։
անորոշ։
Ես ճանաչում եմ մի ընկերոջ Շենժենում, որը զբաղվում է բովանդակության կայքերի բիզնեսով։ Նա մենակ կայքի սեփականատեր է, միայնակ պահպանում է ավելի քան երեսուն կայքեր։ Նա ասաց ինձ, որ սիրում է WPCode-ը։ Ինչո՞ւ։ Որովհետև այն պարզ է։ Բացեք backend-ը, մի քանի անգամ սեղմեք, կոդը կհայտնվի, և վերջ։ Նրան պետք չեն որևէ բարդ գործառույթներ. նրան պետք են կայունություն և սխալներից զերծ աշխատանք։
Այդ խոսքերն այդ պահին իսկապես հուզեցին ինձ։
Այո, Monaco Editor-ը հիանալի է և շատ հզոր։ Բայց այն մարդու համար, ով ամեն օր կառավարում է երեսունից ավելի կայքեր, ուսուցման գործընթացն ինքնին բեռ է։
Պահպանման մեթոդ
Խմբագրին քննարկելուց հետո, անցնենք ավելի բարդ բանի։
WPCode-ը պահվում է տվյալների բազայում, իսկ բոլոր հատվածները՝ wp_options աղյուսակում։ Յուրաքանչյուր ընթերցման գործողություն ներառում է տվյալների բազայի հարցում, և բարձր զուգահեռության սցենարներում այս հարցումների քանակը կարող է կուտակվել։
Fluent Snippets-ը օգտագործում է ֆայլերի պահեստ։ Կոդի հատվածները պահվում են որպես PHP ֆայլեր wp-content/fluent-snippets/ գրացուցակում, և WordPress-ը ներառում է դրանք անմիջապես կատարման ընթացքում՝ շրջանցելով տվյալների բազայի հարցումները։
Տեսականորեն, ֆայլերի պահպանումն ավելի արագ և անվտանգ է։
Ինչո՞ւ է այն համարվում ավելի անվտանգ։ Քանի որ ֆայլերի պահպանումը բնույթով մեկուսացնում է SQL ներարկման ռիսկը. տվյալների բազայում չկան կոդի հատվածներ, որոնք կարող են ներարկվել։
Բայց կա մի «բայց»։
Ֆայլերի պահպանումը նույնպես ունի իր խնդիրները: Յուրաքանչյուր անգամ, երբ հատվածը թարմացվում է, պահանջվում են ֆայլերում գրելու թույլտվություններ: Եթե սերվերը սխալ է կարգավորված կամ որոշակի հատուկ վիրտուալ հոսթինգի միջավայրերում, ֆայլերի գրառման հետ կապված կարող են խնդիրներ առաջանալ: Նախկինում խմբում ինչ-որ մեկը բողոքել էր, որ հատվածը թարմացնելուց հետո կոդը չի աշխատում, և հետաքննությունից հետո պարզվել է, որ խնդիրը ֆայլերի թույլտվության մեջ է:
Հետևաբար, արծաթե փամփուշտ չկա. յուրաքանչյուրն ունի իր սեփական սցենարը։
Բեռնման պայմաններ
Ահա թե որտեղ է կայանում երկու պլագինների միջև ամենաակնհայտ տարբերությունը։
WPCode-ի պայմանական բեռնումը բավականին պարզ է, այն աջակցում է ինչպես առաջին պլանի, այնպես էլ ֆոնային բեռնմանը: Կարող եք նաև ընտրել այն միացնել կամ անջատել գլոբալ առումով: Այնքան պարզ է:
Fluent Snippets-ի պայմանական բեռնումը անհավանական է. այն կարող է հիմնված լինել օգտատիրոջ դերերի, URL կանոնների, սարքերի տեսակների և նույնիսկ հատուկ դաշտերի վրա: Դրա պրոֆեսիոնալիզմը անհավանական է:
这意味着什么?
Սա նշանակում է, որ դուք կարող եք հասնել շատ մանրակրկիտ վերահսկողության: Օրինակ՝ «բեռնեք այս կոդը միայն այն բջջային սարքերի վրա, որտեղ URL-ը պարունակում է /product/ և օգտատերը մուտքագրված չէ»: Այս տեսակի պահանջը գործնականում անհնար է իրականացնել WPCode-ում, բայց այն Fluent Snippets-ի ստանդարտ գործառույթ է:
Իհարկե, կան ծախսեր։ Որքան բարդ է կոնֆիգուրացիան, այնքան բարձր են սպասարկման ծախսերը։ Վեց ամիս անց հարցականի տակ է, թե արդյոք դուք կարող եք հասկանալ ձեր գրած պայմաններն ու կանոնները։
Իմ զգացմունքները
WPCode-ը նման է շվեյցարական բանակային դանակի. այն բավարար է և կայուն, բայց դրա ֆունկցիոնալությունն ունի սահմանափակումներ։
Fluent Snippets-ը պրոֆեսիոնալ գործիքակազմի նման է. կարող ես ավելին անել, բայց պետք է իմանաս, թե ինչ ես անում։
Անկեղծ ասած, այս երկուսը նույնիսկ մրցակիցներ չեն նույն ոլորտում։
Եթե դուք պարզապես անձնական կայք եք վարում կամ փոքրածավալ գործունեություն եք ծավալում, WPCode-ը բավարար է։ Դրա ամենամեծ արժեքը կոդի լավ կառավարման, սխալներից խուսափելու և կայուն աշխատանք ապահովելու մեջ է։
Եթե դուք կատարում եք բարդ գործողություններ կամ ձեր կայքը ունի բարդ բիզնես տրամաբանություն, Fluent Snippets-ի պայմանական բեռնումը կարող է փրկարար լինել։
Գործնական կիրառություն. Բովանդակության տեսակը չի կարող անմիջապես կանչել կարճ կոդեր
Լավ, հիմա, երբ մենք ծանոթացանք հիմնական համեմատություններին, եկեք անդրադառնանք մի քանի գործնական օրինակների։
Շատերը Fluent Snippets-ում ստեղծում են Content type snippet, ապա դրա մեջ գրում են կարճ կոդեր։
ինչպես, օրինակ,
[nihaoya]Այո՛, ճիշտ է։
Ասեմ ձեզ, ես էլ եմ այս թակարդը ընկել առաջ։
Fluent Snippets-ը աջակցում է snippet-ների երեք տեսակ՝ PHP տեսակ, բովանդակության տեսակ և CSS/JS տեսակ։
Եթե ձեր հատվածի համար սահմանված է Content (PHP+HTML) տեսակը, գրեք հետևյալը ներսում՝ [nihaoya]Այն չի վերլուծի այն, այն միայն կ... [nihaoya] Այս նիշերը արտածվում են ճիշտ այնպես, ինչպես որ եղել են։
Դա պարզապես պարզ տեքստ է, ոչ թե կրճատված արդյունք։
Որպեսզի կարճ կոդը իրականում կատարվի, այն պետք է փաթեթավորված լինի PHP ֆունկցիայի մեջ՝ `do_shortcode()`: Շարահյուսությունը հետևյալն է.
<?php echo do_shortcode('[nihaoya]'); ?>
Այս կերպ, WordPress-ը կվերլուծի կարճ կոդը և կարտադրի համապատասխան բովանդակությունը։
Ինձ երկար ժամանակ պահանջվեց սա հասկանալու համար. փաստաթղթերում դա հստակ նշված չէր։
Եթե ձեր հատվածը օգտագործում է PHP տիպը, ապա ամեն ինչ ավելի պարզ է. պարզապես գրեք `return` հրաման ֆունկցիայում, գրանցեք այն `add_shortcode`-ով, և կարճ կոդը ճիշտ կաշխատի: Այստեղ երկիմաստություն չկա. խնդիրը բացառապես բովանդակության տեսակի մեջ է:
Ես կասկածում եմ, որ այս հատկանիշը գրողը ենթադրել է, որ Content տեսակը հիմնականում HTML բովանդակության համար է, և որ կրճատումները պետք է մշակվեն PHP տեսակների միջոցով, ուստի ինտերֆեյսի վրա դրա մասին հստակ նշում չկա։ Այնուամենայնիվ, գործնականում շատ մարդիկ երկու տեսակներն էլ օգտագործում են փոխարինելիորեն, ինչը հանգեցնում է խնդիրների։
եզրակացության մեջ
Ու՞մ համար է WPCode-ը հարմար։ Փոքր կայքերի համար՝ պարզ կարիքներով, և նրանց համար, ովքեր չեն ցանկանում ջանք գործադրել։ Այն պատրաստ է օգտագործման անմիջապես տուփից հանելուց հետո, շատ քիչ ժամանակ է պահանջվում, իսկ խնդիրների լուծումը հեշտ է։
Ու՞մ համար են հարմար Fluent Snippets-ը : Միջինից մինչև մեծ կայքերի համար՝ բարդ պայմանական կառավարմամբ և արդյունավետության վրա կենտրոնացմամբ: Ֆայլերի պահպանումը նշանակում է ավելի արագ կատարման արագություն, պայմանական բեռնումը նշանակում է ավելի նուրբ վերահսկողություն, իսկ Monaco Editor-ը նշանակում է ավելի հարմարավետ մշակման փորձ:
Իհարկե, սա այն նախադրյալն է, որ դուք պատրաստ եք վճարել ուսման արժեքը այս «ավելին»-ի համար։
Անկեղծ ասած, եթե դուք պարզապես ավելացնում եք Google Analytics կոդ կամ հեղինակային իրավունքի մասին ծանուցում ձեր հոդվածի վերջում, WPCode-ը լիովին հարմար է: Իրականում անհրաժեշտ չէ Fluent Snippets-ը «ավելի լավ խմբագրիչ» ստեղծելու համար դժվարություններ ունենալ:
Այնուամենայնիվ, եթե ձեր կայքը պահանջում է A/B թեստավորում և անհրաժեշտ է բեռնել տարբեր կոդ՝ ըստ սարքի, օգտատիրոջ դերի կամ էջի տեսակի, Fluent Snippets-ի պայմանական բեռնումը կարող է ձեզ խնայել ձեռքով դատողության և կոշտ կոդավորման մեծ ծախսեր։
Վերջին բանը։
Գործիքները պարզապես միջոցներ են. դրանց իրական արժեքը կայանում է նրանում, թե արդյոք դուք կարող եք առավելագույնի հասցնել դրանց ներուժը։
WPCode-ը հայտնի գործիք է, որը կայուն է, հեշտ օգտագործման և հարմար է արագ տեղակայման համար: Fluent Snippets-ը պրոֆեսիոնալ գործիք է, որն առաջարկում է ավելի ուժեղ կատարողականություն, ավելի ճկուն պայմանների կառավարում և հարմար է մշակողների և բարդ կայքերի համար:
Պլագինների ընտրությունը ձեր հմտությունները ցուցադրելու մասին չէ, այլ ձեր կայքը ավելի կայուն, արագ և անվտանգ դարձնելու համար է։
Ես խորապես համոզված եմ, որ այն, ինչ ձեզ ամենից շատ է համապատասխանում, լավագույնն է, այլ ոչ թե պարտադիր է, որ դրանք ավելի շատ հնարավորություններ ունենան կամ ավելի ուժեղ լինեն։
Մեկ նախադասության ամփոփում
- Փոքր տարածք, պարզ պահանջներ → WP կոդը
- Մեծ տարածք, բարդ վիճակի վերահսկողություն → Հոսուն հատվածներ
Վերջապես, ահա մի խորհուրդ. ամենաարժեքավոր ուսումնասիրությունը գործնական փորձ ձեռք բերելն ու կոդը գործարկելն է: Մի՛ ավելացրեք այն էջանիշներին՝ առանց պրակտիկա անելու, բոլորդ:
Հուսով եմ, որ Չեն Վեյլիանգի բլոգում ( https://www.chenweiliang.com/ ) տեղադրված «WPCode vs Fluent Snippets. Ո՞րն է ավելի լավը։ Plugin Comparison and Practical Tutorial» հոդվածը օգտակար կլինի ձեզ համար։
Ազատորեն կիսվեք այս հոդվածի հղումով՝ https://www.chenweiliang.com/cwl-34009.html
