sunny-plum
@sunny-plum

Carbon fields 3.15, как добавить изображение в страницу? Получается только в настройки темы, через carbon_get_post_meta не работает, в чем ошибка?

Carbon fields 3.15, как добавить изображение в страницу? Получается только в настройки темы, через carbon_get_post_meta не работает, в чем ошибка?
Мне нужно добавлять изображение в каждую страницу, но получается лишь добавить через настройку темы, однократно.
Подскажите, пожалуйста.

код, выводящий изображение:
в файле header.php
<?php 
$data_arr = carbon_get_theme_option( 'rule_bg' );
?>
<img src="<?php echo $data_arr; ?>" alt="" />

в файле function.php
<?php // Theme Functions

use Carbon_Fields\Container;
use Carbon_Fields\Field;
add_action( 'carbon_fields_register_fields', 'crb_attach_theme_options' );
function crb_attach_theme_options() {
Container::make( 'theme_options', __( 'Theme Options' ) )
->add_fields( array(
Field::make( 'text', 'crb_text', 'Text Field' ),
Field::make("image", "rule_bg", "Фото")
    ->set_value_type( 'url'),
) );
}


код, не работающий:
в файле header.php
<?php $data_arr = carbon_get_post_meta( 'photo' );?>
<img src="<?php echo $data_arr; ?>" alt="" />


в файле function.php
<?php // Theme Functions

use Carbon_Fields\Container;
use Carbon_Fields\Field;
add_action( 'carbon_fields_register_fields', 'crb_attach_post_meta' );
function crb_attach_post_meta() {

Container::make( 'post_meta', __( 'Homepage Settings' ) )
->show_on_post_type( array('page', 'post' ))
	->add_fields( array(
	 Field::make("image", "photo", "Фото")
		->set_value_type( 'url'),
));
}
  • Вопрос задан
  • 201 просмотр
Решения вопроса 2
@its2easyy
Для post meta полей функция carbon_get_post_meta( $id, $name ), попробуйте
carbon_get_post_meta( get_the_ID(), 'photo' )
возможно get_the_ID в хедере не будет работать, тогда
carbon_get_post_meta( get_queried_object_id(),  'photo' )
Ответ написан
Merakaa
@Merakaa
Web dev
<?php
$img = carbon_get_post_meta(get_the_ID(), 'img'); // получим ID картинки из опции темы
$img_full = wp_get_attachment_image_url($img, 'full'); // ссылка на полный размер картинки по ID вложения
?>


<img src="<?php echo $support_img_full;?>" alt="">
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы