Я пытаюсь создать дополнительные таблицы профиля на странице профиля подключаемого модуля WordPress Ultimate Member. Я играл со следующим кодом для создания 1 дополнительной вкладки с контентом, однако я пытался сделать эту работу для нескольких вкладок, и она, похоже, не работает. Как я могу заставить эти функции работать на 2 или даже 3 вкладки с содержанием ???
Следующий код - это то, что я использую в своих функциях. php file:
/**
* Add a new Profile tab
* @param array $tabs
* @return array
*/
function um_mycustomtab_add_tab( $tabs ) {
/**
* You could set the default privacy for custom tab.
* There are values for 'default_privacy' atribute:
* 0 - Anyone,
* 1 - Guests only,
* 2 - Members only,
* 3 - Only the owner
*/
$tabs[ 'mycustomtab' ] = array(
'name' => 'Add Chronicle',
'icon' => 'um-faicon-pencil',
'default_privacy' => 2,
);
UM()->options()->options[ 'profile_tab_' . 'mycustomtab' ] = true;
return $tabs;
}
add_filter( 'um_profile_tabs', 'um_mycustomtab_add_tab', 1000 );
/**
* Render tab content
* @param array $args
*/
function um_profile_content_mycustomtab_default( $args ) {
$action = 'mycustomtab';
$fields_metakey = array(
'description'
);
$nonce = filter_input( INPUT_POST, '_wpnonce' );
if( $nonce && wp_verify_nonce( $nonce, $action ) && um_is_myprofile() ) {
foreach( $fields_metakey as $metakey ) {
update_user_meta( um_profile_id(), $metakey, filter_input( INPUT_POST, $metakey ) );
}
UM()->user()->remove_cache( um_profile_id() );
}
$fields = UM()->builtin()->get_specific_fields( implode( ',', $fields_metakey ) );
?>
<div>
<?php echo do_shortcode( "[wpuf_form id='134']" ); ?>
</div>
<?php
}
add_action( 'um_profile_content_mycustomtab_default', 'um_profile_content_mycustomtab_default' );