테마를 수정하기 전 참고 사항.

1. 아래의 경로값 속 파일을 수정하기 전, 백업은 필수.

2.*테마 편집기에서 해당 코드를 다이렉트로 수정 후 [파일 업데이트] 를 하면 한글이 제대로 입력이 안되는 버그가 있음* 따라서 atom, 드림위버등의 편집기 사용을 권장.

3. Mylisting 테마는 매회 업데이트 버전에서 코드 위치가 바뀌거나 추가되는 부분이 많기 때문에 차일드테마에서 수정 시, 코드가 꼬일 수 있음. 

4. 없는 경로는 구글 크롬의 ‘페이지 소스 보기’ 를 사용해 응용 할 것.

로그인 영역

헤더 로그인 버튼

Sections -> headers.php 에서

<?php
$data = c27()->merge_options([
	'logo'                    => c27()->get_site_logo(),
    'skin'                    => c27()->get_setting('header_skin', 'dark'),
    'style'                   => c27()->get_setting('header_style', 'default'),
	'fixed'                   => c27()->get_setting('header_fixed', true),
    'scroll_skin'             => c27()->get_setting('header_scroll_skin', 'dark'),
    'scroll_logo'             => c27()->get_setting('header_scroll_logo') ? c27()->get_setting('header_scroll_logo')['sizes']['medium'] : false,
	'border_color'            => c27()->get_setting('header_border_color', 'rgba(29, 29, 31, 0.95)'),
	'menu_location'           => c27()->get_setting('header_menu_location', 'right'),
	'background_color'        => c27()->get_setting('header_background_color', 'rgba(29, 29, 31, 0.95)'),
	'show_search_form'        => c27()->get_setting('header_show_search_form', true),
	'show_call_to_action'     => c27()->get_setting('header_show_call_to_action_button', false),
	'scroll_border_color'     => c27()->get_setting('header_scroll_border_color', 'rgba(29, 29, 31, 0.95)'),
	'search_form_placeholder' => c27()->get_setting('header_search_form_placeholder', 'Type your search...'),
	'scroll_background_color' => c27()->get_setting('header_scroll_background_color', 'rgba(29, 29, 31, 0.95)'),
	'blend_to_next_section'   => false,
    'is_edit_mode'            => false,
], $data);

$header_classes = ['c27-main-header', 'header', "header-style-{$data['style']}", "header-{$data['skin']}-skin", "header-scroll-{$data['scroll_skin']}-skin", 'hide-until-load', 'header-scroll-hide'];

if ( $data['fixed'] ) {
	$header_classes[] = 'header-fixed';
}

$header_classes[] = sprintf( 'header-menu-%s', $data['menu_location'] === 'right' ? 'right' : 'left' );

$GLOBALS['case27_custom_styles'] .= '.c27-main-header .logo img { height: ' . c27()->get_setting( 'header_logo_height', 38 ) . 'px; }';

if ($data['background_color']) {
	if (!isset($GLOBALS['case27_custom_styles'])) $GLOBALS['case27_custom_styles'] = '';

	$GLOBALS['case27_custom_styles'] .= '.c27-main-header:not(.header-scroll) .header-skin ';
	$GLOBALS['case27_custom_styles'] .= '{ background: ' . $data['background_color'] . ' !important; }';
}

if ($data['border_color']) {
	if (!isset($GLOBALS['case27_custom_styles'])) $GLOBALS['case27_custom_styles'] = '';

	$GLOBALS['case27_custom_styles'] .= '.c27-main-header:not(.header-scroll) .header-skin { border-bottom: 1px solid ' . $data['border_color'] . ' !important; } ';
}

if ($data['scroll_background_color']) {
	if (!isset($GLOBALS['case27_custom_styles'])) $GLOBALS['case27_custom_styles'] = '';

	$GLOBALS['case27_custom_styles'] .= '.c27-main-header.header-scroll .header-skin';
	$GLOBALS['case27_custom_styles'] .= '{ background: ' . $data['scroll_background_color'] . ' !important; }';
}

if ($data['scroll_border_color']) {
	if (!isset($GLOBALS['case27_custom_styles'])) $GLOBALS['case27_custom_styles'] = '';

	$GLOBALS['case27_custom_styles'] .= '.c27-main-header.header-scroll .header-skin { border-bottom: 1px solid ' . $data['scroll_border_color'] . ' !important; } ';
}
?>

<header class="<?php echo esc_attr( join( ' ', $header_classes ) ) ?>">
	<div class="header-skin"></div>
	<div class="header-container">
		<div class="header-top container-fluid">
			<div class="mobile-menu">
				<a href="#main-menu">
					<div class="mobile-menu-lines"><i class="mi menu"></i></div>
				</a>
			</div>

			<div class="logo">
				<?php if ( $data['logo'] ): ?>
					<?php if ( $data['scroll_logo'] ): ?>
						<a href="<?php echo esc_url( home_url('/') ) ?>" class="scroll-logo">
							<img src="<?php echo esc_url( $data['scroll_logo'] ) ?>">
						</a>
					<?php endif ?>

					<a href="<?php echo esc_url( home_url('/') ) ?>" class="static-logo">
						<img src="<?php echo esc_url( $data['logo'] ) ?>">
					</a>
				<?php else: ?>
					<a href="<?php echo esc_url( home_url('/') ) ?>" class="header-logo-text">
						<?php echo esc_attr( get_bloginfo('sitename') ) ?>
					</a>
				<?php endif ?>
			</div>

			<div class="header-right">
				<?php if ( is_user_logged_in() ): $current_user = wp_get_current_user(); ?>
					<div class="user-area">
						<div class="user-profile-dropdown dropdown">
							<a class="user-profile-name" href="#" type="button" id="user-dropdown-menu" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
								<div class="avatar">
									<?php echo get_avatar( $current_user->ID ) ?>
								</div>
								<?php echo esc_attr( $current_user->display_name ) ?>
								<?php if ( class_exists('WooCommerce') ): ?>
									<div class="submenu-toggle"><i class="material-icons">arrow_drop_down</i></div>
								<?php endif; ?>
							</a>

							<?php if ( has_nav_menu( 'mylisting-user-menu' ) ) : ?>
								<?php wp_nav_menu([
								    'theme_location' => 'mylisting-user-menu',
								    'container' 	 => false,
								    'depth'     	 => 0,
								    'menu_class'	 => 'i-dropdown dropdown-menu',
								    'items_wrap' 	 => '<ul class="%2$s" aria-labelledby="user-dropdown-menu">%3$s</ul>'
								    ]); ?>
							<?php elseif ( class_exists('WooCommerce') ) : ?>
								<ul class="i-dropdown dropdown-menu" aria-labelledby="user-dropdown-menu">
									<?php foreach ( wc_get_account_menu_items() as $endpoint => $label ) : ?>
										<?php do_action( "case27/user-menu/{$endpoint}/before" ) ?>
										<li class="user-menu-<?php echo esc_attr( $endpoint ) ?>">
											<a href="<?php echo esc_url( wc_get_account_endpoint_url( $endpoint ) ); ?>"><?php echo esc_html( $label ); ?></a>
										</li>
										<?php do_action( "case27/user-menu/{$endpoint}/after" ) ?>
									<?php endforeach; ?>
								</ul>
							<?php endif; ?>
						</div>

						<?php if ( c27()->get_setting( 'header_show_cart', true ) !== false ): ?>
							<?php c27()->get_partial( 'header-cart' ) ?>
						<?php endif ?>

						<?php if ( c27()->get_setting( 'messages_enabled', true ) !== false ): ?>
							<div class="messaging-center inbox-header-icon">
								<a href="#" id="messages-modal-toggle" class="icon-btn" data-toggle="modal" data-target="#ml-messages-modal">
									<i class="mi forum"></i>
									<div class="chat-counter-container" id="ml-chat-activities"></div>
								</a>
							</div>
						<?php endif ?>

					</div>
				<?php else: ?>
					<div class="user-area signin-area">
						<i class="mi person user-area-icon"></i>
						<a href="#" data-toggle="modal" data-target="#sign-in-modal"><?php _e( '로그인', 'my-listing' ) ?></a>
						<?php if (get_option( 'woocommerce_enable_myaccount_registration' ) === 'yes'): ?>
							<span><?php _e( 'or', 'my-listing' ) ?></span>
							<a href="#" data-toggle="modal" data-target="#sign-up-modal"><?php _e( '회원가입', 'my-listing' ) ?></a>
						<?php endif ?>
					</div>
					<div class="mob-sign-in">
						<a href="#" data-toggle="modal" data-target="#sign-in-modal"><i class="mi person"></i></a>
					</div>

					<?php if ( c27()->get_setting( 'header_show_cart', true ) !== false ): ?>
						<?php c27()->get_partial( 'header-cart' ) ?>
					<?php endif ?>
				<?php endif ?>

				<?php require locate_template( 'partials/header/call-to-action.php' ) ?>

				<?php if ( $data['show_search_form'] ): ?>
					<div class="search-trigger" data-toggle="modal" data-target="#quicksearch-mobile-modal">
						<a href="#"><i class="mi search"></i></a>
					</div>
				<?php endif ?>
			</div>
		</div>
		<div class="container-fluid header-bottom">

			<div class="header-bottom-wrapper row">
				<?php if ( $data['show_search_form'] ): ?>
					<?php c27()->get_partial( 'quick-search', [
						'instance-id' => 'c27-header-search-form',
						'placeholder' => $data['search_form_placeholder'],
						'align' => 'left',
					] ) ?>

					<?php add_action( 'mylisting/get-footer', function() use ( $data ) { ?>
					    <div id="quicksearch-mobile-modal" class="modal modal-27">
					    	<div class="modal-dialog modal-md">
					    		<div class="modal-content">
					    			<button type="button" class="close" data-dismiss="modal" aria-label="Close">
					    				<span aria-hidden="true">×</span>
					    			</button>
									<?php c27()->get_partial( 'quick-search', [
										'instance-id' => 'quicksearch-mobile',
										'placeholder' => $data['search_form_placeholder'],
										'align' => 'left',
										'focus' => 'always',
									] ) ?>
								</div>
							</div>
						</div>
					<?php } ) ?>
				<?php endif ?>

				<div class="i-nav">
					<div class="mobile-nav-head">
						<div class="mnh-close-icon">
							<a href="#close-main-menu">
								<i class="mi menu"></i>
							</a>
						</div>

						<?php if ( is_user_logged_in() ): $current_user = wp_get_current_user(); ?>
							<div class="user-profile-dropdown">
								<a class="user-profile-name" href="#">
									<div class="avatar">
										<?php echo get_avatar( $current_user->ID ) ?>
									</div>
									<?php echo esc_attr( $current_user->display_name ) ?>
									<?php if ( class_exists('WooCommerce') ): ?>
										<div class="submenu-toggle"><i class="mi arrow_drop_down"></i></div>
									<?php endif; ?>
								</a>
							</div>
						<?php endif ?>
					</div>

					<?php if ( is_user_logged_in() ): ?>
						<div class="mobile-user-menu">
							<?php if ( has_nav_menu( 'mylisting-user-menu' ) ) : ?>
								<?php wp_nav_menu( [
								    'theme_location' => 'mylisting-user-menu',
								    'container' 	 => false,
								    'depth'     	 => 0,
								    'menu_class'	 => '',
								    'items_wrap' 	 => '<ul class="%2$s">%3$s</ul>'
								] ) ?>
							<?php elseif ( class_exists( 'WooCommerce' ) ) : ?>
								<ul>
									<?php foreach ( wc_get_account_menu_items() as $endpoint => $label ) : ?>
										<?php do_action( "case27/user-menu/{$endpoint}/before" ) ?>
										<li class="user-menu-<?php echo esc_attr( $endpoint ) ?>">
											<a href="<?php echo esc_url( wc_get_account_endpoint_url( $endpoint ) ); ?>"><?php echo esc_html( $label ); ?></a>
										</li>
										<?php do_action( "case27/user-menu/{$endpoint}/after" ) ?>
									<?php endforeach; ?>
								</ul>
							<?php endif; ?>
						</div>
					<?php endif ?>

					<?php echo str_replace(
						'<ul class="sub-menu"',
						'<div class="submenu-toggle"><i class="material-icons">arrow_drop_down</i></div><ul class="sub-menu i-dropdown"',
						wp_nav_menu( [
							'echo' => false,
							'theme_location' => 'primary',
							'container' => false,
							'menu_class' => 'main-menu',
							'items_wrap' => '<ul id="%1$s" class="%2$s main-nav">%3$s</ul>'
						]
					) ) ?>

					<div class="mobile-nav-button">
						<?php require locate_template( 'partials/header/call-to-action.php' ) ?>
					</div>

				</div>
				<div class="i-nav-overlay"></div>
			</div>
		</div>
	</div>
</header>

<?php if ( ! $data['blend_to_next_section'] ): ?>
	<div class="c27-top-content-margin"></div>
<?php endif ?>

<?php if ( $data['is_edit_mode'] ): ?>
    <script type="text/javascript">case27_ready_script(jQuery);</script>
<?php endif ?>

138번째 줄의 ’Sign in’ 을 [로그인]으로,

141번째 줄의 ’Register’ [회원가입]으로 수정

로그인 팝업

Partials -> account -> login-form.php 에서

<?php if (!class_exists('WooCommerce')) return; ?>

<div class="sign-in-box element">
	<div class="title-style-1">
		<i class="material-icons user-area-icon">person</i>
		<h5><?php _e( '로그인', 'my-listing' ) ?></h5>
	</div>
	<form class="sign-in-form woocomerce-form woocommerce-form-login login" method="POST" action="<?php echo esc_url( wc_get_page_permalink('myaccount') ) ?>">

		<?php do_action( 'woocommerce_login_form_start' ); ?>

		<div class="form-group">
			<input type="text" name="username" id="username" value="<?php if ( ! empty( $_POST['username'] ) ) echo esc_attr( $_POST['username'] ); ?>" placeholder="<?php esc_attr_e( '이메일 주소', 'my-listing' ) ?>">
		</div>

		<div class="form-group">
			<input type="password" name="password" id="password" placeholder="<?php esc_attr_e( '비밀번호', 'my-listing' ) ?>">
		</div>

		<?php do_action( 'woocommerce_login_form' ); ?>

		<?php wp_nonce_field( 'woocommerce-login', 'woocommerce-login-nonce' ); ?>

		<div class="form-group">
			<button type="submit" class="buttons button-2 full-width" name="login" value="Login">
				<?php _e( '로그인', 'my-listing' ) ?>
			</button>
		</div>

		<div class="form-info">
			<div class="md-checkbox">
				<input type="checkbox" name="rememberme" type="checkbox" id="rememberme" value="forever">
				<label for="rememberme" class=""><?php _e( '아이디 저장', 'my-listing' ) ?></label>
			</div>
			
		</div>

		<?php if ( ! empty( $_GET['redirect_to'] ) ): ?>
			<input type="hidden" name="redirect" value="<?php echo esc_url( $_GET['redirect_to'] ) ?>">
		<?php endif ?>

		<?php do_action( 'woocommerce_login_form_end' ); ?>

		<?php if ( get_option( 'woocommerce_enable_myaccount_registration' ) === 'yes' ) : ?>
			<a href="#" class="c27-open-modal" data-target="#sign-up-modal"><i class="material-icons user-area-icon">person</i><?php _e( '어썸맵스 회원이 아니세요?', 'my-listing' ) ?></a>
		<?php endif ?>
		<div class="forgot-password">
		<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><i class="material-icons">lock</i><?php _e( '비밀번호 찾기', 'my-listing' ); ?></a>
		</div>
	</form>

	<?php c27()->get_partial( 'spinner', [
		'color' => '#777',
		'classes' => 'center-vh',
		'size' => 24,
		'width' => 2.5,
	] ) ?>
</div>

6번째 줄의 ‘Sign in’ 을 [로그인]으로,

13번째 줄의 ‘User name’ 을 [이메일 주소] 로,

17번째 줄의 ‘Password’ 를 [비밀번호] 로,

26번째 줄의 ’Sign in’ 을 [로그인] 으로,

33번째 줄의 ‘Remember me’ 를 [아이디 저장] 으로,

45번째 줄의 ‘Don\’t have an account?’ 를 [어썸맵스 회원이 아니세요?] 로,

48번째 줄의 ‘Forgot password?’ [비밀번호 찾기] 수정

회원가입 팝업

Partials -> account -> register-form.php 에서

<?php if (!class_exists('WooCommerce')) return; ?>

<div class="sign-in-box element">
	<div class="title-style-1">
		<i class="material-icons user-area-icon">person</i>
		<h5><?php _e( '회원가입', 'my-listing' ) ?></h5>
	</div>
	<form class="sign-in-form register" method="POST" action="<?php echo esc_url( wc_get_page_permalink('myaccount') ) ?>">

		<?php do_action( 'woocommerce_register_form_start' ); ?>

		<?php if ( 'no' === get_option( 'woocommerce_registration_generate_username' ) ) : ?>
			<div class="form-group">
				<input type="text" name="username" id="reg_username" value="<?php if ( ! empty( $_POST['username'] ) ) echo esc_attr( $_POST['username'] ); ?>" placeholder="<?php esc_attr_e( 'Username', 'my-listing' ) ?>">
			</div>
		<?php endif; ?>

		<div class="form-group">
			<input type="email" name="email" id="reg_email" value="<?php if ( ! empty( $_POST['email'] ) ) echo esc_attr( $_POST['email'] ); ?>" placeholder="<?php esc_attr_e( '이메일 주소', 'my-listing' ) ?>">
		</div>

		<?php if ( 'no' === get_option( 'woocommerce_registration_generate_password' ) ) : ?>
			<div class="form-group">
				<input type="password" name="password" id="reg_password" placeholder="<?php esc_attr_e( '비밀번호', 'my-listing' ) ?>">
			</div>
		<?php endif; ?>

		<!-- Spam Trap -->
		<div style="<?php echo ( ( is_rtl() ) ? 'right' : 'left' ); ?>: -999em; position: absolute;"><label for="trap"><?php _e( 'Anti-spam', 'my-listing' ); ?></label><input type="text" name="email_2" id="trap" tabindex="-1" autocomplete="off" /></div>

		<?php do_action( 'woocommerce_register_form' ); ?>

		<!-- <div class="form-info">
			<div class="md-checkbox">
				<input id="i2" type="checkbox">
				<label for="i2" class="">I agree to the <a href="#">Terms and Conditions</a></label>
			</div>
		</div> -->

		<div class="form-group">
			<?php wp_nonce_field( 'woocommerce-register', 'woocommerce-register-nonce' ); ?>
			<button type="submit" class="buttons button-2 full-width" name="register" value="Register">
				<?php _e( '회원가입', 'my-listing' ) ?>
			</button>
		</div>

		<?php if ( ! empty( $_GET['redirect_to'] ) ): ?>
			<input type="hidden" name="redirect" value="<?php echo esc_url( $_GET['redirect_to'] ) ?>">
		<?php endif ?>

		<?php do_action( 'woocommerce_register_form_end' ); ?>

		<a href="#" class="c27-open-modal" data-target="#sign-in-modal"><?php _e( '어썸맵스 회원이라면?!', 'my-listing' ) ?></a>

	</form>

	<?php c27()->get_partial( 'spinner', [
		'color' => '#777',
		'classes' => 'center-vh',
		'size' => 24,
		'width' => 2.5,
	] ); ?>
</div>

6번째 줄의 ‘Create an account’ 를 [회원가입] 으로,

19번째 줄의 ‘Email’ 을 [이메일 주소] 로,

24번째 줄의 ‘Password’ 를 [비밀번호] 로,

43번째 줄의 ‘Sign Up’ 을 [회원가입] 으로,

53번째 줄의 ‘Already Registered?’ [어썸맵스 회원이라면?!] 으로 수정

SNS 로그인 관련

Includes -> extensions -> social login -> social login.php에서

116번째 줄의 “Or connect with” 를 [SNS 로그인] 으로 수정

Includes -> extensions -> social login -> networks -> google.php 에서

127번째 줄의 ‘Sign in with Google’ 을 [구글 계정으로 로그인] 으로 수정

Includes -> extensions -> social login -> networks -> facebook.php 에서

134번째 줄의 ‘Login with Facebook’ [페이스북 계정으로 로그인] 으로 수정

메시지 관련

includes/extensions/messages/views/messages.php

<?php $compose_enabled = c27()->get_setting( 'messages_enable_compose', true ) !== false; ?>
<div id="ml-messages-modal" class="modal modal-27" role="dialog">
    <div class="modal-dialog modal-md">
        <div class="modal-content">
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
              <span aria-hidden="true">×</span>
            </button>
            <div class="sign-in-box">
                <div class="messaging-center" id="ml-message-btn">
                    <transition-group name="vopacity">
                        <compose v-if="chat.mode === 'compose'" :chat="chat" :key="'compose'"></compose>
                        <inbox v-else-if="chat.mode === 'inbox' || !chat.mode" :chat="chat" :key="'inbox'"></inbox>
                        <conversation v-else-if="chat.mode === 'conversation'" :chat="chat" :conversation="chat.conversation" :key="'conversation'"></conversation>
                    </transition-group>
                </div>
            </div>
        </div>
    </div>
</div>

<script type="text/html" id="ml-opponent-list">
    <select name="test">
        <slot></slot>
    </select>
</script>
<script type="text/html" id="ml-compose-message">
    <div id="compose-message" class="compose-message">
        <div class="inbox-header">
            <a href="#" class="go-back-btn" @click.prevent="inbox"><i class="material-icons">arrow_back</i></a>
            <h4><?php esc_html_e('메시지', 'my-listing'); ?></h4>
            <div class="clearfix"></div>
        </div>

        <div class="compose-contents">
            <div class="select-user" v-if="!opponentId">
                <select2 :chat="chat" :options="options" v-model="selected" :url="url">
                    <option disabled value="0"><?php esc_html_e('Select one', 'my-listing'); ?></option>
                </select2>
            </div>
        </div>
    </div>
</script>

<script type="text/html" id="ml-conversation-messages">
    <ul class="messages-list">
        <li v-for="message in messages" :class="conversationClass( message )">
            <div class="chat-text">
                <span class="chat-date">{{ timestamp( message.utime ) }}</span>
                <a v-if="isPostAuthor(message)" href="#" class="avatar-img" :title="message.pdata.title">
                    <img :src="message.pdata.image" class="avatar avatar-96 photo" />
                </a>
                <a v-else href="#" class="avatar-img" v-html="senderAvatar(message)" :title="message.sender_name"></a>

                <p v-html="linkify( message )"></p>
                <a href="#" class="delete-chat" @click.stop.prevent="deleteMsg(message)" v-if="!message.loading">
                    <i class="material-icons">delete_outline</i>
                </a>
            </div>

            <div class="chat-loader" v-if="message.loading">
                <i :class="loadingClass(message)"></i>
            </div>

            <div class="delete-confirm-overlay" v-if="isDelete(message)">
                <div class="action-controllers">
                    <p class="delete-msg">
                        <?php esc_html_e('이 메시지를 삭제하시겠습니까?', 'my-listing'); ?>
                    </p>
                    <a href="#" @click.stop.prevent="deleteMsg(message)">
                        <i class="material-icons">check</i> <?php esc_html_e('예', 'my-listing'); ?>
                    </a>
                    <a href="#" @click.stop.prevent="cancelDelete(message)">
                        <i class="material-icons">close</i> <?php esc_html_e('아니요', 'my-listing'); ?>
                    </a>
                </div>
            </div>
            <div class="clearfix"></div>
        </li>

        <li class="avatar-container" v-if="!isMessages">
            <?php esc_html_e( 'Say hello to', 'my-listing' ) ?>
            <span v-if="chat.postData.id">{{chat.postData.title}}
                <a :href="chat.postData.link" class="avatar-img">
                    <img :src="chat.postData.image" class="avatar avatar-96 photo" height="96" width="96" />
                </a>
            </span>

            <span v-else>{{opponent.name}} <a href="#" class="avatar-img" v-html="opponent.avatar"></a></span>
        </li>
    </ul>
</script>
<script type="text/html" id="ml-conversation">
    <div id="message-inbox-chat" class="message-inbox-chat">
        <div class="inbox-header">
            <a href="#" class="go-back-btn" @click.prevent="inbox()"><i class="material-icons">arrow_back</i></a>
            <div class="inbox-avatar">
                <span class="msg-listing-info" v-if="isPostAuthor()">
                    <div class="avatar-container">
                        <a :href="chat.postData.link" class="avatar-img">
                            <img :src="chat.postData.image" class="avatar avatar-96 photo" height="96" width="96" />
                        </a>

                        <h6><a :href="chat.postData.link">{{ chat.postData.title }}</a></h6>
                    </div>
                </span>
                <transition-group name="vopacity" v-else>
                    <div class="avatar-container" v-if="!init" :key="'loaded-convo'">
                        <a :href="opponent.uri" class="avatar-img" v-html="opponent.avatar"></a>
                        <h6><a :href="opponent.uri">{{ opponent.name }}</a></h6>
                    </div>
                </transition-group>
            </div>
            <div class="inbox-actions">
                <a href="#" class="delete-chat" @click.prevent="deleteConversation( chat.opponentId )"><i class="material-icons">delete_outline</i></a>
                <a href="#" :class="{'block-chat': true, 'active': isBlocked()}" @click.stop.prevent="blockUser()" v-if="opponent.login">
                    <i class="material-icons" v-if="!blockRequest">block</i>
                    <i class="fa fa-refresh fa-spin" v-else></i>
                </a>
            </div>
            <div class="clearfix"></div>
        </div>
        <div :class="{'inbox-chat-contents':true, '_loading': isLoading}">
            <transition name="vopacity">
                <div class="loading-more-messages" v-if="isLoading">
                    <div class="inner">
                        <i class="fa fa-refresh fa-spin"></i> <?php esc_html_e('Loading conversation', 'my-listing'); ?>
                    </div>
                </div>
            </transition>
            <messages :conversation="conversation" :opponent="opponent" :chat="chat"></messages>
            <div class="clearfix"></div>
            <form @submit.prevent="send">
                <textarea cols="30" :rows="rows" placeholder="<?php esc_html_e('메시지 보내기...', 'my-listing'); ?>" v-model="message" :maxlength="maxLength" @keyup.enter="send($event)" :disabled="disable" id="ml-conv-textarea"></textarea>
                <button class="btn" @click.stop.prevent="send" :disabled="disable"><i class="material-icons">send</i></button>
                <span class="user-blocked" v-if="isBlocked()"><?php esc_html_e( '이 회원을 차단했습니다.', "my-listing"); ?></span>
            </form>
            <div class="clearfix"></div>
        </div>

        <div class="delete-confirm-overlay" v-if="isBlockUser()">
            <div class="action-controllers">
                <p v-if="isBlocked()">
                    <?php esc_html_e('차단을 해제하시겠습니까?', 'my-listing'); ?>
                </p>

                <p v-else>
                    <?php esc_html_e('이 회원을 차단하시겠습니까?', 'my-listing'); ?>
                </p>

                <a href="#" @click.stop.prevent="blockUser()">
                    <i class="material-icons">check</i> <?php esc_html_e('예', 'my-listing'); ?>
                </a>
                <a href="#" @click.stop.prevent="cancelBlock()">
                    <i class="material-icons">close</i> <?php esc_html_e('아니요', 'my-listing'); ?>
                </a>
            </div>
        </div>

        <div class="delete-confirm-overlay" v-if="isDelete(opponent.id)">
            <div class="action-controllers">
                <p><?php esc_html_e('채팅방에서 나가시겠습니까?', 'my-listing'); ?></p>
                <a href="#" @click.stop.prevent="deleteConversation()">
                    <i class="material-icons">check</i> <?php esc_html_e('예', 'my-listing'); ?>
                </a>
                <a href="#" @click.stop.prevent="cancelDelete(message)">
                    <i class="material-icons">close</i> <?php esc_html_e('아니요', 'my-listing'); ?>
                </a>
            </div>
        </div>
    </div>
</script>

<script type="text/html" id="ml-inbox-messages">
    <ul v-if="$root.modal_open">
        <li v-for="message in messageList" @click.prevent="open(message.data)" :class="{'unread-message': !message.seen}">
            <div class="inbox-avatar">
                <a v-if="isPostAuthor(message.data)" :href="message.data.pdata.link">
                    <img :src="message.data.pdata.image" class="avatar avatar-96 photo" />
                </a>
                <a v-else :href="message.data.op.uri" v-html="message.data.op.avatar"></a>
            </div>
            <div class="message">
                <h6 v-if="isPostAuthor(message.data)">
                    <a :href="message.data.pdata.link">{{message.data.pdata.title}}</a>
                </h6>
                <h6 v-else>
                    <a :href="message.data.op.uri">{{ opponentInfo( message.data ) }}</a>
                    <span v-if="parseInt( message.data.pid )">
                        <span class="to-string"><?php esc_html_e('to', 'my-listing'); ?></span>
                        <a :href="message.data.pdata.link" class="message-listing-origin">
                            <img :src="message.data.pdata.image" class="avatar avatar-96 photo" />
                            <span>{{message.data.pdata.title}}</span>
                        </a>
                    </span>
                </h6>
                <p>{{ message.data.message }}</p>
            </div>
            <div class="date-action">
                <p class="date">{{ timestamp( message.data.utime ) }}</p>
                <a href="#" class="action" @click.stop.prevent="deleteConversation(message.data, $event)">
                    <i class="material-icons">delete_outline</i>
                </a>
            </div>

            <div class="delete-confirm-overlay" v-if="isDelete(message)">
                <div class="action-controllers">
                    <p><?php esc_html_e('채팅방에서 나가시겠습니까?', 'my-listing'); ?></p>
                    <a href="#" @click.stop.prevent="deleteConversation(message.data)">
                        <i class="material-icons">check</i> <?php esc_html_e('예', 'my-listing'); ?>
                    </a>
                    <a href="#" @click.stop.prevent="cancelDelete(message)"><i class="material-icons">close</i> <?php esc_html_e('아니요', 'my-listing'); ?></a>
                </div>
            </div>
        </li>
    </ul>
</script>

<script type="text/html" id="ml-inbox">
    <div id="message-inbox" class="message-inbox">
        <div class="inbox-header">
            <h4><?php esc_html_e('메시지', 'my-listing'); ?></h4>
            <?php if ( $compose_enabled ): ?>
                <a href="#" class="compose-btn btn-primary" @click.prevent="compose"><?php esc_html_e('회원선택', 'my-listing'); ?></a>
            <?php endif ?>
            <div class="clearfix"></div>
        </div>
        <div class="inbox-contents">
            <messages :chat="chat" :isLoading="isLoading" v-if="isMessages"></messages>
            <div class="inbox-contents empty-inbox" v-else>
                <p v-if="isLoading"><i class="fa fa-refresh"></i><?php esc_html_e('Loading Inbox', 'my-listing'); ?></p>
                <p v-else><?php esc_html_e('새로운 메시지가 없습니다. 회원을 선택 후 메시지를 보내보세요.', 'my-listing'); ?></p>
                <div class="clearfix"></div>
            </div>
            <!-- Pagination -->
            <div class="load-more-msgs" v-if="loadMoreBtn && !loading" @click.prevent="loadMore">
                <?php esc_html_e( 'Load More Messages', 'my-listing' ) ?>
            </div>
            <div class="load-more-msgs" v-if="loadMoreBtn && loading">
                <i class="fa fa-circle-o-notch fa-spin"></i>
                <?php esc_html_e( 'Loading', 'my-listing' ) ?>
            </div>
        </div>
        <?php if ( $compose_enabled ): ?>
            <a href="#" class="compose-btn compose-btn-mobile btn-primary" @click.prevent="compose"><?php esc_html_e('회원선택', 'my-listing'); ?></a>
        <?php endif ?>
    </div>
</script>

30번째 줄의 “Compose” 를 “메세지” 로 수정

67번째 줄의 “Are you sure you want to delete this message?” 를 “이 메시지를 삭제하시겠습니까?” 로 수정

70번째 줄의 “Yes” 를 “예”로, 73번째 “No”를 “아니요”로 수정

133번째 줄의 “Post a reply” 을 ‘메시지 보내기…” 로 변경

135번째 줄의 “You have blocked this user.” 를 “이 회원을 차단했습니다.” 로 변경

143번째 줄의 “Are you sure you want to unblock this user?”를 “차단을 해제하시겠습니까? 로 수정

147번째 줄의 “Are you sure you want to block this user?” 를 “이 회원을 차단하시겠습니까?” 로 수정

151번째 줄의 “Yes” 를 “예”로, 154번째 “No”를 “아니요”로 수정

161번째 줄의 “Are you sure you want to delete this conversation?”

“채팅방에서 나가시겠습니까?” 로 수정

163번째 줄 “Yes” 를 “예로, 166번째 “No” 를 “아니요” 로 수정

207번째 줄 “Are you sure you want to delete this conversation?” 를

“채팅방에서 나가시겠습니까?” 로 수정

209번째 줄의 “Yes” 를 “예”로, 211번째 “No”를 “아니요”로 수정

221번째 줄의 “Message” 를 “메시지”로 수정

223번째 줄의 “Compose” 를 “회원선택”으로 수정

231번째 즐의 “No messages available. To start a conversation, use compose button” 를

“새로운 메시지가 없습니다. 회원을 선택 후 메시지를 보내보세요.” 로 수정

244번째 줄의 “Compose” 회원선택으로 수정

검색창

Partials -> quick-search.php 에서

21번째 줋의 “View all results” 를 [전체보기] 로,

24번째 줄의 “No results” 를 [검색결과 없음] 으로

37번째 줄의 “Featured” 를 [추천] 으로 변경

Partials -> search-form.php 에서

46번째 줄의 “Search” 를 [검색] 으로 변경

includes/src/queries/quick-search.php 에서

22번째 줄의 “Categories” 를 [카테고리] 로

72번째 줄의 ‘Regions’ [국가] 수정

Explore

templates/explore/regular.php 에서

51번째 줄의 “Map view” 를 “지도 보기” 로 변경

63번째 줄의 “There are no listings matching your search” 를 “등록된 리스팅이 없습니다.” 로 변경

97번째 줄의 “List view” 를 “리스트 보기” 로 변경

templates/explore/partials/mobile-nav.php 에서

6번째 줄의 “List view” 를 “리스트 보기” 로 변경

14번째 줄의 “Map view” 지도 보기 변경

리뷰

includes/extensions/reviews/reviews.php 에서

381번째 줄의 “Upload Images” 를  [이미지 업로드]로 변경

댓글에서

38번째 줄의 “No comments yet” -> “작성된 리뷰가 없습니다.”

69번째 줄의 “Add a comment” -> “리뷰 남기기” 으로 변경

102번째 줄의 “Your Message” -> “리뷰 내용” 으로 변경

103번째 줄의 “Enter message…” -> “. . .” 으로 변경

111번째 줄의 “동의 내용 영문을 Save my name, email, and website in this browser for the next time I comment.” -> [나의 닉네임, 이메일 주소, 리뷰 내용을 저장합니다.] 로 수정

119번째 줄의 “Submit review” -> “등록 변경

영업시간

templates/single-listing/content-blocks/work-hours-block.php 에서

34번째 줄의 “Toggle weekly schedule” -> “영업시간 펼치기” 로 변경,

54번째 줄의 “Local time” -> “*현지 시간*” 으로 변경

리스팅 등록

templates/add-listing/choose-type.php에서

46번째 줄의 “Choose type” 을 “리스팅 타입 선택” 으로 변경

templates/add-listing/auth.php에서

add listing 위젯 안의 텍스트 변경

18번째줄 -> You must be logged in to post new listings -> 리스팅을 작성하려면 로그인을 해야합니다.

31번째줄 -> Account 를 로그인으로 변경

40번째 줄 -> 로그인으로 변경

46번째 줄 -> 회원가입으로 변경

templates/add-listing/submit-form.php에서

20번째 줄 -> Your Listing Details를 “리스팅 등록하기” 로 변경

/templates/add-listing/choose-package.php

131번째 줄 -> “Buy Package”를 “리스팅 등록 및 패키지 구입” 으로 변경

/includes/src/paid-listings/controllers/add-listing.php

106번째줄-> “Choose a Package” 를 “패키지 선택”으로 변경

/includes/src/claims/claim-listing-form.php

179번째줄-> “Choose a Package” 를 “리스팅 구입”으로 변경

180번째줄-> “Pricing” 패키지 선택으로 변경

리스팅

partials/no-listings-found.php 에서

“There are no listings matching your search” 등록된 리스팅이 없습니다.” 변경

추천 리스팅

templates/single-listing/similar-listings.php 에서

21번째 줄의 “You May Also Be Interested In” 주변의 추천 장소 변경