示例#1
0
/**
 * Outputs input fields for setting groups
 * 
 * The function is used as a default callback function in add_settings_field() for groups
 */
function palo_setting_group_html($args)
{
    global $palo_options, $palo_textdomain;
    foreach ($args['field_ids'] as $field_id) {
        $field_html_id = "palo_setting_{$field_id}";
        $field_html_name = "palo_options[palo_setting_{$field_id}]";
        $field_html_value = assign_if_exists('palo_setting_' . $field_id, $palo_options, '');
        /**
         * I tought this was required for settings to be saved, it's not
         */
        palo_input_form_field($field_html_name, 'id=' . $field_html_id . '&label=' . $field_id . '&p=1' . '&value=' . $field_html_value);
    }
}
示例#2
0
/**
 * Creates the output for [pa_profile]
 * 
 * @return string the shortcode generated HTML code
 */
function palo_shortcode_frontend_profile_form()
{
    global $palo_helper, $palo_textdomain;
    $palo_helper['enqueue_front_css'] = true;
    /**
     * Load user
     */
    $user = wp_get_current_user();
    /**
     * Fallback for guest users
     */
    if (!$user->ID) {
        return sprintf('<a href="%s">%s</a>', wp_login_url(), __('Login to view profile page', $palo_textdomain));
    }
    /**
     * Reload user to force reading any info saved during init
     */
    $user = get_userdata($user->ID);
    $user_bio = get_the_author_meta('description', $user->ID);
    $user_public_display = array();
    $user_public_display['display_nickname'] = $user->nickname;
    $user_public_display['display_username'] = $user->user_login;
    if (!empty($user->first_name)) {
        $user_public_display['display_firstname'] = $user->first_name;
    }
    if (!empty($user->last_name)) {
        $user_public_display['display_lastname'] = $user->last_name;
    }
    if (!empty($user->first_name) && !empty($user->last_name)) {
        $user_public_display['display_firstlast'] = $user->first_name . ' ' . $user->last_name;
        $user_public_display['display_lastfirst'] = $user->last_name . ' ' . $user->first_name;
    }
    if (!in_array($user->display_name, $user_public_display)) {
        // Only add this if it isn't duplicated elsewhere}
        $user_public_display = array('display_displayname' => $user->display_name) + $user_public_display;
    }
    $user_public_display = array_map('trim', $user_public_display);
    $user_public_display = array_unique($user_public_display);
    /**
     * Caprute form
     */
    ob_start();
    ?>
	<div id="palo-profile">
 		<div class="palo-avatar-img"><?php 
    echo get_avatar($user->user_email, 72);
    ?>
</div>
		<div class="palo-avatar-info">
			<p><a href="http://gravatar.com/"><?php 
    _e('Change Avatar', $palo_textdomain);
    ?>
</a></p>
			<p><?php 
    _e("Note: Avatar is auto taken in Gravatar.com. If you insert you registered email in our email section then your uploaded avatar will be displayed in this section", $palo_textdomain);
    ?>
</p>
		</div>
		<form style="clear: both;" action="<?php 
    the_permalink();
    ?>
" method="post">
			<div class="palo-first">
				<?php 
    palo_input_form_field('first_name', 'id=palo_first_name&p=1&label=' . urlencode(__("First Name", $palo_textdomain)) . '&value=' . urlencode($user->first_name));
    ?>
				<?php 
    palo_input_form_field('last_name', 'id=palo_last_name&p=1&label=' . urlencode(__("Last Name", $palo_textdomain)) . '&value=' . urlencode($user->last_name));
    ?>
				<?php 
    palo_input_form_field('nickname', 'id=palo_nickname&p=1&label=' . urlencode(__("Nickame", $palo_textdomain)) . '&required=1&value=' . urlencode($user->nickname));
    ?>
				<?php 
    palo_select_form_field('display_name', 'id=palo_display_name&p=1&label=' . urlencode(__("Display name publicly as", $palo_textdomain)) . '&selected=' . urlencode($user->display_name), $user_public_display);
    ?>
				<?php 
    palo_input_form_field('email', 'id=palo_email&type=email&required=1&p=1&label=' . urlencode(__("Email", $palo_textdomain)) . '&value=' . urlencode($user->user_email));
    ?>
			</div>
			<div class="palo-last">
				<?php 
    palo_input_form_field('pass1', 'id=palo_pass&type=password&p=1&label=' . urlencode(__("New Password", $palo_textdomain)));
    ?>
				<?php 
    palo_input_form_field('pass2', 'id=palo_pass2&type=password&p=1&label=' . urlencode(__("Repeat New Password", $palo_textdomain)));
    ?>
				<?php 
    palo_input_form_field('url', 'id=palo_website&p=1&label=' . urlencode(__("Website", $palo_textdomain)) . '&value=' . urlencode($user->user_url));
    ?>
				<?php 
    palo_input_form_field('description', 'id=palo_description&type=textarea&p=1&label=' . urlencode(__("Biographical Info", $palo_textdomain)) . '&value=' . urlencode($user_bio));
    ?>
			</div>
			<div class="palo-profile-submit">
				<?php 
    wp_nonce_field('update-profile_' . $user->ID);
    ?>
				<?php 
    palo_input_form_field('palo_action', 'type=hidden&value=update_profile');
    ?>
				<?php 
    palo_submit_form_button(__('Update Profile', $palo_textdomain));
    ?>
			</div>
		</form>
	</div>
	<?php 
    /**
     * End for capture and return form
     */
    return ob_get_clean();
}
示例#3
0
/**
 * Adds a hidden field that helps us know wp-login.php is in a modal window
 */
function palo_action_hidden_tracker_field()
{
    if (!empty($_REQUEST['palo-login'])) {
        palo_input_form_field('palo-login', 'type=hidden&value=1');
    }
}