私は PHP が初めてで、ニーズに合わせて WordPress プラグインの既存の PHP コードを編集する必要があります。
フックについて私が知っていることは、関数内に追加の関数を追加できるということです。
しかし今、PHP ファイル全体を編集して、ページの途中にコード行を追加する必要があります。
私が直面している問題は、コードがフックを使用する関数のセットではなく、代わりに次のようになっていることです。
<?php
global $current_user;
master_user_content_block_start(array(
'title' => esc_html__('My Profile', 'master'),
'title-link-text' => esc_html__('Edit Profile', 'master'),
'title-link' => master_get_template_url('user', array('page_type'=>'edit-profile'))
));
$profile_list = array(
'full_name' => esc_html__('Name', 'master'),
'gender' => esc_html__('Gender', 'master'),
'birth_date' => esc_html__('Birth Date', 'master'),
'country' => esc_html__('Country', 'master'),
'email' => esc_html__('Email', 'master'),
'phone' => esc_html__('Phone', 'master'),
'contact_address' => esc_html__('Contact Address', 'master'),
);
echo '<div class="master-my-profile-wrapper" >';
echo '<div class="master-my-profile-avatar" >';
$avatar = get_the_author_meta('master-user-avatar', $current_user->data->ID);
if( !empty($avatar['thumbnail']) ){
echo '<img src="' . esc_url($avatar['thumbnail']) . '" alt="profile-image" />';
}else if( !empty($avatar['file_url']) ){
echo '<img src="' . esc_url($avatar['file_url']) . '" alt="profile-image" />';
}else{
echo get_avatar($current_user->data->ID, 85);
}
echo '</div>';
$even_column = true;
echo '<div class="master-my-profile-info-wrap clearfix" >';
foreach( $profile_list as $meta_field => $field_title ){
$extra_class = 'master-my-profile-info-' . $meta_field;
$extra_class .= ($even_column)? ' master-even': ' master-odd';
echo '<div class="master-my-profile-info ' . esc_attr($extra_class) . ' clearfix" >';
echo '<span class="master-head" >' . $field_title . '</span>';
echo '<span class="master-tail" >';
if( $meta_field == 'birth_date' ){
$user_meta = master_get_user_meta($current_user->data->ID, $meta_field, '-');
if( $user_meta == '-' ){
echo $user_meta;
}else{
echo master_date_format($user_meta);
}
}else if( $meta_field == 'gender' ){
$user_meta = master_get_user_meta($current_user->data->ID, $meta_field, '-');
if( $user_meta == 'male' ){
echo esc_html__('Male', 'master');
}else if( $user_meta == 'female' ){
echo esc_html__('Female', 'master');
}
}else{
echo master_get_user_meta($current_user->data->ID, $meta_field, '-');
}
echo '</span>';
echo '</div>';
$even_column = !$even_column;
}
echo '</div>';
プラグインの更新時に問題が発生しないように、追加の php ファイルを使用してメイン ファイルの内容を変更せずにこのページのコードを編集するにはどうすればよいですか。
編集例 生年月日フィールドを削除し、男性という単語を大人に、女性という単語を子供に変更します。