GenerateBlocks 2.0, blok eklentisi

 
GenerateBlocks 2.0

24 Kasım 2024'te ilk alpha.1 sürümüyle başlayan ve başından beri test ettiğim uzun bir döngünün ardından 12 Şubat'ta GenerateBlocks 2.0 'ın (GB) son sürümü yayınlandı.

Sürüm 2.0, sitelerin iyi optimize edilmesini sağlamak için "kaputun altında" büyük iyileştirmeler gizleyenlerden biridir. Sürüm 2.0, sürüm 1.0 bloklarını korumanıza ve hatta gerekirse bunlara geri dönmenize olanak tanır.

Blok konfigürasyonlarının "görsel" dengesini henüz bulamamış gibi göründükleri için dik bir öğrenme eğrisi ile nihai performans ve kullanılabilirlik hala bitmemiş işleri olsa da, bu kusursuz bir destek ve çok eksiksiz bir dokümantasyon ile telafi edilmektedir.

Tom Usborne tarafından oluşturulan bu blok eklentisi çok genç. İki yaşından biraz daha büyüktür. 1.0 sürümü 30 Ağustos 2022'de yayınlandı.

Bu durum, GeneratePress (GP) ile birlikte, temiz, hafif ve hızlı bir kod sunduğu için WordPress tasarımınızın bir kısmını veya neredeyse tamamını tasarlamak ve/veya oluşturmak için ideal bir kombinasyon haline gelmesini engellemedi. Bugün hala "niş" blogculardan ev blogcularına kadar çok sayıda WordPress kullanıcısı tarafından tercih edilmektedir.

GenerateBlocks'un Elementor veya diğer sözde "Site Oluşturucular" gibi bir oluşturucu olmadığı konusunda ısrar etmeliyiz, ancak bu şekilde kullanılabilmesine rağmen, geleneksel "sürükle ve bırak" ile hiçbir ilgisi olmayan farklı bir yaklaşımdır. Bu bir blok eklentisidir.

GB+GP hakkında gözden geçirilmesi ve alkışlanması gereken bir şey varsa, o da destekleridir. Kullanıcılarını çok iyi anladılar ve müşteri hizmetleri söz konusu olduğunda tam isabet kaydettiler. Destek forumlarından neredeyse her şeyi çözebilirsiniz.

Her zaman hatalarla veya kullanımla ilgili şüphelerle ilgili olmayan konularda bile size yardımcı olurlar, ayrıca belirli şeyleri inşa etmek veya yeniden tasarlamak söz konusu olduğunda da yardımcı olurlar. Her zaman dostça ve kararlı bir muamele ile. Ve en iyisi de tüm bu sorulara, tartışmalara ve çözümlere, ücretli sürümlerini kullanmasalar bile herkes tarafından başvurulabilmesidir.

Sadece bu bile şablonunuz ve blok eklentiniz için ödediğiniz her dolara değer.

Gelecek için bir hatırlatma ve "yeniden danışma" olarak, destek forumunuzdaki bu sorgulardan birinin bazı dizeleri dinamik olarak çevirmeme izin veren bir çözüm örneğini (ve bu ilk değil) buraya bırakıyorum. Bunlar çevrilmesi gereken son dizelerdi ve direniyorlardı.

Büyük olasılıkla, programlama bilgisine sahip biri için burnunu kaşımak gibi bir şey, ancak benim gibi temel bilgiye sahip ileri düzey tamirciler için gerçek bir hediye.

Polylang kullanarak GenerateBlocks "Text" bloğundaki metni çevirme

Polylang eklentisi, istediğiniz yere karşılık gelen çevirileri eklemek için dizeleri kaydetmenize olanak tanır. Bunu yapmak için aşağıdaki gibi dizeleri temanın functions.php dosyasına eklemeniz yeterlidir:

pll_register_string('Publicado:', 'Published:');

pll_register_string('Actualizado:', 'Updated:');

Böylece, Diller/çeviriler altında Polylang adlı bir grupta çeviri için zaten görüneceklerdir:

GenerateBlocks 2.0, blok eklentisi 1

Ancak bu yeterli değildir, şimdi bu çevirilerin her birini görüntülemek için PHP kodu ile çağırmanız gerekir.

Görev, o sırada GB 2.0 "Metin" bloğu (eski adıyla "Başlık") olan bir GP Öğesine eklediğim Yayınlandı: ve Güncellendi: dizelerini her dile dinamik olarak çevirmektir.

Structure of the GB Text block

Publicado: {{post_date}} | Actualizado: {{post_date type:modified}} |
GenerateBlocks 2.0, blok eklentisi 2

Sorun şu ki, sayfanın görüntülendiği dile bağlı olarak bu iki kelimeyi değiştirmek için PHP Polylang çağrılarını eklemenin bir yolunu bulamadım:

<?php echo pll__('Published:'); ?>
<?php echo pll__('Updated:'); ?>

GB bloğu PHP kodunu çalıştırmıyor ve bunu bir kısa kodla yerleştirme imkanı yoktu. Bu noktada kendimi bir çözüm bulamadığımı ilan ettim ve destek forumuna danışmaya karar verdim.

Ve birkaç mesajdan sonra çözüm geldi.

1. Text" bloğuna bir CSS sınıfı eklenir. Bu örnek için kullandığımız: my-post-dates

2- Bu filtre şablonun functions.php dosyasına eklenir:

add_filter( 'render_block', function( $block_content, $block ) {
    if (  ! empty( $block['attrs']['className'] ) && 'my-post-dates' ===  $block['attrs']['className'] )  {
		
             $published = pll__('Published:');	
             $updated = pll__('Updated:');

            // Ensure these values are translated, fallback to default if empty
             $translated_published = !empty($published) ? $published : 'Published:';
             $translated_updated = !empty($updated) ? $updated : 'Updated:';

	     $block_content = str_replace('Publicado', $published, $block_content);
             $block_content = str_replace('Actualizado', $updated, $block_content);
     }

      return $block_content;
}, 10, 2 );

Ve işte bu kadar. Şimdi, bu iki kelime kullandığınız dillerden seçilen dilde görüntülenecektir.

Bu yazı iki bağlı kuruluş bağlantısı içermektedir.

Suscríbete para recibir los post en tu email sin publicidad

İlgili makaleler

Polylang için beş faydalı snippet

Polylang için beş faydalı snippet

GeneratePress ile Google Fontları yerel olarak barındırın

GeneratePress ile Google Fontları yerel olarak barındırın

Polylang ile herhangi bir dizeyi çevirin

Polylang ile herhangi bir dizeyi çevirin

Este blog se aloja en LucusHost

LucusHost, el mejor hosting