这是我第一次尝试在自定义程序中实现自定义面板,所以请与我赤裸裸。。。简而言之,我正在对我的网站进行儿童主题化,并希望对我博客帖子的父主题进行基本修改。它现在的工作方式是,当你将鼠标悬停在一篇博客文章上时,会有一个字体很棒的图标显示在覆盖的中间。。。我计划做的是用我的自定义上传图像替换字体awesome图标,我会为自定义程序编写脚本。
我已成功地将该部分添加到定制器,它允许我上载徽标,但当我尝试将上载的图像输出到主题中时:
<?php echo get_theme_mod( \'hbps_blog_overlay_logo\' ); ?>
。。。它只显示了一个数字-我甚至不知道这个数字指的是什么?
这是我在子主题中的完整标记functions.php
:
// Register Hotbox Customizer Options
function hbps_customize_register( $wp_customize ) {
$wp_customize->add_panel( \'hbps_custom_panel\',
array(
\'title\' => __( \'Extra Options\' ),
\'description\' => esc_html__( \'Additional options for the Flexia theme.\' ),
\'priority\' => 90,
)
);
$wp_customize->add_section( \'hbps_blog_section\',
array(
\'title\' => __( \'Blog Extras\' ),
\'description\' => esc_html__( \'Additional options for the blog section.\' ),
\'panel\' => \'hbps_custom_panel\',
\'priority\' => 160,
)
);
$wp_customize->add_setting( \'hbps_blog_overlay_logo\',
array(
\'default\' => \'\',
\'transport\' => \'refresh\',
\'sanitize_callback\' => \'absint\',
)
);
$wp_customize->add_control( new WP_Customize_Cropped_Image_Control( $wp_customize, \'hbps_blog_overlay_logo\',
array(
\'label\' => __( \'Post Overlay Logo\' ),
\'description\' => esc_html__( \'Upload a custom logo for the masonry layout that will appear when hovering over a blog post. - Recommended Size: 60x60 px\' ),
\'section\' => \'hbps_blog_section\',
\'width\' => 60,
\'height\' => 60,
\'button_labels\' => array(
\'select\' => __( \'Select Logo\' ),
\'change\' => __( \'Change Logo\' ),
\'default\' => __( \'Default\' ),
\'remove\' => __( \'Remove\' ),
\'placeholder\' => __( \'No logo selected\' ),
\'frame_title\' => __( \'Select Logo\' ),
\'frame_button\' => __( \'Choose Logo\' ),
)
)
) );
}
add_action( \'customize_register\', \'hbps_customize_register\' );
“悬停状态”博客帖子示例:
新Customizer部分的示例:
Extra Question:
不确定是否有办法解决这个问题,但我试图修改的代码包含在插件中,不幸的是,不是父主题。制作该主题的开发人员通过添加插件提供了pro版本,该插件可以聚合添加额外的功能。。。有什么办法可以从我的孩子主题中做到这一点吗?我似乎找不到一种不直接编辑插件代码的方法,而我不喜欢这样做。
谢谢你的帮助,肖恩