Загрузка разных php скриптов без перезагрузки страницы
-
Народ, ну помогите разобраться, мозг взрывается уже.
Имею скрипт:<script> function showContent(link) { var cont = document.getElementById('content-single'); var loading = document.getElementById('loading'); cont.innerHTML = loading.innerHTML; var http = createRequestObject(); if( http ) { http.open('get', link); http.onreadystatechange = function () { if(http.readyState == 4) { cont.innerHTML = http.responseText; } } http.send(null); } else { document.location = link; } } // ajax объект function createRequestObject() { try { return new XMLHttpRequest() } catch(e) { try { return new ActiveXObject('Msxml2.XMLHTTP') } catch(e) { try { return new ActiveXObject('Microsoft.XMLHTTP') } catch(e) { return null; } } } } </script> <span onClick="showContent('content-single-1.php')">Страница 1</span> <span onClick="showContent('content-single-2.php')">Страница 2</span> <!--//--> <div id="content-single"> <!-- CONTENT --> </div> <!--//--> <div id="loading" style="display: none"> Идет загрузка... </div> <script> showContent('content-single-1.php') // страница по умолчанию </script>
имею файл content-single-1.php, например:
<div class="head-price-all"> <div class="head-title"><h2><?php echo the_title(); ?></h2></div> <div class="head-prices"> <div class="head-prices-tol"> <div class="head-price1"> <?php if ( in_category('33') ): ?> <div class="bot-left"><div class="price1">Цена без отделки<br><span class="birk"><? echo get('price_without_finishing_sezon'); ?> руб.</span></div></div> <? elseif ( in_category('34') ): ?> <div class="bot-left"><div class="price1">Цена под усадку<br><span class="birk"><? echo get('price_house_shrinkage_sezon'); ?> руб.</span></div></div> <? elseif ( in_category('35') ): ?> <div class="bot-left"><div class="price1">Цена за каркасное исполнение<br><span class="birk"><? echo get('price_carcass_finishing_sezon'); ?> руб.</span></div></div> <? elseif ( in_category('36') ): ?> <div class="bot-left"><div class="price1">Цена за каркасное исполнение<br><span class="birk"><? echo get('price_carcass_bathhouse'); ?> руб.</span></div></div> <?php endif; ?> </div> <div class="head-price2"> <?php if ( in_category('33') ): ?> <div class="bot-left"><div class="price2">Цена с отделкой<br><span class="birk"><? echo get('price_with_finishing_sezon'); ?> руб.</span></div></div> <? elseif ( in_category('34') ): ?> <div class="bot-left"><div class="price2">Цена под ключ<br><span class="birk"><? echo get('price_finished_house_sezon'); ?> руб.</span></div></div> <? elseif ( in_category('35') ): ?> <div class="bot-left"><div class="price2">Цена за брусовое исполнение<br><span class="birk"><? echo get('price_beam_finishing_sezon'); ?> руб.</span></div></div> <? elseif ( in_category('36') ): ?> <div class="bot-left"><div class="price2">Цена за брусовое исполнение<br><span class="birk"><? echo get('price_beam_bathhouse'); ?> руб.</span></div></div> <?php endif; ?> </div> </div> </div> </div> <div class="flexslider"> <ul class="slides"> <li data-thumb="<?php echo wp_get_attachment_url(get_post_meta($post->ID, 'uploader_custom', 1)); ?>"> <img src="<?php echo wp_get_attachment_url(get_post_meta($post->ID, 'uploader_custom', 1)); ?>" /> </li> <li data-thumb="<?php echo wp_get_attachment_url(get_post_meta($post->ID, 'uploader_custom1', 1)); ?>"> <img src="<?php echo wp_get_attachment_url(get_post_meta($post->ID, 'uploader_custom1', 1)); ?>" /> </li> <li data-thumb="<?php echo wp_get_attachment_url(get_post_meta($post->ID, 'uploader_custom2', 1)); ?>"> <img src="<?php echo wp_get_attachment_url(get_post_meta($post->ID, 'uploader_custom2', 1)); ?>" /> </li> </ul> </div> <div class="house-description"> <div class="house-parametr"> <div class="house-info-t"> <table> <tbody> <?php if ( in_category('33') ): ?> <tr> <td><span class="house-icon-area icon-area"></span>Площадь дома:</td> <td class="area-info"><? echo get('area_house_carcass'); ?> м<sup>2</sup></td> </tr> <tr> <td><span class="house-icon-dimensions icon-size"></span>Габариты дома:</td> <td class="size-info"><? echo get('dimensions_house_carcass'); ?> м</td> </tr> <tr> <td><span class="house-icon-floors icon-floors"></span>Количество этажей:</td> <td class="floors-info"><? echo get('number_floors_carcass'); ?></td> </tr> <tr> <td><span class="house-icon-rooms icon-rooms"></span>Количество комнат:</td> <td class="rooms-info"><? echo get('number_rooms_carcass'); ?></td> </tr> <? elseif ( in_category('34') ): ?> <tr> <td><span class="house-icon-area icon-area"></span>Площадь дома:</td> <td class="area-info"><? echo get('area_house_beam'); ?> м<sup>2</sup></td> </tr> <tr> <td><span class="house-icon-dimensions icon-size"></span>Габариты дома:</td> <td class="size-info"><? echo get('dimensions_house_beam'); ?> м</td> </tr> <tr> <td><span class="house-icon-floors icon-floors"></span>Количество этажей:</td> <td class="floors-info"><? echo get('number_floors_beam'); ?></td> </tr> <tr> <td><span class="house-icon-rooms icon-rooms"></span>Количество комнат:</td> <td class="rooms-info"><? echo get('number_rooms_beam'); ?></td> </tr> <? elseif ( in_category('35') ): ?> <tr> <td><span class="house-icon-area icon-area"></span>Площадь дома:</td> <td class="area-info"><? echo get('area_house_individual'); ?> м<sup>2</sup></td> </tr> <tr> <td><span class="house-icon-dimensions icon-size"></span>Габариты дома:</td> <td class="size-info"><? echo get('dimensions_house_individual'); ?> м</td> </tr> <tr> <td><span class="house-icon-floors icon-floors"></span>Количество этажей:</td> <td class="floors-info"><? echo get('number_floors_individual'); ?></td> </tr> <tr> <td><span class="house-icon-rooms icon-rooms"></span>Количество комнат:</td> <td class="rooms-info"><? echo get('number_rooms_individual'); ?></td> </tr> <? elseif ( in_category('36') ): ?> <tr> <td><span class="house-icon-area icon-area"></span>Площадь дома:</td> <td class="area-info"><? echo get('area_bathhouse'); ?> м<sup>2</sup></td> </tr> <tr> <td><span class="house-icon-dimensions icon-size"></span>Габариты дома:</td> <td class="size-info"><? echo get('dimensions_bathhouse'); ?> м</td> </tr> <tr> <td><span class="house-icon-floors icon-floors"></span>Количество этажей:</td> <td class="floors-info"><? echo get('number_floors_bathhouse'); ?></td> </tr> <tr> <td><span class="house-icon-rooms icon-rooms"></span>Количество помещений:</td> <td class="rooms-info"><? echo get('bathhouse_rooms'); ?></td> </tr> <?php endif; ?> </tbody> </table> </div> </div> <div class="house-parametr-t"> <div class="house-info-t"> <table> <tbody> <tr> <td><span class="icon-sevles"></span></td> <td class="sevles-info">Качественный северный лес<br><span class="info-size">При строительстве деревянных домов мы используем северный лес.</span></td> </tr> <tr> <td><span class="icon-svai"></span></td> <td class="svai-info">Фундамент на винтовых сваях<br><span class="info-size">Данный тип основы характеризуется высокой степенью надежности и возможностью строить даже на участках с необычным рельефом и сложными грунтами.</span></td> </tr> </tbody> </table> </div> </div> <div class="house-info-t"> <div class="house-info-q"> Возможны рызные варианты отделки и комплектаций. Свяжитесь с нами и мы <span style="color:red;">бесплатно</span> сделаем перепланировку под ваши нужды. </div> </div> <div class="banner-calc"> <a href="#"><img src="/wp-content/themes/build-lite/images/banner_calc.png" alt="Рассчитать стоимость"></a> </div> </div> <span class="hr-slider"><hr /></span> <div class="block-opis"> <div class="title-opis">Технические характеристики</div> <span class="hr-opis"><hr /></span> <div class="entry-content"> <?php if ( in_category('33') ): ?> <?php $the_query = new WP_Query('p=380'); ?> <?php while ($the_query->have_posts() ) : $the_query->the_post(); ?> <?php the_content(); ?> <?php edit_post_link(__('Редактировать')); ?> <?php endwhile; ?> <?php wp_reset_postdata();?> <? elseif ( in_category('34') ): ?> <?php $the_query = new WP_Query('p=384'); ?> <?php while ($the_query->have_posts() ) : $the_query->the_post(); ?> <?php the_content(); ?> <?php edit_post_link(__('Редактировать')); ?> <?php endwhile; ?> <?php wp_reset_postdata();?> <? elseif ( in_category('36') ): ?> <?php $the_query = new WP_Query('p=387'); ?> <?php while ($the_query->have_posts() ) : $the_query->the_post(); ?> <?php the_content(); ?> <?php edit_post_link(__('Редактировать')); ?> <?php endwhile; ?> <?php wp_reset_postdata();?> <?php endif; ?> <?php the_content(); ?> </div> </div><!-- .entry-content -->
и файл content-single-2.php, в котором просто текст, типа бла бла бла.
При загрузке страницы, код с content-single-1.php загружается ровно до <?php the_title(); ?> и всё. При загрузке с content-single-2.php все нормально, вижу своё бла бла.
что еще куда прописать, чтобы ajax запрос стал обрабатывать штатные функции wordpress типа <?php the_title(); ?>?
Если прописать в content-single-1.php это:
require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-load.php' );
начинают грузиться стили и разметка, но по прежнему не грузятся функции и скрипты! Пример можно посмотреть ТУТ
Просмотр 2 ответов — с 1 по 2 (всего 2)
Просмотр 2 ответов — с 1 по 2 (всего 2)
- Тема «Загрузка разных php скриптов без перезагрузки страницы» закрыта для новых ответов.