Blog

  • Page Builder Sandwich-da maxsus shortkodlarni qanday qo’shish mumkin

    Page Builder Sandwich-da maxsus shortkodlarni qanday qo’shish mumkin

    From the word itself, the word shortcode means exactly that: A short code; a shortcut code.

    Qisqa kodlar (shortcodes) ishlab chiquvchilar odatda qilganidek katta kod parchalarini kiritishga hojat qoldirmasdan, veb-saytingizga turli elementlarni (masalan, vidjetlarni) qo’shish imkonini beradi.

    Masalan, uzunligi bo’yicha oddiy kod qismi taxminan shunday ko’rinishga ega bo’lishi mumkin:

    <html>Lorem ipsum dolor sit amet, consectetur adipiscing elit.
    
    Etiam id aliquam turpis. Vivamus quis arcu tincidunt, finibus urna eget, placerat risus.
    
    Aliquam arcu massa, finibus et lacinia sed, scelerisque nec augue. Quisque eu viverra sapien, vel consequat lorem. Integer vel erat tortor.
    
    Phasellus condimentum magna eget congue venenatis. Suspendisse blandit vehicula consectetur.
    
    Nullam sodales eleifend massa, in bibendum purus fermentum id.
    
    Morbi et turpis feugiat, malesuada ipsum sit amet, interdum nulla. In non ante nec nisl mattis gravida sit amet id lectus.
    
    </html>​

    Ushbu misol uchun yuqoridagi kod qismi sizga Lorem Ipsum to’ldiruvchi matnining butun bir xatboshisini qo’shishga imkon beradi deb tasavvur qilaylik.

    Now, a shortcode with the same exact function as the code above will look something like this, in contrast:

    [lorem ipsum dolor estat]Lorem Ipsum[/lorem]​

    You can see how they’re miles different from each other in terms of length.

    Endi ikkala kod qismi ham – asl, uzun qism hamda shunchaki «lorem» so’zidan iborat qisqa kod – aynan bir xil ishni bajarishini tasavvur qiling: Lorem Ipsum matnini qo’shish.

    This is what shortcodes do. They make adding widgets, functions, and a bunch of other cool stuff easier for both ordinary WordPress users and developers alike.

    Where can I find shortcodes?

    Agar siz yoqtirgan plagin yoki vidjet bo’lsa, ehtimol, ularda siz foydalanishingiz mumkin bo’lgan qisqa kod mavjud.

    Shortcodes Ultimate, for example, will let you choose from hundreds of shortcodes that you can use on Page Builder Sandwich (or anywhere, actually) by simply grabbing the shortcode of your choice from Shortcode Ultimate’s repository or documentation page.

    Adding Custom Shortcodes on PBS

    Page Builder Sandwich-da siz qisqa kodlarni shunchaki yozib yoki kontent maydoningizga nusxalab qo’yish orqali to’g’ridan-to’g’ri sahifangizga qo’shishingiz mumkin.

    Biz buni quyida Shortcodes Ultimate plaginining qisqa kodi yordamida amalga oshirib, Page Builder Sandwich demo sahifasiga kontent blokini qo’shdik:

    Another thing you’ll find handy when using Page Builder Sandwich is our Shortcode Mapping feature.

    Qisqa kodlarni moslashtirish (Shortcode Mapping) haqidagi oldingi maqolalarimizdan birida ta’rif quyidagicha keltirilgan:

    Shortcode mapping is like letting Page Builder Sandwich memorize all the shortcodes available on your site: their names, descriptions, their attributes, and what each of these attributes do.

    Bu shuni anglatadiki, endi siz qisqa kodlaringizni ularning tegishli hujjatlari yoki omborlaridan qo’lda qidirishingiz shart emas.

    Agar sizda qisqa kodni o’z ichiga olgan plagin WordPress saytingizga o’rnatilgan bo’lsa, undan Page Builder Sandwich-da osongina foydalanishingiz mumkin bo’ladi.

    So for example, if I wanted to add a WooCommerce shortcode on my page, all I have to do is make sure that it’s installed on my WordPress site, like so:

    And then, to actually add the shortcode, I’ll just go to my page, and drag and drop the Shortcode Element:

    Because we already have WooCommerce installed on our WordPress site, you can see that all of the shortcodes that are available on the WooCommerce plugin are already available on Page Builder Sandwich. This is what Shortcode Mapping is.

    You can also see on the upper left corner that the ACF (Advanced Custom Fields) and MailChimp shortcodes are available– because we have those instlled on our WordPress site, too.

    Shuning uchun, agar siz maxsus qisqa kodlarni yoki o’zingiz yaratgan qisqa kodlarni qo’shmoqchi bo’lsangiz, ular WordPress saytingizga o’rnatilgan bo’lsa, buni amalga oshirishingiz mumkin.

    Here are some other helpful plugins that you can use to create your own custom shortcodes:

  • Ushbu Black Friday 2017 chegirmalari bilan ajoyib WordPress saytini yarating

    Create WordPress Website With Black Friday Sale 2017 Deals Black Friday and Cyber Monday are coming in a couple of days (5 to be exact), but you’ll find that a bunch of websites have already started announcing their discount deals every which way. WordPress tools and plugins are definitely no exception.

    Shunday qilib, hali (nisbatan) erta bo’lsa-da, biz WordPress Black Friday 2017 uchun topish mumkin bo’lgan eng yaxshi takliflar ro’yxatini tuzdik, unda WordPress saytini yaratish uchun kerak bo’ladigan barcha zaruriy narsalar byudjetingizga mos keladi.

    Gapni ko’p cho’zmasdan, ilk asosiy WordPress veb-saytingizni yaratish uchun sizga kerak bo’ladigan, katta chegirmaga ega 5 ta vosita va plaginni taqdim etamiz.

    Cloudways

    Cloudways is a managed cloud hosting platform that’s quick to start, easy to manage, and made to scale. It’s feature-rich, plus it lets you choose your server resources, allowing you to get your site up and running within minutes.

    Enter the coupon code HOLIDAY25 upon checkout to get a 25% discount on Cloudways for 3 months, valid until 28th November 2017.

    Cloudways kuponingizni oling

    Yoast SEO

    Yoast SEO is one of the most popular (if not most trusted) search optimization plugin for WordPress, and for good reason too. With over 7 million installs, it’s probably the most comprehensive SEO tool in the digital market, and their millions of users (ourselves included) can attest: you simply can’t go wrong with a plugin as functional as Yoast.

    While they haven’t announced this year’s Black Friday coupons yet, they’ve made an announcement in one of their articles that they’ll definitely having a sale on November 24 and 25.

    Yoast SEO-ni hoziroq ko’rib chiqing!

    WP Rocket Cache

    WP Rocket offers a good range of caching functions, giving your site the performance boost that it needs. It’s a breeze to configure as well, so it’s great for beginners as it only requires minimal effort for setup.

    This year, they’re having their biggest sale yet: 35% off on ALL their licenses.

    WP Rocket kuponini oling

    Theme Discounts from WeDevs.com

    WeDevs — ajoyib WordPress plaginlari va kengaytmalari to’plamidir. Ularning ancha mustahkam hamjamiyati bor va ular 2008-yildan beri faoliyat yuritib kelmoqda. Black Friday 2017 (va bu yilgi keyingi bayramlar) uchun ular ajoyib WP mavzulari uchun ko’plab chegirmalar va kuponlarni o’z ichiga olgan WordPress Holiday Deals ro’yxatini tuzdilar.

    Mavzular kuponlarini oling

    BONUS RESOURCE: First Site Guide

    First Site Guide is a resource site and tool that contains easily accessible knowledge on how to create your first website, both on WordPress and off of it. It also has great infographics that guide you through the basics of blogging, design, and marketing as well. And best of all, you get this good share of site-building knowledge for free.

    Shuningdek, tez orada First Site Guide manbalaridan foydalangan holda lending sahifasini yaratish bo’yicha maqolani taqdim etamiz, shuning uchun keyingi haftalarda buni kuzatib boring!

    First Site Guide-ga o’tish

    (And last but not least) Page Builder Sandwich!

    We definitely don’t want to miss out on all the fun. So this 2017, we’re giving you guys 33%-off on any license. Just use the promo code CYBERMONDAY33 upon checkout to start building your site today!

    Premium Single Site

    $39 $26.79

    Hozir xarid qiling

    Apply CYBERMONDAY33 upon checkout to save $13.20

    Premium Unlimited Sites

    $89 $60.29

    Hozir xarid qiling

    Apply CYBERMONDAY33 upon checkout to save $29.70

    So what are you waiting for? Grab these kick-ass WordPress deals now. After all, Black Friday only happens once a year. ?

  • Page Builder Sandwich boshqalaridan nimasi bilan farq qiladi

    Page Builder Sandwich boshqalardan qanday farq qiladiHozirda o‘nlab va yuzlab sahifa yaratuvchilar mavjud va siz o‘zingizga shunday savol berayotgan bo‘lsangiz kerak: Page Builder Sandwich’ning nimasi shunchalik o‘zgacha? Agar qo‘lingizda allaqachon birortasi mavjud bo‘lsa, nima uchun undan foydalanishga vaqt sarflashingiz kerak?

    Ushbu maqolada men Page Builder Sandwich’ni noyob qiladigan hamda kontent yaratuvchilar va dizaynerlar uchun mutlaqo zaruriy vositaga aylantiradigan bir nechta asosiy xususiyatlarni sanab o‘taman. Agar siz sahifa yaratuvchi (page builder) nima ekanligini va nima uchun sizga kerakligini bilmasangiz, xavotir olmang, sizga yordam bera oladigan ma’lumotlarimiz bor.

    1. Siz shunchaki kontentingizning vizual ko‘rinishini ko‘rmaysiz, balki haqiqiy kontentingizni ko‘rasiz va tahrirlaysiz

    Boshqa sahifa yaratuvchilarda siz shunchaki kontentingizni ifodalovchi sohalarni ko‘rasiz. Siz asosan kontentingizni bloklar va to‘rtburchak shakllar orqali joylashtirasiz va natija sahifangizda kontentingiz yakunda qanday ko‘rinishga ega bo‘lishining karkasiga o‘xshaydi. Bu esa natijalar qanday ko‘rinishini ko‘rish uchun doimiy ravishda oldindan ko‘rish (preview) tugmasini bosishga majbur qiladi.

    Page Builder Sandwich bilan barcha tahrirlash saytingizning tashqi qismida (front end) amalga oshiriladi va siz haqiqiy «ko‘rganingizni olasiz» (what-you-see-is-what-you-get) tajribasi uchun kontentingizni to‘g‘ridan-to‘g‘ri tahrirlaysiz.

    2. Joningizga tegadigan qalqib chiquvchi oynalarsiz tez va oson to‘g‘ridan-to‘g‘ri tahrirlash

    Qalqib chiquvchi oynalar (popup) sahifa yaratuvchilarning ajralmas qismi bo‘lib kelgan. Ularning ko‘pchiligida, agar siz maketingizdagi biror narsani tahrirlamoqchi bo‘lsangiz, xoh u sarlavha, tugma matni yoki kichik shior yozuvi bo‘lsin, avval qalqib chiquvchi oyna ochilishini kutishingiz va o‘zgarishlarni uning ichida kiritishingiz kerak bo‘ladi.

    Biz Page Builder Sandwich’da qalqib chiquvchi oynalardan foydalanishni maksimal darajada kamaytirishni o‘z oldimizga maqsad qilib qo‘ydik. Qalqib chiquvchi oynalarni olib tashlash orqali har qanday kontentni tahrirlash har qachongidan ham osonroq va ravonroq bo‘ldi.

    Tahrirlash juda oddiy tarzda amalga oshiriladi – kursor qo‘yish uchun matningiz ustiga bosing va yozishni boshlang. Tahrirlashni boshlash uchun TinyMCE muharriri mavjud bo‘lgan qalqib chiquvchi oynani kutishingiz shart emas. Eng ajoyib tomoni shundaki, siz hali ham kontentingizni erkin sudrab olib o‘tishingiz (drag and drop) mumkin.

    Qiyinchiliksiz tahrirlashga yordam beradigan yana bir yangilik — bu doim mavjud bo‘lgan inspektordir. Inspektor sizning asboblar to‘plamingiz va xususiyatlar muharriringiz vazifasini bajaradi. Kontentingizni formatlash vositalari: matn ranglari, sarlavhalar, shrift o‘lchamini sozlash, tashqi oraliqlar (margins), ichki oraliqlar (paddings), hoshiyalar, iqtiboslar va boshqa ko‘plab funksiyalar birgina bosish masofasida.

    Qayta foydalanilgan funksionallik

    3. Qayta foydalanilgan WordPress funksionalligi

    Boshqa sahifa yaratuvchilarda payqagan yana bir jihatimiz shuki, ular ko‘pincha yangidan velosiped ixtiro qilishadi. Ba’zilari o‘zlarining rang tanlagichlari, rasm yuklagichlari, galereya yaratuvchilari va turli xil boshqa vositalarini yaratadilar. Aslida bu yerda yomon narsa yo‘q, ammo WordPress tayyor kod parchalari xazinasi hisoblanadi, shunday ekan, nega ulardan foydalanmaslik kerak?

    WordPress ulkan va ajoyib platforma bo‘lib, ko‘plab ajoyib hissa qo‘shuvchilar tomonidan yaratilgan juda ko‘p qulay vositalarni o‘z ichiga oladi. Page Builder Sandwich imkon qadar WordPress tarkibida allaqachon mavjud bo‘lgan funksionallikdan foydalanadi.

    Biz o‘z rang tanlagichimizdan foydalanish o‘rniga Iris rang tanlagichidan foydalanamiz. Shaxsiy rasm yuklagichimiz o‘rniga media menejeridan foydalanamiz. Shuningdek, yana bir nechta ajoyib skriptlarni aytib o‘tadigan bo‘lsak, backbonejs, underscorejs, wp.hooks va wp.shortcode ham mavjud. Biz bularning barchasidan foydalanamiz va bu bizning ishimizni osonlashtirdi, shuningdek, yanada barqaror kod bazasini ta’minlaydi.

    WordPress funksionalligidan qayta foydalanish ajoyib kutilmagan afzalliklarga ham sabab bo‘ldi. Masalan, rasmlarni joylashtirish uchun media menejeridan foydalanganimiz tufayli, endi WordPress galereyalari, video va audio pleylistlar hamda masofaviy URL manzillar bilan ham darhol ishlay olishimiz yoqimli syurpriz bo‘ldi. Shuningdek, rasmlarni tahrirlash uchun ham shunchaki media menejeridan foydalanishimiz mumkin edi, bu esa soatlab davom etadigan keraksiz ishlab chiqish tashvishlaridan xalos qildi.

    4. Klaviatura orqali harakatlanish va tezkor tugmalar

    Boshqa sahifa yaratuvchilarda sichqoncha sizning asosiy yordamchingizdir. Siz u bilan elementlarni sudrab olib o‘tasiz va tahrirlash uchun ikki marta bosasiz. Ammo klaviatura ko‘pincha e’tibordan chetda qoladi.

    Masalan, ba’zi yaratuvchilarda siz tahrirlayotgan joyingizdan bitta xatboshi/bo‘lim yuqoridagi matnni osongina tahrirlay olmaysiz, chunki siz qalqib chiquvchi oynadan tashqariga bosishingiz va yangisiga kirishingiz kerak bo‘ladi. Page Builder Sandwich’da esa siz klaviatura orqali harakatlanishingiz mumkin. Kontentingiz bo‘ylab harakatlanish uchun yo‘nalish (strelka) tugmalarini bosing, bu boshqa kontentingiz boshqa qator yoki ustun ichida joylashgan bo‘lsa ham ishlayveradi.

    Yana bir muhim xususiyat — bu bekor qilish (undo) va qaytarish (redo) tezkor tugmalaridir. Dastlab ular unchalik muhim emasdek tuyulishi mumkin, ammo bu haqda o‘ylab ko‘ring: agar siz kontentingizni tasodifan noto‘g‘ri joyga sudrab qo‘ysangiz-chi? Ba’zi sahifa yaratuvchilarda siz uni yana dastlabki joyiga qaytarib sudrashingiz kerak bo‘ladi. Page Builder Sandwich’da bekor qilish ham, qaytarish ham ishlaydi. Shunday qilib, siz yozgan matningizni o‘zgartirmoqchimisiz yoki sudrab o‘tkazilgan kontentingizni (yoki bir nechta sudrab o‘tkazilgan elementlarni) orqaga qaytarmoqchimisiz, shunchaki bekor qilish yoki qaytarish tugmasini bosing. Bekor qilish va qaytarish sudrab olib o‘tilgan kontent uchun va hatto shrift o‘lchamlari hamda qator oraliqlari kabi xususiyatlarni o‘zgartirish uchun ham ishlaydi. Bu ularni tahrirlash arsenalingizdagi kuchli vositalarga aylantiradi.

    Xotirjam tajriba

    5. Haqiqiy frontend sahifa yaratuvchisi – Yanada xotirjam va qiyinchiliksiz tahrirlash tajribasi

    Ishlab chiqish jarayonidagi bizning qarashimiz shunday bo‘ldiki, tashqi qismda (front end) tahrirlash siz hali ham backend vositalaridan foydalanib tahrirlayotgandek tuyulmasligi kerak. Sahifa yaratuvchi dastlab backend uchun ishlab chiqilgan-u, keyin frontendga ko‘chirilgandek taassurot uyg‘otmasligi lozim.

    Umuman olganda, men uchun Page Builder Sandwich’ning asosiy farqlovchi xususiyati shundaki, biz uni “haqiqiy” frontend sahifa yaratuvchisi – tashqi qismda tahrirlash qanday bo‘lishi kerakligi haqidagi yangicha tasavvur bo‘lishi maqsadi bilan yaratdik.

  • Frontly API: Frontly Builderni dasturchilar uchun yanada qulay qilish

    Dasturchilar uchun ajoyib yangilik: Frontly’ning bo‘lajak relizida biz nihoyat Frontly API’ni taqdim etamiz.

    U hozirda hali ishlab chiqilmoqda, ammo siz tez orada Frontly uchun qo‘shimchalar (addons) va kengaytmalar yarata olasiz. Albatta, yanada qulay va funksional tajriba taqdim etish uchun u bilan birga API hujjatlarini ham ishga tushiramiz.

    Sizlar yaratadigan barcha ajoyib narsalarni ko‘rishni sabrsizlik bilan kutamiz.

    Here’s a short list of some of the APIs we have so far:

    1. Text Formatting Bar API

    Text Formatting Bar API yordamida dasturchilar Frontly matnni formatlash panelining funksionalligini kengaytirishlari mumkin. Bu orqali matnni formatlash paneliga yangi tugmalar/opsiyalarni qo‘shishingiz mumkin.

    2. Add Element API

    Ushbu API sizga yangi elementlar yaratish va ularni kontent muharririning chap tomonidagi Elements bo‘limidagi mavjud elementlar ro‘yxatiga qo‘shish imkonini beradi.

    3. Inspector API

    Inspector API har bir elementning Properties Inspector panelida sozlamalar yaratish, qo‘shish yoki olib tashlash imkonini beradi.

    4. Text API

    Text API matn uslublariga o‘zgartirishlar kiritish, xususan, matn formatlarini o‘zgartirish, matn fon rangini yangilash va boshqa imkoniyatlarni taqdim etadi.

    Developers! It’d be great if you could send over some suggestions

    These are just some of the basic APIs we have in store for you. We’re in the middle of creating more, but if you have any other ideas of APIs we can add to our console, just leave a comment below, or hit us up at [email protected]. We might just feature your suggestions in the upcoming Frontly release ?

  • Page Builder Sandwich yordamida e-mail marketingdan qanday foydalanish mumkin

    Page Builder Sandwich yordamida e-mail marketingdan qanday foydalanish mumkin

    Ha, mumkin.

    The more important question, though, is how and why do you need to do it?

    My business is small. Can’t I just wing it?

    Email marketing has an average ROI of 3,800 percent. For every dollar invested, the average return is $38, according to Salesforce.

    In other words, it’s definitely something worth investing your time in.

    Because while there are tons of ways to market your products and capture leads– you can still try to make use of the less-popular cold call, for example– the most sure-fire way to connect and communicate with your target audience in the 21st century is through e-mail marketing.

    So if you’re running a business –any kind of business, whether small, big, online or otherwise– digital and e-mail marketing is an absolute must.

    Aside from cutting on costs (e-mail is free, after all), businesses rely on it not just because it’s been proven to be successful, but also because it yields results that are both measurable and flexible; you can track your audience’s responses to your e-mails, for example, or note how many clicks and opens your e-mail marketing campaigns get.

    How you can do it with Page Builder Sandwich

    There are lots of available software you can use to help you market your products and content digitally, like Hubspot’s E-mail Marketing Software, or Mailchimp, which gives you a management system that helps you create, organize, and analyze your newsletters.

    But did you know that using Sandwich, you can actually integrate some of the popular software mentioned via the Newsletter Element?

    The Newsletter Element (and how it works)

    You can find the Newsletter Element by hovering over to the Elements Inspector over to the left side of the screen, and selecting Newsletter from the bottom area.

    Using the Properties Inspector, you can also choose which newsletter integration you’d like to use with the Newsletter Element. For this exmple, we’re going to use MailChimp (highlighted in blue in the dropdown below).

    And, using the Input Field button, you can try to play around with the Newsletter Element’s settings as well, so you can change colors, customize success message options, and other settings, like so:

    By trying your hand at the different available settings for the Newsletter Element’s options, you can end up with something like this:

    Plus, with the help of our Pre-Designed Sections and other design tips, you can actually do a whole lot more.

    Other useful resources for e-mail marketing beginners

    • 11 Types of Marketing E-mails That Actually Generate a Response

    Conclusion

    While other noteworthy marketing trends still exist today, one thing’s for sure: E-mail marketing is definitely here to stay, and it’s important that you utilize it when you can. Who knows? Through e-mail marketing, your business could just get that big break it’s been looking for.

    Design in less time!

    Get access to Sandwich’s Pre-Designed Sections, Templates, and a whole lot more.

    Try Live Preview
  • Mijozlarga yaxshi xizmat ko’rsatish siri

    Har kuni ertalab ishga ketayotganimda, tasavvur qilib bo‘ladigan eng yomon befarq chehra bilan menga kofemni uzatadigan bir barista bor. Bu ikkalamiz uchun har kungi odatga aylangan.

    Va agar bu qahvaxona ofis yo‘lida bunchalik qulay joylashmaganida, ehtimol, men allaqachon boshqa joydan qahva olishga o‘tgan bo‘lardim.

    Endi, onlayn qo‘llab-quvvatlash hamjamiyatida ham mana shunday baristaga o‘xshashlar bor.

    Ammo elektron pochta va jonli chat orqali muloqot paytida yuz ifodalarini ko‘ra olmaganingiz sababli, ularni payqash biroz qiyinroq. Lekin ishonavering, ular mavjud.

    Mijozlarga yaxshi xizmat ko‘rsatish biznesingiz o‘sishi uchun kalit ekani rost. Ammo shunchaki mijozlarni qo‘llab-quvvatlashning o‘zi yetarli emas.

    Siz mijozlaringizga o‘zlarini muhim his qilishlariga imkon beradigan yaxshi (agar a’lo bo‘lmasa ham) xizmat ko‘rsatishingiz kerak, chunki ular rostdan ham shunday. Axir, biznesingiz aynan ular tufayli mavjud.

    Biroq, hamma ham mijozlarga xizmat ko‘rsatish shunchaki sifatsiz taqdim etilishi yetarli emasligini tushunmaydi.

    Aslida, kompaniyalarning qo‘llab-quvvatlash jamoalari borligi tabiiy holdek tuyulsa-da, so‘nggi statistik ma’lumotlar shuni ko‘rsatadiki, mijozlarning 68 foizi kompaniya ular haqida qayg‘urmaydi (vaholanki qayg‘urishi kerak) deb hisoblagani uchun uni tark etadi.

    Ammo yaxshi mijozlarni qo‘llab-quvvatlash xizmati aynan nimani talab qiladi va uni qanday saqlab qolish mumkin?

    Bir qo‘llab-quvvatlash mutaxassisidan boshqasiga: mijozlaringizni — va o‘z-o‘zidan biznesingizni — mamnun qilishning asosiy omillari quyidagilardan iborat.

    1. Salbiy fikr-mulohazalardan unumli foydalaning

    Texnologiya sohasida bo‘ladimi yoki boshqasidami, qandaydir yo‘l bilan mahsulotingiz haqida har doim fikr-mulohazalar olasiz. Lekin ogoh bo‘ling: ularning hammasi ham siz eshitishni xohlagan gaplar bo‘lavermaydi.

    Va siz bunga tayyor bo‘lishingiz kerak.

    Biroq tayyorgarlikdan ham muhimrog‘i — salbiy fikrlarni to‘g‘ri qabul qilish va ulardan unumli foydalanishdir.

    Erta yoki kech siz shikoyatlar, yangi funksiyalar bo‘yicha so‘rovlar va norozilik bildiruvchi izohlar to‘lqiniga duch kelasiz.

    Ularni qayd qilib boring.

    Qabul qilayotgan har qanday fikr-mulohazalarni — ijobiy bo‘ladimi yoki yo‘qmi — tinglash va ochiq qabul qilish juda muhim. Bu fikrlar mahsulotingiz yoki xizmatingizda nima yetishmayotganini ko‘rsatib, auditoriyangiz yoki bozor talablarini qondirish imkoniyatini beradi.

    Masalan, foydalanuvchi interfeysida harakatlanish qiyinligi haqida ko‘plab shikoyatlar olsangiz, demak, foydalanuvchi interfeysini o‘zgartirishingiz kerak.

    Agar bir oy ichida mahsulotingizning yomon ishlashi haqida uchinchi marta shikoyat tushayotgan bo‘lsa, jamoangiz bilan to‘planib, ushbu unumdorlik muammosini hal qilishni birinchi o‘ringa qo‘yish yaxshi fikr bo‘ladi.

    Boshqacha aytganda, salbiy fikrlar — bu yaxshi. Ular mahsulotingizni yanada yaxshilash, mijozlaringizning noroziligidan xulosa va ilhom olish imkoniyatidir. Bu sizning biznesingiz va mahsulotingizning yanada o‘sishiga yordam beradi, va bu qanchalik ko‘p sodir bo‘lsa, siz ham, mijozlaringiz ham shunchalik baxtli bo‘lasiz.

    2. Inson ekanligingizni ularga bildiring

    Meni juda g‘ashimga keltiradigan narsalardan biri — bu avtomatik javobga o‘xshab ketadigan quruq va qotib qolgan elektron xatlarni olishdir.

    Yirik kompaniyalar odatda haqiqiy avtomatik javoblar va botlarga tayanadi, ammo bu ularning brendlari bozorda allaqachon mustahkam o‘rnashgani va ishonch qozongani tufaylidir.

    Endi, agar siz ham biz kabi mijozlarga tirik odamlar orqali xizmat ko‘rsatsangiz, auditoriyangizga siz ham inson ekanligingizni — ular sizga murojaat qilishi, yordam so‘rashi va nusxa ko‘chirilgan, oldindan tayyorlangan qolipga o‘xshamaydigan samimiy javob olishi mumkinligini bildirish juda muhimdir.

    Elektron pochta orqali yakkama-yakka qo‘llab-quvvatlash bo‘yicha bitta maslahatim bor: mijozingizga hayotda aytmaydigan gaplaringizni hech qachon yozmang. Bu degani, “Salomlar!” yoki “Javob kechikkani uchun kamtarona uzr so‘raymiz” kabi iboralardan voz kechish vaqti keldi.

    Shaxsan men me’yordan ortiq rasmiyatchilik siz g‘amxo‘rlik qilganingiz uchun emas, balki shunchaki bu sizning vazifangiz bo‘lgani va majbur ekanligingiz uchungina xizmat ko‘rsatayotgandek taassurot qoldiradi deb hisoblayman.

    Va bu mutlaqo qabul qilib bo‘lmas holat.

    Shuning uchun, agar bu kompaniya qoidalarida belgilab qo‘yilmagan bo‘lsa, mijozlaringiz siz bilan bemalol gaplasha olishlarini his qilishlari uchun harakat qiling. Siz u yerda kimdir sizga maosh to‘layotgani uchungina robotdek javoblar qaytarish uchun emas, balki haqiqatan ham yordam berish uchun borligingizni ko‘rsating.

    3. Hech qachon ularni arosatda qoldirmang

    Bu o‘z-o‘zidan ravshan bo‘lsa kerak.

    Mijozingizni muammosiga yechimsiz — yoki hech bo‘lmaganda vaqtinchalik yechimsiz — hech qachon arosatda qoldirmang.

    Ammo ba’zida to‘g‘ridan-to‘g‘ri yechimi bo‘lmagan vaziyatlar muqarrar bo‘lishi mumkin. Masalan, deylik, mijoz yaqin orada chiqarilmasligi ma’lum bo‘lgan funksiya haqida so‘ramoqda.

    Siz nima deysiz?

    “Kechirasiz, bizda bu funksiya yo‘q. Xayr.

    Hurmat bilan,
    Qo‘llab-quvvatlash xizmati”

    Xullas… bu yaramaydi.

    Agar kichik muqobil yechimlarni taqdim etish kerak bo‘lsa, shunday qiling. Agar mijozingiz pushti ranglisini so‘rayotgan bo‘lsa-yu, sizda ayni damda faqat qizili bo‘lsa, halol bo‘ling, ammo ayni paytda ular nima qilishi mumkinligini ham ayting.

    “Boshqa ranglar sotuvga chiqishi bilanoq siz bilan yana bog‘lanamiz!” deng va va’dangizning ustidan chiqing.

    4. Tezkor javoblar muhim — ammo samarali javoblar ham shunday

    Ha, mijozlaringizga imkon qadar tezroq javob berish muhim. Ammo shunchaki javob yo‘llashning o‘zi yetarli emas.

    Javoblaringiz mazmunli bo‘lishi va mijozlaringizga mavjud muammo bo‘yicha yechim yoki muqobil yo‘l taqdim etishi kerak (3-bandga qarang). Ulardan biri ikkinchisisiz ish bermaydi.

    Ha, mijozlaringiz shoshilmoqda – ammo ularga pala-partish javob berish umuman javob bermaslik kabi yomondir (va ehtimol undan ham yomonroq taassurot qoldiradi, chunki “yuborish” tugmasini bosganingizdan so‘ng, ortga yo‘l yo‘q).

    5. Bajara olmaydigan va’dalarni berishdan saqlaning

    “Xavotir olmang. Biz buni bir soat ichida to‘g‘irlab beramiz!”

    Agar bundan ko‘proq vaqt olsangiz, sizning ham, kompaniyangizning ham obro‘siga putur yetadi.

    Dastlab bu mijozlaringizga yoqimli tuyulsa-da, va’dani bajarmaslik yanada zararli munosabatga sabab bo‘lishi mumkin.

    Agar muammoni bartaraf etish uchun 24 soat vaqt kerakligini bilsangiz, halol bo‘ling va buni ularga ayting. Ular shoshma-shosharlik bilan qilingan va arang ishlaydigan mahsulotdan ko‘ra, tayyor bo‘lishi biroz vaqt oladigan, lekin soz ishlaydigan mahsulotdan ko‘proq mamnun bo‘lishadi.

    Xulosa

    Xo‘sh, mijozlarga yaxshi xizmat ko‘rsatish siri nimada? Uni aslo past baholamang.

    Mijozlaringiz — sizning harakatlantiruvchi kuchingizdir va ular eng muhim ahamiyatga ega.

    Ularga shunga munosib munosabatda bo‘ling.

    Keyingi safar mijozlarga yaxshi xizmat ko‘rsatishga sarmoya kiritish haqida o‘ylayotganingizda, Nil Patelning quyidagi so‘zlarini eslang:

    “Aqlli biznes egalari bilishadiki, raqobatchiga yoki boshqa sabab bilan boy berilgan har bir mijoz munosabati ularga yiliga o‘rtacha 289 dollarga tushadi.

    Agar siz ushbu zararni yangi mijozlar hisobiga qoplay olaman deb o‘ylasangiz, yana bir bor o‘ylab ko‘ring. Ma’lum bo‘lishicha, yangi mijozni jalb qilish mavjud mijozni saqlab qolishdan ko‘ra olti-yetti baravar qimmatroqqa tushadi.”

  • PBS 4.0 versiyasida mobil moslashuvchanlik

    Mobil moslashuvchanlikni to‘g‘ri sozlash juda qiyin bo‘lishi mumkin va biror xatolikka yo‘l qo‘yilsa, natijalar odatda dahshatli bo‘ladi. Aslida, agar hali eshitmagan bo‘lsangiz, Google hatto 2015-yil aprel oyidan boshlab mobil qurilmalarga moslashtirilmagan veb-saytlarni jazolashni boshlagan. Qisqasi, mobil moslashuvchanlik juda muhim masaladir.

    Xo‘sh, mobil moslashuvchanlik nima?

    Veb-sayt moslashuvchan deb hisoblanadi, agar uning tarkibi kompyuterdan boshqa qurilmalarda ko‘rilganda turli xil ekran o‘lchamlari va orientatsiyalariga moslashish qobiliyatiga ega bo‘lsa. Oddiyroq aytganda, agar siz PBS v4 versiyasiga yangilangan bo‘lsangiz va sahifa loyihalamoqchi yoki yaratmoqchi bo‘lsangiz, uni kompyuter, mobil telefon yoki planshetda ko‘rishda hech qanday muammoga duch kelmasligingiz kerak.

    4.0 versiyasidagi moslashuvchanlik

    So‘nggi yangilanishimizda jamoamiz PBS’ning yangi mobil ko‘rish imkoniyati umuman olganda yanada silliq va qulayroq tajribaga aylanishini ta’minladi: matn, tasvirlar va boshqa barcha kontent qurilmangiz ekran o‘lchamiga avtomatik ravishda moslashadi.

    Endi barcha sarlavhalar ekran o‘lchamiga qarab avtomatik ravishda moslashadi, shuning uchun PBS yordamida yaratilgan saytingiz yoki sahifangizni mobil telefonlarda ko‘rayotganda ulkan harflarga duch kelmaysiz. Buni biroz aniqroq ko‘rsatish uchun:

    Saytingizni turli ekran o‘lchamlarida ko‘rish

    Shuningdek, sahifangiz mobilda qanday ko‘rinishini bilishingizga yordam berish maqsadida kompyuter orqali mobil ko‘rinishni tekshirish imkoniyatini ham yo‘lga qo‘ydik. Shunday qilib, sahifangiz chiroyli ko‘rinyaptimi yoki yo‘qligini tekshirmoqchi bo‘lsangiz, telefon (yoki planshet) va kompyuter o‘rtasida jismonan almashib yurish tashvishidan xalos bo‘lasiz. Endi sahifani loyihalash jarayonida xohlagan vaqtingizda turli xil ekran o‘lchamlari o‘rtasida osonlikcha almashishingiz mumkin.

    Bundan tashqari, endi siz elementlaringiz orasidagi masofalarni maxsus planshetlar va mobil telefonlar uchun moslashtirishingiz mumkin.

    Xo‘sh, bu borada qanday fikrdasiz? Maqulmi yoki yo‘q? Mobil qurilmalarga oid yana qaysi funksiyalarni yaxshilashimiz mumkin? Quyidagi izohlar bo‘limida bizga bildiring!

  • Frontly rebrending yangilanishi #1: Xatboshilarni nusxalash va joylashtirish

    Over our past blog posts, we mentioned that PBS will be rebranding as Frontly, and that we’ll be changing and improving a lot of aspects for the better. One of these aspects is being able to use Frontly to experience a smoother, more intuitive page building experience that’s even better than PBS.

    Shunday qilib, biz hali ham sizlar uchun Frontly-ni mukammallashtirish ustida ishlayotgan bir paytda, Frontly bozorga chiqqach nimalarga ega bo’lishingizni aniq bilishingiz uchun bir qator postlar chiqarishga qaror qildik.

    Copy-paste blocks of text on Frontly

    Biz PBS-ni har bir xatboshisi alohida element bo’ladigan qilib loyihalashtirgan edik. Uzun matnlarni nusxalab qo’yish (copy-paste) tanlangan qismni alohida matn bloklariga ajratadi.

    What do we mean by this? Here’s an example to illustrate.

    PBS-ning joriy versiyasida (hozir siz foydalanayotgan versiya) bir nechta qatorlarni nusxalab qo’yish ularni bir nechta matn elementlariga bo’lib yuboradi, bu esa matn qismlarini boshqa joyga ko’chirishni qiyinlashtiradi. Bu matnni tahrirlashni murakkablashtiradi.

    Shuning uchun, agar men hozirgina nusxalab qo’ygan matnimni boshqa ustunga ko’chirmoqchi bo’lsam, bu qiyinroq bo’lardi, chunki qatorlarni birma-bir sudrab o’tishimga to’g’ri keladi.

    This is something we’re definitely addressing with Frontly.

    This is a small test page Benjamin made for Frontly. Here, you’ll see that we copy-pasted the same paragraph we tried to copy-paste on PBS. Only this time, everything is retained in a single area that you can drag around and place wherever you want to.

    Bu shuni anglatadiki, siz matnni ancha silliq qo’shishingiz va tahrirlashingiz mumkin, bu sizga hech qanday qiyinchiliksiz yozish (va sahifa yaratish) tajribasini beradi.

    Retain full text formatting with Frontly

    Frontly-da siz sinab ko’rishingizdan xursand bo’lgan yana bir jihat — bu barcha formatlashning o’zgarishsiz qolishidir: barcha sarlavhalar, jumladan ro’yxat belgilari (bulletlar) va hatto emojilar ham saqlanib qoladi.

    Copy-pasting with PBS vs copy-pasting with Frontly

    Frontly-da (o’ngda) barcha matn formatlashlari asl manbadan saqlab qolinganini ko’rasiz. Qalin, kursiv, tagiga chizilgan yoki boshqa sarlavha o’lchamiga o’zgartirilgan barcha narsalar Frontly maydoniga qo’yilganda to’liq saqlanib qoladi (PBS bilan taqqoslaganda, unda faqat emojilar saqlanib qolar edi).

    What else do we have in store for you?

    Ta’kidlab o’tganimizdek, bu Frontly PBS-dan qanchalik yorug’lik yillari qadar oldinda bo’lishi haqidagi postlar seriyasining birinchisi xolos. Biz sizga boshqa barcha imkoniyatlarni ko’rsatishni sabrsizlik bilan kutmoqdamiz, shuning uchun keyingi blog postimizni kuzatib boring!

    Taklif yoki izohlaringiz bormi? Biz bilan bog’laning va quyida javob qoldiring!

  • Plaginimiz unumdorligini qanday qilib 200% ga oshirdik

    2017-yil 2-fevralda Ann Teylor CodeInWP saytida 12 Things We Need to See From WordPress Page Builders in 2017 + Who Already Gets It Right maqolasini yozgan edi. Biz Page Builder Sandwich ustida bir yildan ortiq vaqtdan beri tinimsiz ish olib bormoqdamiz: izlanishlar o‘tkazamiz, mijozlarimizni tinglaymiz, shuning uchun Page Builder Sandwich CodeInWP’ning «Buni kim to‘g‘ri bajargan» («Who Got it Right») maqolasiga kiradi deb o‘ylagan edik. Biroq unumdorlik sababli kira olmadik. ?

    Shuning uchun biz bu haqda Anndan so‘radik va u shunday javob berdi:

    …Men bepul versiyasini biroz sinab ko‘rdim. U katta umid uyg‘otadi: ko‘plab modullar, ancha tushunarli UI, ajoyib WYSIWYG tajribasi, hamma narsa osongina suriladi. Biroq sahifada 10 ga yaqin modul paydo bo‘lgach, tahrirlash tezligi pastligi sababli u bilan ishlashni davom ettirish qiyinlashdi…

    Demak, uning so‘zlariga ko‘ra, Page Builder Sandwich’da unumdorlik muammolari mavjud. Biz doimo fikr-mulohazalarga quloq solganimiz sababli, buni tekshirib ko‘rdik.

    Unumdorlikni tekshirish

    Bizga PBS unumdorligini tekshirish usuli kerak edi; PBS asosan brauzerda JavaScript orqali ishlagani sababli, bu vazifa uchun Chrome’ning Timeline profayleri eng to‘g‘ri vosita bo‘ldi. Timeline profayleri veb-sahifaning ishlashi davomida qaysi jarayonlar yuz berayotganini aniqlay va o‘lchay oladi, bu esa tezlik to‘siqlarini topish uchun ayni muddao.

    Biz avval eng oddiy amallarni sinab ko‘rishga qaror qildik – sichqonchani bir nechta elementlar va qatorlar bo‘ylab harakatlantirish. Oddiy, shunday emasmi? Shunday oddiy narsada unumdorlik muammolariga duch kelmaymiz, deb ishonchimiz komil edi. Afsuski, adashgan ekanmiz.

    Yozib olish tugmasini bosgach, sichqonchani ekranda taxminan 2 soniya yurgizdik, so‘ng to‘xtatish tugmasini bosdik. Mana profayler natijasida olingan vaqt jadvali:

    Mana, ko‘ring. U unumdorlik to‘siqlariga to‘la!

    Grafikda juda ko‘p narsa sodir bo‘lmoqda, biroq eng yaqqol muammo – unda binafsharang sohalarning juda ko‘pligidir (aslida bunday bo‘lmasligi kerak). Buning ustiga, ushbu binafsharang sohalar ko‘rinib turganidek juda keng va barchasi grafikning eng yuqori cho‘qqisiga yetayotgandek. Shuningdek, grafik hamisha to‘la ekanligini va binafsharang sohalar deyarli hech qachon nolga tushmasligini sezasiz. Brauzer doimo biror narsa bilan band va deyarli dam olmayotganga o‘xshaydi.

    Ammo bu binafsharang sohalar aslida nimani anglatadi?

    Profayler bizga ularning reflow deb atalishini ko‘rsatdi. Mana Google Developer saytidan:

    Reflow – bu veb-brauzerning hujjatdagi elementlar o‘rni va geometriyasini qayta hisoblash jarayonining nomi.. reflow brauzerda foydalanuvchini bloklovchi operatsiya hisoblanadi.

    Demak, bu PBS ichida sichqonchani harakatlantirish juda ko‘p reflow chaqirishini bildiradi. Eng yomoni shundaki, har bir reflow hisob-kitoblarni yakunlashi uchun brauzerni bir lahzaga to‘xtatib turadi. Ko‘proq reflow brauzerning ko‘proq to‘xtab qolishini anglatadi va foydalanish tajribasi yanada ko‘proq qotib ishlaydi (janky). Oddiyroq aytganda: juda ko‘p binafsharang sohalar = yomon.

    Ma’lum bo‘lishicha, Ann haq bo‘lib chiqdi: bizda haqiqatan ham katta unumdorlik muammosi bor edi, shuning uchun jamoamiz darhol buni tuzatishga kirishdi.

    Reflow / qotish muammosini hal qilish

    Hamma narsadan oldin, ushbu reflow’ga nima sabab bo‘layotganini aniqlash uchun tadqiqot o‘tkazishimiz kerak edi. Aniqlanishicha, JavaScript’dagi ko‘plab oddiy amallar brauzerda reflow keltirib chiqarishi mumkin ekan.

    DOM elementining kengligi, balandligi yoki joylashuvini olish uchun foydalaniladigan deyarli har qanday funksiya reflow’ni yuzaga keltirishi mumkin. Pol Ayrish (Paul Irish) buni keltirib chiqarishi mumkin bo‘lgan JavaScript xususiyatlari va funksiyalarining keng ro‘yxatini tuzgan. Yomon xabar shundaki, Page Builder Sandwich ushbu xususiyat va funksiyalarning ko‘pini ishlatadi va ularning barchasi reflow’ga sabab bo‘ladi:

    • elem.getBoundingClientRect()
    • window.getComputedStyle()
    • window.scrollY
    • va yana ko‘plab boshqalar…

    1-yechim: Qimmatga tushuvchi reflow jarayonlarini keshlashtirish

    Eng yaqqol yechim – ushbu xususiyatlar va funksiyalardan FOYDALANMASLIKDIR. Biroq, PBS ularga juda tayanadi va biz ularsiz ish ko‘ra olmaymiz.

    Bizga qolgan yagona chora – ushbu funksiyalarga murojaatlarni iloji boricha qisqartirish edi. Bu yerdagi qiyin tomoni shundaki, biz ushbu xususiyat va funksiyalardan PBS’ning turli joylarida ko‘p marta va aksariyat hollarda bir xil DOM elementining o‘zida bir necha bor foydalangan edik. Buni hal qilish uchun har bir muammoli xususiyat/funksiya uchun o‘z keshlashtirish mexanizmimizni yaratdik.

    Masalan, getBoundingClientRect funksiyasi bizga DOM elementining joriy top, left, width, height, right va bottom piksel o‘lchamlarini beradi. Biz PBS’da element konturlarini qayerda chizish kerakligini hisoblash uchun bu funksiyadan doimiy ravishda foydalanamiz. Mana, buning uchun yaratgan keshlashtirish funksiyamiz:

    // Cache: Our client rects are kept here, we can use this to clear them later.
    var elemsWithBoundingRects = [];
    
    window.pbsGetBoundingClientRect = function( element ) {
    
    	// Check if we already got the client rect before.
    	if ( ! element._boundingClientRect ) {
    
    		// If not, get it then store it for future use.
    		element._boundingClientRect = element.getBoundingClientRect();
    		elemsWithBoundingRects.push( element );
    	}
    	return element._boundingClientRect;
    };
    ​

    getBoundingClientRect chaqirish o‘rniga endi pbsGetBoundingClientRect dan foydalandik. Endi har safar client rect so‘ralganda, bu qiymatni kelgusida murojaat qilish uchun saqlab qo‘yamiz va shu tariqa reflow chaqiruvlari sonini cheklaymiz.

    Shuningdek, saqlangan client rect’lar eskirganda keshni tozalash usuli ham kerak bo‘ldi. Foydalanuvchi sahifani aylantirganda yoki ekranda elementlarni qo‘shganda/o‘zgartirganda/o‘chirganda saqlangan client rect qiymatlari o‘zgaradi. Shuning uchun bizga yangi client rect qiymatlari kerak bo‘lganda chaqirishimiz mumkin bo‘lgan keshni tozalash funksiyasini yaratdik:

    var clearClientRects = function() {
    	var i;
    	for ( i = 0; i < elemsWithBoundingRects.length; i++ ) {
    		if ( elemsWithBoundingRects[ i ] ) {
    			elemsWithBoundingRects[ i ]._boundingClientRect = null;
    		}
    	}
    	elemsWithBoundingRects = [];
    };​

    Biz odatda foydalanadigan boshqa qimmatga tushuvchi funksiya chaqiruvlari uchun ham xuddi shunday keshlashtirish mexanizmini qo‘lladik.

    2-yechim: FastDom yordamida o‘qish va yozish amallarini birgalikda guruhlash

    1-yechimni joriy qilish PBS unumdorligini oshirdi, ammo bu yetarli emas edi.

    Google’dan biroz ko‘proq qidirib, Uilson Peyjning (Wilson Page) «‘layout thrashing’ning oldini olish» haqidagi maqolasiga duch keldik. Uilson shunday deydi:

    Layout Thrashing (reflow) JavaScript DOM’ga ketma-ket bir necha marta shiddat bilan yozib, so‘ng undan o‘qiganda yuzaga keladi va bu hujjatning qayta hisoblanishiga (reflow) sabab bo‘ladi.

    Ko‘rinib turibdiki, faqat reflow chaqiruvchi ma’lum xususiyat va funksiyalarga murojaatlarni cheklashning o‘zi yetarli emas. DOM ustida ketma-ket bir nechta «o‘qish» va «yozish» amallarini bajarganingizda, bu ham brauzer reflow’ini keltirib chiqaradi. Mana, to‘g‘ridan-to‘g‘ri Uilsonning saytidan olingan odatiy holat:

    // Read
    var h1 = element1.clientHeight;
    
    // Write (invalidates layout)
    element1.style.height = (h1 * 2) + 'px';
    
    // Read (triggers reflow)
    var h2 = element2.clientHeight;
    
    // Write (invalidates layout)
    element2.style.height = (h2 * 2) + 'px';
    
    // Read (triggers reflow)
    var h3 = element3.clientHeight;
    
    // Write (invalidates layout)
    element3.style.height = (h3 * 2) + 'px';
    
    // Document reflows at end of frame​

    Yuqoridagi misol 3 ta reflow chaqiradi, chunki yozish amaldan so‘ng butun sahifaning o‘lchamlari eskiradi. Buning uchun taklif qilingan yechim – butun jarayon faqat 1 ta brauzer reflow’ini chaqirishi uchun barcha o‘qish va yozish amallarini bitta joyga to‘plash tarzida kodni qayta tartiblashdir:

    // Read
    var h1 = element1.clientHeight;
    var h2 = element2.clientHeight;
    var h3 = element3.clientHeight;
    
    // Write (invalidates layout)
    element1.style.height = (h1 * 2) + 'px';
    element2.style.height = (h2 * 2) + 'px';
    element3.style.height = (h3 * 2) + 'px';
    
    // Document reflows at end of frame​

    Yuqoridagi kod parchasi muammoni hal qilishni oson qilib ko‘rsatadi. Ammo aslida, PBS’da reflow keltirib chiqaruvchi narsalarni o‘qish va yozish PBS hayotiy sikli davomida ko‘plab turli joylarda va turli vaqtlarda sodir bo‘ladi. Minglab qatorli JavaScript kodini qayta tashkil qilish imkonsiz edi.

    Baxtimizga, Uilson o‘z maqolasida yechim ham taqdim etgan. U o‘qish va yozish amallarini bir joyga to‘plashga yordam beradigan FastDom nomli kichik utilita skriptini yaratgan.

    Mana, Page Builder Sandwich’dan FastDom’dan foydalanadigan va yuqoridagi 1-yechimimizni ham o‘z ichiga olgan kod namunasi:

    // Bunch together the reads from other threads.
    fastdom.measure( function() {
    
    	// Use our cached client rect.
    	var rect = window.pbsGetBoundingClientRect( elem );
    
    	// Bunch together the writes from other threads.
    	fastdom.mutate( function() {
    		elem.style.top = ( rect.top + window.pbsScrollY() ) + 'px';
    		elem.style.height = rect.height + 'px';
    		elem.style.left = rect.left + 'px';
    		elem.style.width = rect.width + 'px';
    	}.bind( this ) );
    }.bind( this ) );​

    FastDom nima qiladi: u barcha fastdom.measure chaqiruvlarini va barcha fastdom.mutate chaqiruvlarini birgalikda guruhlaydi va ularni asinxron tarzda bajaradi, shu tariqa brauzerdagi barcha reflow’larni kamaytirish uchun barcha o‘qish va yozishlarni samarali tarzda jamlaydi.

    3-yechim: Style obyektlariga murojaat qilish qimmatga tushadi

    Shuningdek, jsPerf yordamida uslublarni oluvchi ba’zi funksiyalar boshqalariga qaraganda tezroq ekanligini aniqladik.

    PBS’da odatda elementning ma’lum bir uslubining joriy qiymatini olishimiz kerak bo‘ladi. Masalan, odatda yuqori oraliqni olish uchun bundan foydalanamiz:

    var styles = window.getComputedStyle( elem );
    var marginTop = styles.marginTop;​

    Biroq, buni quyidagicha qilish ancha tezroq ekanini aniqladik:

    var marginTop = elem.style.marginTop;​

    Biroq, elem.style.marginTop va getComputedStyle juda farq qiladi. Birinchisi bizga faqat elementning inline uslubini beradi va hech qanday uslublar jadvalini hisobga olmaydi; ikkinchisi esa ham inline uslublarni, ham uslublar jadvallarini hisobga oladi.

    Qolaversa, hatto getComputedStyle natijasi keshlashtirilgan bo‘lsa ham, u baribir juda sekin edi. Ma’lum bo‘lishicha, style obyektining o‘ziga murojaat qilish sekin jarayon ekan.

    Baxtimizga, PBS elementlarga inline uslublarni qo‘shadi va inline uslublar (ko‘pincha) uslublar jadvalidan ustunroq bo‘lganligi sababli, faqat inline uslub qiymatini olish yetarli bo‘ladigan holatlar bo‘ladi. Shunday qilib, agar yuqoridagi ikkala usulni birlashtirsak, ancha tez ishlaydigan kodga ega bo‘lamiz:

    var marginTop = elem.style.marginTop;
    if ( ! marginTop ) {
    	var styles = window.getComputedStyle( elem );
    	marginTop = styles.marginTop;
    }​

    Kodni takomillashtirish natijalari

    Yuqoridagi 3 ta yechimimiz katta izlanish, sinov va amaliy joriy qilishni talab qildi (hamda Shriftlar funksiyamizning chiqarilishini kechiktirdi), ammo oxir-oqibat bularning barchasi o‘zini oqladi.

    Sichqonchani ekranda 2 soniya davomida harakatlantirish bo‘yicha dastlabki sinovimizga qaytadigan bo‘lsak. Mana eski xunuk/qotib ishlaydigan vaqt jadvali:

    Mana esa unumdorlik yaxshilangandan so‘ng yangi vaqt jadvalimiz qanday ko‘rinishga ega bo‘lgani:

    Ko‘rib turganingizdek, grafikda binafsharang joylar ancha kam. Brauzer tomonidan bajarilayotgan jarayonlar hajmida ham sezilarli farq bor. Pastdagi to‘g‘ri to‘rtburchaklar ham ingichkaroq, ya’ni jarayonlar avvalgiga qaraganda tezroq bajarilmoqda.

    Agar eski va yangi grafiklardagi baland/keng binafsharang sohalar miqdorini taqqoslasangiz, biz naq 200% unumdorlik o‘sishiga guvoh bo‘lamiz! Shuningdek, barcha yo‘nalishlarda unumdorlik oshganini ko‘rmoqdamiz. Umuman yomon emas!

    Xulosalar va olingan saboqlar

    Rostini aytsak, Ann bu masalani ko‘tarmaguncha PBS’da unumdorlik muammolari bor deb o‘ylamagan edik. Asosan shuning uchunki, biz dasturlashga mo‘ljallangan kompyuterlardan foydalanganmiz va unumdorlik to‘siqlari unchalik sezilmagan. O‘tmishga nazar tashlab shuni aytish mumkinki, unumdorlikni tekshirish eng asosiy ustuvor vazifalardan biri bo‘lishi kerak edi. Ammo hech bo‘lmaganda hozir, 4.3 versiyasidan boshlab bu hal qilindi. ?

    O‘zining WordPress plaginining unumdorligini yaxshilamoqchi bo‘lganlar, ayniqsa siz ham ko‘p miqdorda JavaScript ishlatayotgan bo‘lsangiz, ushbu tajribadan olingan xulosalarim quyidagicha:

    1. Reflow keltirib chiqaradigan xususiyatlar/funksiyalarga chaqiruvlarni cheklang/keshlang. Qo‘llanma sifatida bundan foydalaning: What forces layout/reflow. The comprehensive list.
    2. DOM uslublariga «o‘qish» va «yozish» amallarini birgalikda guruhlang. Buni siz uchun bajarishi uchun FastDom‘dan foydalaning.
    3. Chrome’ning Timeline profayleridan foydalaning va reflow’lar (binafsharang sohalar) iloji boricha kam bo‘lishiga ishonch hosil qiling.
  • Nega biz EDD’dan Freemius’ga o’tdik

    Nega biz EDD’dan Freemius’ga o’tdik

    When Page Builder Sandwich was launched in 2016, we were using Easy Digital Downloads. In 2017, we moved to Freemius. Here’s why we switched:

    EDD nima va nega biz uni tanladik?

    Easy Digital Downloads (EDD) — WordPress uchun mashhur mustaqil (self-hosted) elektron tijorat / WooCommerce muqobilidir. Birlamchi holatida EDD yordamida WordPress mahsulotini sota olmaysiz, biroq uning Software Licensing kengaytmasi uni plaginlarni sotish uchun ayni muddao qiladi. Kengaytma litsenziya kalitlarini yaratish va tekshirishni ham o‘z zimmasiga olgan.

    EDD, shuningdek, mijozlarga mahsulotimizni to‘g‘ridan-to‘g‘ri veb-saytdan xarid qilish imkonini bergani hamda ularga tizimga kirib xaridlar tarixini ko‘rishlari mumkin bo‘lgan shaxsiy hisob sahifasini taqdim etgani sababli ham yaxshi ishladi.

    Since it worked well, and since we’re a big fan of Pippin Williamson, this was Sandwich’s first option.

    U Freemius bilan solishtirganda qanday ishlaydi va biz qachon o‘tdik?

    2016-yilda Freemius’ning yetakchi dasturchisi va hammuassisi Vova Feldman bizga Freemius haqida batafsil ma’lumot yozib, bu shunchaki elektron tijorat yechimidan ko‘proq narsa ekanligini tushuntirdi — u tahlil va tushunchalar (insights) yechimi, marketingni avtomatlashtirish vositasi hamda mijozlar bevosita WordPress boshqaruv panelidan siz bilan bog‘lanishlari uchun o‘rnatilgan qo‘llab-quvvatlash vositasi kabi boshqa imkoniyatlarni ham taqdim etadi.

    Dastlab biz faqat Freemius imkoniyatlaridan biri bo‘lgan ‘Freemius Insights’dan foydalandik, chunki bizni tahliliy ma’lumotlar qiziqtirar edi. Bu haqiqatan ham o‘sha paytda odamlar nima sababdan plaginimizni o‘chirib tashlayotganini tushunishimizga yordam berdi.

    Shuningdek, bu mijozlar uchun tezkor so‘rovnomalar orqali ma’lumotlarga asoslangan qarorlar qabul qilishimizga ko‘maklashdi. Masalan, agar foydalanuvchi plaginimizni o‘chirmoqchi bo‘lsa, tezkor fikr-mulohaza oynasi paydo bo‘lib, nima sababdan o‘chirishni tanlaganini so‘raydi. Bu fikr-mulohazalar mijozlarimizning ehtiyojlarini tushunishga yordam berdi.

    Ushbu jarayonda biz foydalanuvchilar plaginni faollashtirgandan so‘ng nima qilishni bilmaganliklari sababli o‘chirib tashlayotganini aniqladik. O‘chirishlar sonini kamaytirish uchun shunchaki xush kelibsiz ekrani va video qo‘llanma qo‘shdik. Juda oson.

    Tahlillar o‘z yo‘liga, ammo Freemius platformasi WordPress mahsulotlaringizni yanada samarali sotishda darhol foydalana oladigan tarzda yaratilgan!

    Ijobiy va salbiy tomonlarini chamalab ko‘rib, 2017-yil yanvar oyida Freemius’ga o‘tdik. Mana sababi:

    Freemius mijozlarga mahsulotingizni bevosita o‘zlarining WordPress boshqaruv panelida xarid qilish imkonini beradi

    Instead of being redirected to an external website, Freemius allows customers to purchase straight from their WordPress Dashboard. This made huge impact on sales of course! Generally, the fewer things the user has to do to purchase something, the more likely it is that they actually make the purchase.

    EDD bilan Sandwich’ga qiziqqan foydalanuvchilar litsenziya kalitini sotib olish uchun sahifa yaratish jarayonini to‘xtatib, tashqi veb-saytga o‘tishlari kerak edi. Ular xaridni yakunlashdan oldin bir necha marta bosishlari — va yana ko‘plab chalg‘ituvchi holatlarga duch kelishlari kerak bo‘lardi.

    Bundan farqli o‘laroq, Freemius bilan mijozlar Sandwich’ni sinab ko‘rayotgan paytlarining o‘zidayoq to‘g‘ridan-to‘g‘ri o‘zlarining WordPress boshqaruv panelidan xarid qilishadi — xarid qilish uchun boshqa saytga o‘tishga hojat yo‘q.

    Bu barcha qulayliklar xarid jarayonini mijozlar uchun o‘n baravar oson va qulay qilib, sotuvlarning sezilarli darajada oshishiga olib keldi.

    Dasturchilar ham sizning muvaffaqiyatingizdan manfaatdor

    Freemius yordamida mahsulotingizni sotish tekin emas. Har bir savdo uchun ular daromadingizdan kichik bir ulush oladilar, bu esa to‘lov va amaliyot to‘lovlariga ketadi. Bu ularning biznes modelidir.

    Ammo bu yerda e’tibor qaratish kerak bo‘lgan muhim jihat shundaki, ularning biznes modeli sizning WordPress mahsulotingiz muvaffaqiyati asosiga qurilgan.

    Vova va uning jamoasi juda ko‘makchi. Ular bizga ko‘proq daromad olish, plaginimizni yaxshilash va Freemius’dan o‘z manfaatimiz yo‘lida qanday foydalanish bo‘yicha o‘z maslahat hamda tavsiyalarini berdilar. Ularning ma’lumot ulashishdagi saxiyligi Sandwich’ning o‘sishiga munosib hissa qo‘shdi.

    Xulosa: Agar siz monetizatsiya qilishni xohlaydigan WordPress mahsuloti muallifi bo‘lsangiz, Freemius eng to‘g‘ri yo‘ldir.

    Page Builder Sandwich sahifa yaratish jarayoni orqali tushunarlilik va foydalanuvchi tajribasini yuksaltirishga intiladi. Freemius ham xuddi shunday qiladi: U xaridorlar va sotuvchilar uchun tajribani birdek sezilarli darajada osonlashtiradi.

    2017-yilda Freemius’ga o‘tganimizdan beri mijozlarimiz yanada mamnun, o‘chirishlar ko‘rsatkichi ancha past va umumiy sotuvlar yaxshiroq bo‘ldi. Agar siz WordPress plaginlaringiz yoki mavzuleringizni monetizatsiya qilmoqchi bo‘lsangiz, Freemius shubhasiz eng yaxshi tanlovdir.

    Uning imkoniyatlari raqobatchilarnikidan ustunroq. U bizga rivojlanish uchun yanada oqilona qarorlar qabul qilishga yordam berdi. Ularning jamoasi ajoyib darajada qo‘llab-quvvatlaydi. Agar siz WordPress mahsuloti muallifi bo‘lsangiz, Freemius bilan biz his qilgan ijobiy natijalarni siz ham his etasiz degan umiddamiz.