네이버 로그인 순서 수정
본문
WordPress Social Login extends NAVER 플러그인을 사용중인데
facebook 보다 naver 와 kakaotalk 로그인이 먼저 나오게 하려면 어디를 수정해야하나요:?
답변 1
아래 코드를 사용하는 테마 functions.php 파일에 넣으면 됩니다.
if(!function_exists('custom_wsl_render_auth_widget_position')){
add_action('wsl_render_auth_widget_start', 'custom_wsl_render_auth_widget_position');
if (!function_exists('array_column')) {
function array_column(array $array, $columnKey, $indexKey = null)
{
$result = array();
foreach ($array as $subArray) {
if (!is_array($subArray)) {
continue;
} elseif (is_null($indexKey) && array_key_exists($columnKey, $subArray)) {
$result[] = $subArray[$columnKey];
} elseif (array_key_exists($indexKey, $subArray)) {
if (is_null($columnKey)) {
$result[$subArray[$indexKey]] = $subArray;
} elseif (array_key_exists($columnKey, $subArray)) {
$result[$subArray[$indexKey]] = $subArray[$columnKey];
}
}
}
return $result;
}
}
if (!function_exists('sortArrayByArray')) {
function sortArrayByArray($array, $orderArray) {
$ordered = array();
foreach ($orderArray as $key) {
if (array_key_exists($key, $array)) {
$ordered[$key] = $array[$key];
unset($array[$key]);
}
}
return array_merge($ordered, $array);
}
}
function custom_wsl_render_auth_widget_position(){
global $WORDPRESS_SOCIAL_LOGIN_PROVIDERS_CONFIG;
$tmp_array = $WORDPRESS_SOCIAL_LOGIN_PROVIDERS_CONFIG;
$orderArray = array();
// 네이버키, 카카오키 지정
$find_values = array('Naver', 'Kakao');
foreach($find_values as $provider_id){
if( $find_key = array_search($provider_id, array_column($WORDPRESS_SOCIAL_LOGIN_PROVIDERS_CONFIG, 'provider_id')) ){
if( $find_key !== false ){
$orderArray[] = $find_key;
}
}
}
if( $orderArray ){
$WORDPRESS_SOCIAL_LOGIN_PROVIDERS_CONFIG = sortArrayByArray($tmp_array, $orderArray);
}
}
}
답변을 작성하시기 전에 로그인 해주세요.