📅  最后修改于: 2023-12-03 15:21:14.938000             🧑  作者: Mango
在WordPress中,你可以通过自定义分类法来管理你的文章。当你需要为你的分类术语添加额外的元数据时,你可以使用自定义分类法字段(Custom Taxonomy Meta Fields)。
本文将介绍如何通过编写PHP代码,使用WordPress的Taxonomy类来获取自定义分类法字段。
首先,你需要为你的自定义分类法添加一个自定义字段。你可以使用WordPress自带的meta_box功能来添加自定义字段。下面是一个示例代码片段:
function add_my_custom_field() {
add_meta_box(
'my-custom-field',
'My Custom Field',
'render_my_custom_field',
'my_taxonomy',
'side'
);
}
function render_my_custom_field( $term ) {
$value = get_term_meta( $term->term_id, 'my_custom_field', true );
?>
<label for="my-custom-field"><?php _e( 'My Custom Field' ); ?></label>
<input type="text" name="my_custom_field" id="my-custom-field" value="<?php echo esc_attr( $value ); ?>" />
<?php
}
function save_my_custom_field( $term_id ) {
if ( isset( $_POST['my_custom_field'] ) ) {
update_term_meta(
$term_id,
'my_custom_field',
sanitize_text_field( $_POST['my_custom_field'] )
);
}
}
add_action( 'my_taxonomy_add_form_fields', 'add_my_custom_field' );
add_action( 'my_taxonomy_edit_form_fields', 'add_my_custom_field' );
add_action( 'edited_my_taxonomy', 'save_my_custom_field' );
add_action( 'create_my_taxonomy', 'save_my_custom_field' );
在这个示例中,我们添加了一个名为“my_custom_field”的字段。这将允许用户为每个“my_taxonomy”分类法术语添加一个自定义值。
一旦你的分类法中添加了自定义字段,你就可以使用WordPress的Taxonomy类来获取它们。下面是一个代码片段:
$terms = get_terms( array(
'taxonomy' => 'my_taxonomy',
'hide_empty' => false,
) );
foreach ( $terms as $term ) {
$my_custom_field = get_term_meta( $term->term_id, 'my_custom_field', true );
}
在这个示例中,我们首先通过使用“get_terms”函数来获取“my_taxonomy”分类法中的所有术语。然后,我们可以使用“get_term_meta”函数来检索每个术语的自定义字段值。
通过遵循上述步骤,你可以轻松地在WordPress中获取自定义分类法字段。这将允许你为你的文章添加更多的元数据,以进一步优化你的站点。