Как задать ширину столбцов в шаблоне блока CPT?
У меня есть шаблон блока для пользовательского типа записи.
Когда основной блок столбцов WP добавил поддержку разной ширины, я попытался настроить шаблон следующим образом (я изменил тип записи на "опубликовать" здесь на случай, если кто-то еще планирует попробовать его):
<?php
add_action('init', 'wpse_register_post_template');
function wpse_register_post_template() {
$post_type_object = get_post_type_object('post');
$post_type_object->template = array(
array('core/columns', array(),
array(
array('core/column', array('width' => '33.33'), array(
array('core/paragraph', array()),
)),
array('core/column', array('width' => '66.66'), array(
array('core/paragraph', array()),
)),
)
)
);
}
?>
Однако, когда я добавляю новую запись, это фактически не применяется к ширине столбцов. В конечном итоге они представляют собой два столбца шириной 50%, в редакторе и на переднем конце, хотя база данных показывает внутреннюю столбцы имеют атрибуты "ширина", сохраненные правильно.
В базе данных это выглядит так -
<!-- wp:columns -->
<div class="wp-block-columns"><!-- wp:column {"width":"33.33"} -->
<div class="wp-block-column"><!-- wp:paragraph -->
<p>Left Col</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column -->
<!-- wp:column {"width":"66.66"} -->
<div class="wp-block-column"><!-- wp:paragraph -->
<p>Right Col</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->
В посте, где я вручную добавил блок столбцов в редакторе, чтобы я мог выбрать ширину 33%/66% в пользовательском интерфейсе, похоже, WP добавил встроенные стили в divs:
<!-- wp:columns -->
<div class="wp-block-columns"><!-- wp:column {"width":33.33} -->
<div class="wp-block-column" style="flex-basis:33.33%"><!-- wp:paragraph -->
<p>Left col</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column -->
<!-- wp:column {"width":66.66} -->
<div class="wp-block-column" style="flex-basis:66.66%"><!-- wp:paragraph -->
<p>Right col</p>
<!-- /wp:paragraph --></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->
Есть ли способ обновить шаблон CPT, чтобы добавленные блоки имели одинаковую разметку и, следовательно, имели разную ширину столбцов, когда я создаю новый CPT, а не чем каждый раз делать это вручную?
1 answers
Измените значение ширины столбца со строки на число, вот так
array('core/column', array('width' => 33.33)