欢迎使用WPSE。
首先要注意的是,您可能希望将为此功能编写的任何自定义代码放入a custom plugin. 这样,即使有一天您更改了使用的主题,该功能也是独立于主题的,并且对您可用。
现代的方式是创造a custom block, 它处理图表数据的保存和呈现。这可能需要大量的参与,具体取决于您想要创建自定义块的程度。
更简单的选择是创建a custom shortcode 它读取post元数据并返回图表的html标记。自定义块或短代码的好处在于,您可以将其放在帖子内容的任何位置—顶部、中部、底部—或多次使用。
一个简化的解决方案是使用the_content filter. 这样做的缺点是,图表将位于内容的顶部或底部。
您可能希望使用某种javascript图表库来处理图表的实际呈现。使用您最喜欢的搜索引擎查找一个(例如,谷歌js图表并查看出现的内容)。你需要enqueue 与库相关的js和css文件。
要访问快捷码或筛选器回调中的post meta,可以使用get_post_meta() 作用
下面是一个简化的短代码示例,
// add to custom plugin file or (child) theme functions.php file
add_shortcode( \'footag\', \'wpdocs_footag_func\' );
function wpdocs_footag_func( $atts ) {
// read post meta of the current post
// you could also pass the post id as a shortcode attribute ($atts)
$meta = get_post_meta( get_the_ID(), \'your_chart_data_meta_key\', true );
// helper variable to contain html output
$output = \'\';
// do stuff, if chart data exists
if ( $meta ) {
$output = \'<div class="chart">some html markup here</div>\';
}
// Shortcode should return not echo its output
return $output;
}