Değişim ihtiyacını ilk belirlediğimizde, görev basit görünüyordu: "En üst bloğu değiştir ve harekete geçme çağrısını daha etkili hale getir." İlk bakışta bu hızlı bir çözüm gibi görünebilir, ancak kısa sürede bu küçük görevin sitenin yapısı ve tasarımıyla ilgili çok daha büyük temel sorunları ortaya çıkardığını fark ettik. Sorun sadece bir blok değildi; elden geçirilmesi gereken sitenin tüm mimarisiydi.
Web sitemiz zamanla, birleştirici bir tema veya şablon olmadan, çeşitli tasarımlar ve düzenler kullanılarak eklenen farklı sayfalarla oluşturulmuştu. Her sayfa tasarımında benzersizdi, bu yaratıcı gelebilir ancak önemli bir soruna yol açtı: tutarsızlık. Sadece en üstteki blok için yeni bir tasarım yapıp sitenin geri kalanını olduğu gibi bırakırsak, bu bloğu 700'den fazla sayfa ve gönderide manuel olarak güncellemek anlamına gelirdi. Daha da kötüsü, bu manuel işlemi gelecekte değişiklik yapmak istediğimiz her seferinde tekrarlamak zorunda kalacaktık. Her birinin en son güncellemelere sahip olduğundan emin olmak için yüzlerce sayfayı taramanın ne kadar verimsiz olduğunu hayal edin. Eski siteyle çalışmaya devam etmenin sürdürülebilir olmayacağı kısa sürede anlaşıldı.
Her bir sayfayı güncellemenin lojistiğinin ötesinde, genel kullanıcı deneyimini de göz önünde bulundurmamız gerekiyordu. Günümüzde kullanıcılar bir web sitesini ziyaret ettiklerinde kusursuz, tutarlı deneyimler bekliyor. Bir sayfayı aşağı kaydırdıklarında ve tasarımın tutarsız olduğunu gördüklerinde (her blok farklı stiller kullanıyor) bu kopuk ve profesyonel olmayan bir izlenim yaratıyor. Daha da kötüsü, bir kullanıcı bir sayfadan diğerine geçtiğinde düzenin ve tasarımın tamamen farklı olduğunu fark ettiğinde, bu bir düzensizlik hissini pekiştiriyor.
Tutarsızlık düzenin ötesine uzanıyordu. Sitedeki görsellerin çoğu güncelliğini yitirmişti, kötü tasarlanmıştı veya hatta sinir ağları tarafından uygunsuz bir şekilde oluşturulmuştu. Bu görseller modern tasarım standartlarıyla uyumlu değildi ve bunları değiştirmek de bir başka zorlu görevdi. Kötü görsellerin kullanımı sitenin genel kalitesini kötü yansıtıyordu ve kullanıcılarda sunduğumuz ürün veya hizmet hakkında olumsuz bir izlenim bırakıyordu.
Elementor gibi bir araç kullanarak siteyi kapsamlı bir şekilde güncellemenin basit bir yolu yoktu. Her sayfa ve blok kendi satır içi stillerini içeriyordu, bu da değişikliklerin küresel olarak yapılamayacağı anlamına geliyordu. Sitenin stilini güncellemek isteseydik, her bir sayfayı tek tek inceleyip her bloğu manuel olarak güncellememiz gerekirdi, bu da zaman alıcı ve verimsiz olurdu. Bunu aklımızda tutarak, tek çözümümüzün sıfırdan yeni bir web sitesi oluşturmak olduğu ortaya çıktı. Bu, aynı URL'leri koruyarak ancak yeni, tutarlı ve kolayca güncellenebilir bir tasarımla tüm içeriği aktarmamıza olanak tanırdı.
Elementor, WordPress için en popüler sayfa oluşturucularından biridir. Yüzeysel olarak, hızlı ve kolay sayfa oluşturma olanağı sağlayan harika bir araç gibi görünüyor. Ancak, onunla kapsamlı bir şekilde çalıştıktan sonra, Elementor'dan uzaklaşmaya ve bunun yerine özel olarak oluşturulmuş bir web sitesi seçmeye karar vermemize neden olan birkaç sınırlamayla karşılaştık.
Elementor'un Sınırlamaları ve Zorlukları:
diğerlerinin içindeki konteynerler her biri kendi stil kümesine sahip öğeler. Bu, yükleme hızını, sayfa performansını ve nihayetinde web sitesinin SEO sıralamasını olumsuz etkileyen şişkin bir yapıyla sonuçlanır. Hız testleri yaptığımızda, sonuçlar sürekli olarak zayıftı ve bunun büyük kısmı Elementor tarafından üretilen ağır koddan kaynaklanıyordu.
Tüm bu zorluklar aklımızdayken, daha sağlam bir çözüme ihtiyacımız olduğu açıkça ortaya çıktı. Elementor olmadan yeni, bağımsız bir web sitesi inşa etme kararı aldık ve daha sürdürülebilir ve esnek bir yaklaşım seçtik.
Yeni siteyi sıfırdan inşa etmek bize sayfalar oluşturmak için temiz ve akıcı bir süreç oluşturma fırsatı verdi. Yeni sistemde, bir sayfa oluşturmak basittir:
Bu süreç basit ama esnektir. Elementor'un karmaşık blok sistemine güvenmek yerine, WordPress'teki içerik düzenleyicisi çok daha temizdir ve hızlı güncellemeler ve kolay özelleştirmeye olanak tanır. Düzenleyicinin altında, tüm sitede tutarlılığı korumak için önceden yapılandırılmış Gelişmiş Özel Alanlar (ACF) için ayarlar bulunur.
ACF, sayfanın her bölümü için başlık, metin, resim ve düğme etiketlerini kolayca ayarlayabileceğiniz İçerik 1…İçerik 15 gibi bloklarla esnek içerik bölümleri oluşturmamızı sağlar. Bu bloklar, resimlerin ve metnin konumunu otomatik olarak değiştirerek düzenin manuel ayarlamalar gerektirmeden görsel olarak ilgi çekici kalmasını sağlar.
Görseller için, sitenin ana renklerine otomatik olarak bir degrade uygulayan bir renk eşleştirme sistemi uyguladık. Bu, tüm görsellerin genel estetikle uyumlu olmasını sağlar. Renklerin bozulmadan kalması gereken logolar veya ekran görüntüleri için, degradeyi geçersiz kılan bir "renkleri koru" seçeneği vardır.
Bu sistem, tüm sayfalarda tasarım tutarlılığını korurken içerik yönetimini basitleştirir.
Yeni sitede gönderi oluşturma, sayfa oluşturmayla aynı basitleştirilmiş süreci takip ediyor; sadece birkaç önemli fark var:
Tüm gönderilerin şablonu, her blog gönderisinin yapısını ve düzenini yöneten template-parts/content/content-single.php dosyasında bulunur. Bu tutarlı şablon, kolay güncellemelere olanak tanır ve tüm gönderilerin aynı tasarım yönergelerine uymasını sağlar.
ACF, yeni web sitemizin geliştirilmesinin önemli bir parçası oldu. WordPress yönetici paneli üzerinden kolayca yönetilebilen özel alanlar oluşturmamızı sağlıyor. content_1 gibi alanlar PHP kodunda referans alınarak her sayfa ve gönderi için doğru içeriği dinamik olarak çekmemizi sağlıyor.
Bu esneklik, siteyi etkin bir şekilde yönetebilmemizi ve güncelleyebilmemizi sağlarken, gerektiğinde özelleştirmeye yer bırakmamız açısından kritik öneme sahiptir.
Yeni sitede yaptığımız en önemli iyileştirmelerden biri A/B testinin uygulanmasıydı. A/B testi, sitenin iki versiyonunu karşılaştırarak hangisinin kullanıcılarda daha iyi performans gösterdiğini görmemizi sağlar. Bu, farklı renkleri, düğme şekillerini, arka planları veya hatta düzenleri test etmeyi içerebilir.
Bu işlevselliği URL'deki GET parametrelerini kullanarak uyguladık. Örneğin, iki özdeş reklam kampanyası oluşturulabilir, ancak farklı URL'lerle:
https://www.conveythis.com/?param=1
https://www.conveythis.com/?param=2
Kullanıcılar bu bağlantılara tıkladığında, parametre bir çerezde kaydedilir. Parametrenin değerine bağlı olarak, site sayfanın farklı sürümlerini, örneğin farklı düğme renkleri veya arka plan görüntüleri gösterecektir. Bu, kullanıcı tercihleri ve davranışları hakkında değerli veriler toplamamızı sağlar.
Tüm olaylar bir.csv
Dosyada ve MySQL veritabanında saklanan veriler, verileri analiz etmemize ve site iyileştirmeleri hakkında bilinçli kararlar almamıza olanak tanır.
Functions.php dosyasının temel kullanımlarından biri, içeriği daha etkili bir şekilde düzenlememize olanak tanıyan özel gönderi türleri ve taksonomiler oluşturmaktı. Yalnızca varsayılan WordPress yapısına (sayfalar ve gönderiler) güvenmek yerine, vaka çalışmaları, referanslar veya ürün özellikleri gibi belirli içerikler için özel türler sunduk. Bu, yalnızca içeriğimizi daha iyi organize etmekle kalmadı, aynı zamanda gezinmeyi ve ilgili bilgileri bulmayı kolaylaştırarak kullanıcı deneyimini de iyileştirdi.
Örneğin, vaka çalışmaları için özel bir gönderi türü oluşturmak amacıyla functions.php dosyasına aşağıdaki kodu ekledik:
fonksiyon create_case_study_post_type() {
register_post_type( 'vaka_çalışmaları',
sıralamak(
'etiketler' =>
sıralamak(
'name' => __( 'Vaka Çalışmaları' ),
'tekil_ad' => __( 'Vaka Çalışması' )
),
'genel' => doğru,
'arşiv_var' => doğru,
'yeniden yaz' => dizi('slug' => 'vaka çalışmaları'),
)
);
}
add_action( 'init', 'case_study_post_type' oluştur);
Bu, normal gönderilere benzer şekilde davranan ancak kendi arşivi ve taksonomi yapısı olan "Vaka Çalışmaları" adı verilen yeni bir gönderi türü yarattı.Functions.php'nin bir diğer kritik kullanımı, harici betikleri ve stilleri yüklemek ve web sitemizin tüm gerekli kütüphanelere ve çerçevelere sahip olmasını sağlamaktı. Örneğin, kaydırıcılar için Slick.js ve akıcı animasyonlar için AOS (Animate on Scroll) gibi kütüphaneleri entegre ettik. Bu varlıkları yalnızca ihtiyaç duyulduğunda (örneğin, belirli sayfalarda veya şablonlarda) seçici olarak yükleyerek gereksiz şişkinliği azalttık ve sayfa yükleme hızlarını iyileştirdik.
Stillerin ve betiklerin yüklenmesini şu şekilde hallettik:
işlev load_custom_scripts() {
// Belirli şablonlar için Slick kaydırıcısını yükle
eğer( sayfa_şablonu('şablon-slider.php') ) {
wp_enqueue_style( 'slick-css', get_template_directory_uri() . '/css/slick.css' );
wp_enqueue_script( 'slick-js', get_template_directory_uri() . '/js/slick.min.js', array('jquery'), '', true );
}
// AOS animasyonlarını site genelinde yükle
wp_enqueue_style( 'aos-css', get_template_directory_uri() . '/css/aos.css' );
wp_enqueue_script( 'aos-js', get_template_directory_uri() . '/js/aos.js', dizi('jquery'), '', doğru );
}
add_action( 'wp_enqueue_scripts', 'özel_scripts'i_yükle' );
Koşullu kontrolleri kullanarak (örneğin,sayfa_şablonu_mu()
), gereksiz scriptlerin site genelinde yüklenmemesini sağlayarak performansı optimize ettik.Site içeriğini yöneten teknik olmayan kullanıcılar için esnekliği artırmak amacıyla, functions.php aracılığıyla özel kısayollar ekledik. Bu kısayollar, kullanıcıların koda dokunmadan karmaşık işlevler veya biçimlendirilmiş öğeler eklemesine olanak sağladı. Örneğin, sitenin herhangi bir yerine özel düğmeler eklemek için bir kısayol oluşturduk:
işlev özel_düğme_kısa_kodu($atts) {
$atts = kısa_kod_atts(
sıralamak(
'etiket' => 'Buraya Tıklayın',
'url' => '#',
),
$atts,
'özel_düğme'
);
' ' . esc_html( $atts['etiket'] ) . ' '; döndür
}
add_shortcode('özel_düğme', 'özel_düğme_kısa_kodu');
Bu kısa kod, editörlerin özel metin ve URL'ler içeren düğmeler eklemesini kolaylaştırarak, tasarımı bozmadan hızlı ayarlamalar yapılmasına olanak sağladı.Web sitesi yenilemesi sırasında en önemli odak noktası SEO'yu ve genel site performansını iyileştirmekti. Elementor kullanılarak oluşturulan orijinal site, şişkin kod ve optimize edilmemiş görseller nedeniyle yavaş yükleme süreleri ve yetersiz SEO uygulamalarıyla ilgili sorunlar yaşıyordu.
Yeni sitemizin SEO dostu olmasını sağlamak için en başından itibaren birkaç iyi uygulamayı hayata geçirdik:
,
, vb.), arama motorlarının içerik hiyerarşisini kolayca ayrıştırıp anlayabilmesini sağlar. Bu, hem SEO sıralamaları hem de erişilebilirlik açısından özellikle önemlidir.fonksiyon add_schema_markup() {
yankı '
{
"@context": "http://schema.org",
"@type": "Kuruluş",
"isim": "ConveyThis",
"url": "https://www.conveythis.com",
"logo": "https://www.conveythis.com/logo.png",
"sameAs": [
"https://www.facebook.com/conveythis",
"https://twitter.com/conveythis"
]
}
';
}
add_action( 'wp_head', 'add_schema_markup' );
Performans yalnızca kullanıcı deneyimi için değil aynı zamanda SEO sıralamaları için de kritik bir faktördür. Site hızını iyileştirmek için birkaç adım attık:
Eski web sitesi, Elementor'un şişkinliği ve verimsiz veritabanı yapısı nedeniyle önemli miktarda "çöp" veri biriktirmişti. Yeni sitenin sorunsuz çalışmasını sağlamak için kapsamlı bir veritabanı temizliği ve optimizasyonu gerçekleştirdik.
Daha önce de belirtildiği gibi, Elementor'u devre dışı bıraktıktan sonra bile stilleri ve ayarları hala veritabanına gömülüydü. Bu fazla veriyi silmek ve veritabanını temizlemek için özel sorgular kullandık. Ayrıca, zaman içinde biriken kullanılmayan medya dosyalarını, yayın revizyonlarını ve süresi dolmuş geçicileri kaldırdık.
Ayrıca, sık sorgulanan sütunlara dizinler ekleyerek veritabanını optimize ettik ve veritabanı sorgularının daha hızlı ve daha verimli olmasını sağladık. Örneğin, bir dizin eklemekgönderi_tarihi
Sütun, son yazılarla ilgili sorguları hızlandırdı ve blog sayfalarımızın performansını artırdı.
Sıfırdan yeni bir web sitesi oluşturma kararı, eski sitenin kısıtlamaları ve verimsizlikleri tarafından yönlendirildi. Tasarım tutarsızlıkları, şişkin stiller ve Elementor'un neden olduğu performans sorunları nedeniyle temayı değiştirmek uygulanabilir bir seçenek değildi. Özel geliştirme ve Gelişmiş Özel Alanlar ile yeni bir site oluşturarak, kullanıcı deneyimini geliştirirken akıcı güncellemeler ve A/B test işlevselliği sağlayan daha verimli, tutarlı ve profesyonel bir web sitesi elde ettik. Bu yeni site, gelecekteki büyüme ve iyileştirmeler için sağlam bir temel sağlıyor.
Çeviri, sadece dilleri bilmenin çok ötesinde, karmaşık bir süreçtir.
İpuçlarımızı takip ederek ve ConveyThis etiketini kullanarak, çevrilen sayfalarınız hedef kitlenizle yankı bulacak ve hedef dilde yerel bir dil gibi hissedilecektir.
Çaba gerektirse de sonuç ödüllendiricidir. Bir web sitesini çeviriyorsanız, ConveyThis otomatik makine çevirisiyle size saatler kazandırabilir.
ConveyThis'i 7 gün boyunca ücretsiz deneyin!