header("Access-Control-Allow-Origin: validate.ru"); - т.е разрешено делать запросы с validate.ru
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Max-Age: 86400');
  
  
  
  $arrImg = get_post_meta($post->id, 'название мета поля', false);
if(empty($arrImg)){
  // Выводите то что было раньше 
$html = '<p class="description">';
        $html .= 'Upload your jpg here.';
    $html .= '</p>';
    $html .= '<input type="file" id="wp_custom_attachment" name="wp_custom_attachment" value="" size="25" />';
     
    echo $html;
} else {
    // Выводите то что нужно вывести если уже есть картинки
}        
  
  
  
  
  
  'before'          => '',
    'after'           => '',
    'link_before'     => '',
    'link_after'      => '',
    'items_wrap'      => '<ul id = "%1$s" class = "%2$s">%3$s</ul>',
  
  var btn = document.getElementById('buton');
var toggle = false;
btn.addEventListener('click', function(){
  var items = document.querySelectorAll('.appartments-item');
  var parent = document.getElementById('parent');
var SortElements = new Object();
items.forEach(function(item, indx){
  var itemValue = parseInt(item.querySelector('.appartments-item__price').textContent.replace('руб', '').replace(/\s+/g, ''));
  SortElements[itemValue] = {'element': item, 'index': indx} ;
});
var keys = Object.keys(SortElements);
function compareNumeric1(a, b) {
  a = parseInt(a);
  b = parseInt(b);
  if (a < b) return 1;
  if (a > b) return -1;
}
  function compareNumeric2(a, b) {
  a = parseInt(a);
  b = parseInt(b);
  if (a > b) return 1;
  if (a < b) return -1;
}
if(toggle === false){
  keys.sort(compareNumeric1);
  toggle = !toggle;
} else {
  keys.sort(compareNumeric2);
  toggle = !toggle;
}
keys.map(function(key, indx){
  parent.insertAdjacentElement('beforeend', SortElements[key]['element']);
  SortElements[key]['index'] = indx;
});
  return toggle;
}, toggle);<div id="buton">нажми</div>
<div id="parent">
  <article class="appartments-item" tabindex="0">
      <h2 class="appartments-item__title">Студия №44</h2>
      <div class="appartments-item__price">5 000 000 руб</div>
      <footer class="appartments-item__footer  appartments-footer">
        <span class="appartments-footer__text--free">Свободно</span>
        <span class="appartments-footer__text--reserved">Забронировано</span>
      </footer>
      <div class="appartments-item__star"></div>
    </article>
    <article class="appartments-item" tabindex="0">
      <h2 class="appartments-item__title">Однокомнатная №666</h2>
      <div class="appartments-item__price">16 000 000 руб</div>
      <footer class="appartments-item__footer  appartments-footer">
        <span class="appartments-footer__text--free">Свободно</span>
        <span class="appartments-footer__text--reserved">Забронировано</span>
      </footer>
      <div class="appartments-item__star"></div>
    </article>
   <article class="appartments-item" tabindex="0">
      <h2 class="appartments-item__title">Однокомнатная №667</h2>
      <div class="appartments-item__price">16 000 200 руб</div>
      <footer class="appartments-item__footer  appartments-footer">
        <span class="appartments-footer__text--free">Свободно</span>
        <span class="appartments-footer__text--reserved">Забронировано</span>
      </footer>
      <div class="appartments-item__star"></div>
    </article>
</div>        
  
  if ( ! file_exists( get_template_directory() . '/wp-bootstrap-navwalker.php' ) ) {
	// file does not exist... return an error.
	return new WP_Error( 'wp-bootstrap-navwalker-missing', __( 'It appears the wp-bootstrap-navwalker.php file may be missing.', 'wp-bootstrap-navwalker' ) );
} else {
	// file exists... require it.
    require_once get_template_directory . 'wp-bootstrap-navwalker.php';
}<!-- Navbar -->
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
    <div class="container">
        <a class="navbar-brand" href="<?php echo home_url() ?>"><?php bloginfo( 'name' ); ?></a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor01" aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
 
        <div class="collapse navbar-collapse" id="navbarColor01">
            <?php
            wp_nav_menu( array(
                'theme_location'  => 'menu-1',
                'menu_id'        => 'primary-menu',
                'depth'           => 2,
                'container'       => false,
                'menu_class'      => 'navbar-nav mr-auto',
                'fallback_cb'     => 'WP_Bootstrap_Navwalker::fallback',
                'walker'          => new WP_Bootstrap_Navwalker()
            ) );
            ?>
            <?php get_search_form(); ?>
        </div>
    </div><!-- Container End -->
</nav>
<!-- Navbar End -->
  
  
В wp_query есть куча параметров.
Если сущности построены не на основе пользовательских типов записей то вы можете использовать $wpdb. Пример:
у $wpdb есть некоторое количество методов для получения данных в разном виде, а так же методов для запросов