ﻚﺑ ﺔﺻﺎﺨﻟﺍ WordPress ﻡﺪﺨﺘﺴﻣ ﻝﺎﺼﺗﺍ ﻝﻮﻘﺣ ءﺎﺸﻧﺈﺑ ﻢﻗ


.ﻞﻴﺠﺴﺘﻟﺍ ﺔﺤﻔﺻ ﻲﻓ ﺓﺪﻳﺪﺠﻟﺍ ﻝﻮﻘﺤﻟﺍ ﻩﺬﻫ (ﺭﺎﻬﻇﺇ ﻡﺪﻋ ﻭﺃ) ﺭﺎﻬﻇﺇ ﺔﻴﻔﻴﻛ ،ﻼًﻴﻠﻗ ﺎﻣًﺪﻗ ﻲﻀﻤﻠ

:ﻪﺋﺎﺸﻧﺈﺑ ﻡﻮﻘﻨﺳ ﺎﻤﻟ ﺔﻨﻳﺎﻌﻣ ﻲﻠﻳ ﺎﻤﻴﻓ

ﺮﻳﺮﺤﺘﻟﺍ ﺔﺤﻔﺻ ﻲﻓ ﺓﺪﻳﺪﺠﻟﺍ ﻡﺪﺨﺘﺴﻤﻟﺍ ﻝﻮﻘﺣ

ﻞﻴﺠﺴﺘﻟﺍ ﺔﺤﻔﺻ ﻲﻓ ﺔﺼﺼﺨﻤﻟﺍ ﻝﻮﻘﺤﻟﺍ

!ﻂﻴﺴﺑﻭ ﻒﻴﻄﻟ ﻲﻓﺎﺿﺇ ﻥﻮﻜﻣ ءﺎﺸﻧﺈﺑ ﻡﻮﻘﻨﺳ ،ﺓﺩﺎﻌﻟﺎﻛ ،ﻚﻟﺬﺑ ﻡﺎﻴﻘﻠﻟﻭ

ﺪﻋﺎﺴﻤﻟﺍ ﺞﻣﺎﻧﺮﺒﻟﺍ ءﺎﺸﻧﺇ :1 ﺓﻮﻄﺨﻟﺍ

.ﻚﻳﺪﻟ ﻞﻀﻔﻤﻟﺍ ﺮﻳﺮﺤﺘﻟﺍ ﺞﻣﺎﻧﺮﺑ ﻲﻓ ﻪﺤﺘﻓﺍﻭ ،"rc-custom-user-contact-methods.php" ﻰﻤ

:ﺪﻋﺎﺴﻤﻟﺍ ﺞﻣﺎﻧﺮﺒﻟﺍ ﺔﻃﺎﺴﺒﺑ ﺰﻣﺮﻟﺍ ﺍﺬﻫ ﻞﺠﺴﻳ .ﻍﺭﺎﻔﻟﺍ ﻚﻔﻠﻣ ﻲﻓ ﻯﻮﺘﺤﻤﻟﺍ ﺍﺬﻫ ﻊﺿ

<?php
/*
Plugin Name: Custom User Contact Methods
Plugin URL: http://remicorson.com/
Description: Add custom fields to users "contact" section
Version: 1.0
Author: Remi Corson
Author URI: http://remicorson.com
Contributors: corsonr
*/

ﻚﺑ ﺔﺻﺎﺨﻟﺍ ﺔﺼﺼﺨﻤﻟﺍ ﻝﻮﻘﺤﻟﺍ ﺪﻳﺪﺤﺗ :2 ﺓﻮﻄﺨﻟﺍ

.extra_fields$ﻰﻤﺴﻳ ﺮﻴﻐﺘﻣ ﻲﻓ ﻝﻮﻘﺤﻟﺍ ﻩﺬﻫ ﻦﻳﺰﺨﺘﺑ ﻢﻘﻨﻟ .ﺔﻴﺿﺍﺮﺘﻓﻻﺍ ﻞﻴﺠﺴﺘﻟﺍ ﺔﺤﻔﺻ ﻲﻓ

$extra_fields =  array( 
	array( 'facebook', __( 'Facebook Username', 'rc_cucm' ), true ),
	array( 'twitter', __( 'Twitter Username', 'rc_cucm' ), true ),
	array( 'googleplus', __( 'Google+ ID', 'rc_cucm' ), true ),
	array( 'linkedin', __( 'Linked In ID', 'rc_cucm' ), false ),
	array( 'pinterest', __( 'Pinterest Username', 'rc_cucm' ), false ),
	array( 'wordpress', __( 'WordPress.org Username', 'rc_cucm' ), false ),
	array( 'phone', __( 'Phone Number', 'rc_cucm' ), true )
);

.ﺔﺑﻮﻠﻄﻤﻟﺍ ﺕﺎﻣﻮﻠﻌﻤﻟﺍ ﻭﺃ ﺐﺋﺎﻧ ﺮﺼﻨﻋ ﻝﺎﺜﻤﻟﺍ ﻞﻴﺒﺳ ﻰﻠﻋ ،ﺕﺎﻤﻠﻌﻤﻟﺍ ﻦﻣ ﻩﺪﻳﺮﺗ ﺩﺪﻋ ﻱﺃ ﺔﻓﺎ

ﻦﻤﻳﻷﺍ ﺮﺘﻠﻔﻟﺍ ﻂﺑﺭ :3 ﺓﻮﻄﺨﻟﺍ

."rc_add_user_contactmethods" ﻮﻫ ﺎﻬﺋﺎﺸﻧﺈﺑ ﻡﻮﻘﻨﺳ ﻲﺘﻟﺍ ﺔﻔﻴﻇﻮﻟﺍ ﻢﺳﺍﻭ ،"user_conta

// Use the user_contactmethods to add new fields
add_filter( 'user_contactmethods', 'rc_add_user_contactmethods' );

ﺔﺼﺼﺨﻤﻟﺍ ﺎﻨﻟﻮﻘﺣ ءﺎﺸﻧﺇ :4 ﺓﻮﻄﺨﻟﺍ

.extra_fields$ﺮﻴﻐﺘﻤﻟﺍ ﻞﻳﺪﻌﺗ ﻖﻳﺮﻃ ﻦﻋ ﻂﻘﻓ ﺓﺪﻳﺪﺟ ﻝﻮﻘﺣ ﺔﻓﺎﺿﺇ ﺍﺪًﺟ ﻞﻬﺴﻟﺍ ﻦﻣ ﻥﻮﻜﻴﺳﻭ

/**
 * Add custom users custom contact methods
 *
 * @access      public
 * @since       1.0 
 * @return      void
*/
function rc_add_user_contactmethods( $user_contactmethods ) {

	// Get fields
	global $extra_fields;
	
	// Display each fields
	foreach( $extra_fields as $field ) {
		if ( !isset( $contactmethods[ $field[0] ] ) )
    		$user_contactmethods[ $field[0] ] = $field[1];
	}

    // Returns the contact methods
    return $user_contactmethods;
}

."ﻞﻴﺠﺴﺘﻟﺍ" ﻂﺑﺍﺭ ﺔﻳﺅﺭ ﻦﻣ ﻦﻜﻤﺘﺗ ﻦﻠﻓ ﻻﺇﻭ ،ﺕﺍﺩﺍﺪﻋﻹﺍ ﻦﻤﺿ "ﻞﻴﺠﺴﺘﻟﺍ ﺺﺨﺷ ﻱﻷ ﻦﻜﻤﻳ" ﺭﺎﻴﺘ

ﻞﻴﺠﺴﺘﻟﺍ ﺔﺤﻔﺻ ﺕﺎﻓﺎﻄﺧ :5 ﺓﻮﻄﺨﻟﺍ

.ﺕﺎﻧﺎﻴﺒﻟﺍ ﺓﺪﻋﺎﻗ ﻲﻓ ﻝﻮﻘﺤﻟﺍ ﺕﺎﻧﺎﻴﺑ ﻆﻔﺤﻟ ﻲﻧﺎﺜﻟﺍﻭ ،ﻝﻮﻘﺤﻟﺍ ﺽﺮﻌﻟ ﺎﻤﻫﺪﺣﺃ .ﻦﻴﺘﻔﻴﻇﻭ ءﺎﺸ

:ﺎﻨﻔﺋﺎﻇﻭ ﻂﺑﺮﻧ ﺎﻧﻮﻋﺩ

// Add our fields to the registration process
add_action( 'register_form', 'rc_register_form_display_extra_fields' );
add_action( 'user_register', 'rc_user_register_save_extra_fields', 100 );

ﺔﺼﺼﺨﻤﻟﺍ ﻝﻮﻘﺤﻟﺍ ﻞﻴﺠﺴﺗ ﺔﺤﻔﺻ ﺽﺮﻋ :6 ﺓﻮﻄﺨﻟﺍ

.ﺽﻭﺮﻌﻣ ﺮﻴﻏ ﻞﻘﺤﻟﺍ :ﺄﻄﺧ ،ﺽﻭﺮﻌﻣ ﻞﻘﺤﻟﺍ :ﺢﻴﺤﺻ .ﻻ ﻡﺃ ﻝﻮﻘﺤﻟﺍ ﺭﺎﻬﻇﺇ ﺐﺠﻳ ﻥﺎﻛ ﺍﺫﺇ ﺎﻣ ﺔﻴﻘ

/**
 * Show custom fields on registration page
 *
 * Show custom fields on registration if field third parameter is set to true
 *
 * @access      public
 * @since       1.0 
 * @return      void
 */
function rc_register_form_display_extra_fields() {
	
	// Get fields
	global $extra_fields;

	// Display each field if 3th parameter set to "true"
	foreach( $extra_fields as $field ) {
		if ( $field[2] == true ) { 
		$field_value = isset( $_POST[ $field[0] ] ) ? $_POST[ $field[0] ] : '';
		echo '<p>
			<label for="'. esc_attr( $field[0] ) .'">'. esc_html( $field[1] ) .'<br />
			<input type="text" name="'. esc_attr( $field[0] ) .'" id="'. esc_attr( $field[0] ) .'" class="input" value="'. esc_attr( $field_value ) .'" size="20" /></label>
			</label>
		</p>';
		} // endif
	} // end foreach
}

ﻞﻴﺠﺴﺘﻟﺍ ﺔﻴﻠﻤﻋ ﺪﻨﻋ ﻝﻮﻘﺤﻟﺍ ﻢﻴﻗ ﻦﻳﺰﺨﺗ :7 ﺓﻮﻄﺨﻟﺍ

."()wp_update_user" ﺔﻔﻴﻇﻭ ﻡﺍﺪﺨﺘﺳﺍ ﻰﻟﺇ ﺝﺎﺘﺤﻧ ،ﻚﻟﺬﺑ ﻡﺎﻴﻘﻠﻟ ."rc_user_register_sa

/**
 * Save field values
 *
 * @access      public
 * @since       1.0 
 * @return      void
*/
function rc_user_register_save_extra_fields( $user_id, $password = '', $meta = array() )  {

	// Get fields
    global $extra_fields;
    
    $userdata       = array();
    $userdata['ID'] = $user_id;
    
    // Save each field
    foreach( $extra_fields as $field ) {
    	if( $field[2] == true ) { 
	    	$userdata[ $field[0] ] = $_POST[ $field[0] ];
	    } // endif
	} // end foreach

    $new_user_id = wp_update_user( $userdata );
}

ﺔﻤﺗﺎﺧ

!ﺕﺎﻘﻴﻠﻌﺘﻟﺍ ﻲﻓ ﺓﺩﺪﺤﻣ ﺕﺍﺰﻴﻣ ﺐﻠﻃ ﻲﻓ ﺩﺩﺮﺘﺗ ﻻ ...ﻚﻟﺫ ﻰﻟﺇ ﺎﻣﻭ ﻻ ﻡﺃ ﺎﺑًﻮﻠﻄﻣ ﻞﻘﺤﻟﺍ ﻥﺎﻛ

:ﺍﺬﻫ ﻡﺍﺪﺨﺘﺳﺍ ﻯﻮﺳ ﻚﻴﻠﻋ ﺎﻤﻓ ،ﻚﺗﻻﺎﺠﻣ ﻦﻣ ﻝﺎﺠﻣ ﻱﺃ ﺕﺎﻧﺎﻴﺑ ﺽﺮﻋ ﺪﻳﺮﺗ ﺖﻨﻛ ﺍﺫﺇ ...ﺍﺮًﻴﺧﺃﻭ

// Param 1 is user ID
// Param 2 is field ID
// Param 3 is there to get a var or an array
echo get_user_meta( 1, 'twitter', true );