GenerateBlocks 2.0, блокове плъгин

No comments

 
GenerateBlocks 2.0

На 12 февруари беше пусната окончателната версия на GenerateBlocks 2.0 (GB) след дълъг цикъл, който започна на 24 ноември 2024 г. с първата му версия alpha.1, която тествах от самото начало.

Версия 2.0 е една от тези, които крият големи подобрения "под капака", за да поддържат сайтовете добре оптимизирани. Версия 2.0 ви позволява да запазите блоковете от версия 1.0 или дори да се върнете към тях, ако е необходимо.

Въпреки че все още се доизкусурява крайното изпълнение и използваемостта са все още недовършена работа, със стръмна крива на обучение, тъй като изглежда все още не са намерили "визуалния" баланс на блоковите конфигурации, това се компенсира от безупречната поддръжка и много пълната документация.

Тази блокова приставка, създадена от Том Усбърн, е много млада. Тя е на малко повече от две години. Нейната версия 1.0 е пусната на 30 август 2022 г.

Това не му е попречило, заедно с GeneratePress (GP), да се превърне в идеалната комбинация за проектиране и/или изграждане на част или почти целия дизайн на WordPress, тъй като предлага чист, лек и бърз код. И до днес тя се избира от голям брой потребители на WordPress - от "нишови" до домашни блогъри.

Трябва да подчертаем, че GenerateBlocks не е конструктор, като Elementor или други така наречени "конструктори на сайтове", въпреки че може да се използва като такъв, това е различен подход, който няма нищо общо с традиционното "плъзгане и пускане". Това е плъгин за блокове.

Ако има нещо, което е справедливо да се прегледа и приветства за GB+GP, това е тяхната подкрепа. Те са разбрали много добре своите потребители и са уцелили пирона в главата, когато става въпрос за обслужване на клиенти. От техния форум за поддръжка можете да решите почти всичко.

Те ви помагат дори при проблеми, които невинаги са свързани с грешки или съмнения относно употребата, а също и когато става въпрос за изграждане или препроектиране на конкретни неща. Винаги с приятелско и решително отношение. А най-хубавото е, че всички тези запитвания, дискусии и решения могат да бъдат консултирани от всеки, дори и да не използва платените им версии.

Само това си струва всеки долар, който сте платили за шаблона и плъгина за блокове.

Оставям тук, като напомняне и "реконсултация" за в бъдеще, пример за решение (и не е първият) на една от тези заявки във вашия форум за поддръжка, която ми позволи да преведе някои низове динамично. Те бяха последните, които трябваше да бъдат преведени, и се съпротивляваха.

Най-вероятно за някой с познания по програмиране това е като да си почеше носа, но за напредналите майстори с основни познания, като мен, това е истински подарък.

Превод на текст от блок GenerateBlocks "Текст" с помощта на Polylang

Плъгинът Polylang ви позволява да регистрирате низове, за да добавяте съответните им преводи, където пожелаете. За да направите това, просто добавете низовете по следния начин във functions.php на темата:

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

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

По този начин те вече ще се появяват за превод в група, наречена Polylang, в раздел Езици/преводи:

GenerateBlocks 2.0, блокове плъгин 1

Но това не е достатъчно, сега трябва да извикате всеки от тези преводи с код на PHP, за да ги покажете.

Задачата е да се преведат динамично на всеки език низовете Published: и Updated:, които добавих по това време в елемент на GP с блок GB 2.0 "Текст" (наричан по-рано "Заглавие").

Structure of the GB Text block

Publicado: {{post_date}} | Actualizado: {{post_date type:modified}} |
GenerateBlocks 2.0, блокове плъгин 2

Проблемът е, че не успях да намеря начин да добавя PHP Polylang повиквания, за да заменя тези две думи в зависимост от езика, на който се показва страницата:

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

Блокът GB не изпълнява PHP код и нямаше възможност да бъде поставен с шорткод. В този момент обявих, че не мога да намеря решение и реших да се консултирам с форума за поддръжка.

И след няколко съобщения решението дойде.

1. Добавя се CSS клас към блока "Текст". За този пример използваме: my-post-dates

2- Този филтър се добавя във functions.php на шаблона:

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 );

И това е всичко. Сега тези две думи ще бъдат показани на езика, избран от тези, които използвате.

Този пост съдържа две партньорски връзки.

Suscripción por email

Свързани статии

Пет полезни фрагмента за Polylang

Пет полезни фрагмента за Polylang

Локално хостване на шрифтове на Google с GeneratePress

Локално хостване на шрифтове на Google с GeneratePress

Преведете всеки низ с Polylang

Преведете всеки низ с Polylang

Вашият коментар

Este blog se aloja en LucusHost

LucusHost, el mejor hosting