PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
rasl89
Отправлено: 25 Июня, 2020 - 21:06:38
Post Id



Гость


Покинул форум
Сообщений всего: 71
Дата рег-ции: Март 2020  
Откуда: Россия, Уфа


Помог: 1 раз(а)




Всем привет. Сайт на WP.
В профиле есть список постов.
Чтобы отображать более старые есть подгрузка на JS при помощи кнопки "показать больше".
При нажатии посты подгружаются но, иконка загрузки остается на месте и крутит загрузку, а также в самом низу снова есть кнопка показать больше, при повторном ее нажатии она бесконечно грузится, хоть и постов там ниже нет.

CODE (javascript):
скопировать код в буфер обмена
  1.         $('.order-container-control').each(function() {
  2.             if (typeof orderCollection == 'undefined') {
  3.                 //Get public  collection
  4.                 if ($('.order_postdata').length > 0) {
  5.                     var order = JSON.parse($('.order_postdata').html());
  6.                     orderCollection = new Collections.Order(order);
  7.                 } else {
  8.                     orderCollection = new Collections.Order();
  9.                 }
  10.             }

Прикреплено изображение (Нажмите для увеличения)
213123.png
 
 Top
Строитель
Отправлено: 25 Июня, 2020 - 22:11:15
Post Id



Участник


Покинул форум
Сообщений всего: 1542
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 70 раз(а)




rasl89, вам быстрее ответят или на форумах WP, или на форумах по Javascript.


-----
~ PHP-7 & REGEXP - This is a really powerful kit ~
****************************************
 
 Top
Vladimir Kheifets
Отправлено: 26 Июня, 2020 - 07:45:37
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 537
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 26 раз(а)




rasl89 пишет:
Всем привет. Сайт на WP.
В профиле есть список постов.
Чтобы отображать более старые есть подгрузка на JS при помощи кнопки "показать больше".
При нажатии посты подгружаются но, иконка загрузки остается на месте и крутит загрузку, а также в самом низу снова есть кнопка показать больше, при повторном ее нажатии она бесконечно грузится, хоть и постов там ниже нет.

CODE (javascript):
скопировать код в буфер обмена
  1.         $('.order-container-control').each(function() {
  2.             if (typeof orderCollection == 'undefined') {
  3.                 //Get public  collection
  4.                 if ($('.order_postdata').length > 0) {
  5.                     var order = JSON.parse($('.order_postdata').html());
  6.                     orderCollection = new Collections.Order(order);
  7.                 } else {
  8.                     orderCollection = new Collections.Order();
  9.                 }
  10.             }

Добрый день!
На первый взгляд слепого, которому дали пощупать слона,
JS -код, ничего не проясняет т.к. .order-container-control не виден на сриншоте.
Здесь определяется объект orderCollection - вероятно подгружаемый контент.
Если погрузка происходит, то здесь нет проблем.
Нужно открыть в консоли закладку Отладчик и посмотреть ошибки в JS
и в закладке Стили селекторы для этой кнопки(м.б. по id и class).
Попробуйте найти JS обработчик клика этой кнопки.
На всякий случай проверьте подгружаемый контент на наличие в нём тэгов video
или img, а также не закрытых тэгов.
Удачи!

(Отредактировано автором: 26 Июня, 2020 - 07:46:32)

 
 Top
rasl89
Отправлено: 26 Июня, 2020 - 15:23:34
Post Id



Гость


Покинул форум
Сообщений всего: 71
Дата рег-ции: Март 2020  
Откуда: Россия, Уфа


Помог: 1 раз(а)




Цитата:
Нужно открыть в консоли закладку Отладчик и посмотреть ошибки в JS

в базовом отладчике WP нет ошибок

Цитата:
Попробуйте найти JS обработчик клика этой кнопки.


CODE (javascript):
скопировать код в буфер обмена
  1.         loadMore: function(e) {
  2.             e.preventDefault();
  3.             var view = this,
  4.                 $target = $(e.currentTarget);
  5.             view.page++;
  6.             // collection fetch
  7.             view.collection.fetch({
  8.                 remove: false,
  9.                 data: {
  10.                     query: view.query,
  11.                     page: view.page,
  12.                     paged: view.page,
  13.                     action: 'ae-fetch-posts',
  14.                     paginate: true,
  15.                     thumbnail: view.thumbnail,
  16.                     text: $target.text()
  17.                 },
  18.                 // get the thumbnail size of post and send to server
  19.                 thumbnail: view.thumbnail,
  20.                 beforeSend: function() {
  21.                     view.blockUi.block($target);
  22.                     view.triggerMethod("before:loadMore");
  23.                 },
  24.                 success: function(result, res, xhr) {
  25.                     view.blockUi.unblock();
  26.                     view.$('.paginations-wrapper').html(res.paginate);
  27.                     AE.pubsub.trigger('aeBlockControl:after:loadMore', result, res);
  28.                     if (res.max_num_pages == view.page || !res.success) {
  29.                         $target.parents('.paginations').hide();
  30.                         $target.remove();
  31.                     }
  32.                     view.switchTo();
  33.                     view.triggerMethod("after:loadMore", result, res);
  34.                 }
  35.             });
  36.         },


Возможно ошибка в функции шаблона:
PHP:
скопировать код в буфер обмена
  1. function ae_pagination( $query, $current = '', $type = 'page', $text = '')
  2. {
  3.     /**
  4.      * posttype args
  5.      */
  6.     $query_var = array();
  7.     $query_var['post_type'] = $query->query_vars['post_type'] != '' ? $query->query_vars['post_type'] : 'post';
  8.     $query_var['post_status'] = isset($query->query_vars['post_status']) ? $query->query_vars['post_status'] : 'publish';
  9.     $query_var['orderby'] = isset($query->query_vars['orderby']) ? $query->query_vars['orderby'] : 'date';
  10.     // taxonomy args
  11.     $query_var['place_category'] = isset($query->query_vars['place_category']) ? $query->query_vars['place_category'] : '';
  12.     $query_var['location'] = isset($query->query_vars['location']) ? $query->query_vars['location'] : '';
  13.     $query_var['showposts'] = isset($query->query_vars['showposts']) ? $query->query_vars['showposts'] : '';
  14.     /**
  15.      * order
  16.      */
  17.  
  18.     $query_var['order'] = $query->query_vars['order'];
  19.  
  20.     if (!empty($query->query_vars['meta_key']))
  21.         $query_var['meta_key'] = isset($query->query_vars['meta_key']) ? $query->query_vars['meta_key'] : 'rating_score';
  22.  
  23.     $query_var = array_merge($query_var, (array)$query->query);
  24.     $query_var['paginate'] = $type;
  25.  
  26.     echo '<script type="application/json" class="ae_query">' . json_encode($query_var) . '</script>';
  27.  
  28.     if (($query->max_num_pages <= 1 && !et_load_mobile()) || !$type) return;
  29.     $style = '';
  30.     if (et_load_mobile() && $query->max_num_pages <= 1) {
  31.         $style = "style='display:none'";
  32.     }
  33.  
  34.     echo '<div class="paginations" ' . $style . '>';
  35.     if ($type === 'page') {
  36.         $big = 999999999; // need an unlikely integer
  37.         echo paginate_links(array(
  38.             'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))),
  39.             'format' => '?paged=%#%',
  40.             'current' => max(1, ($current) ? $current : get_query_var('paged')),
  41.             'total' => $query->max_num_pages,
  42.             'next_text' => '<i class="fa fa-angle-double-right"></i>',
  43.             'prev_text' => '<i class="fa fa-angle-double-left"></i>',
  44.         ));
  45.     } else {
  46.         if ($query->max_num_pages == $current) {
  47.             return false;
  48.         }
  49.  
  50.         if ($text == '') {
  51.             $text = __("Load more", 'enginethemes');
  52.         }
  53.         echo '<a id="' . $query_var['post_type'] . '-inview" class="inview load-more-post" >' . $text . '</a>';
  54.     }
  55.  
  56.     echo '</div>';
  57. }
  58.  
  59. endif;
 
 Top
Vladimir Kheifets
Отправлено: 27 Июня, 2020 - 08:00:31
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 537
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 26 раз(а)




rasl89 пишет:
Цитата:
Нужно открыть в консоли закладку Отладчик и посмотреть ошибки в JS

в базовом отладчике WP нет ошибок

Цитата:
Попробуйте найти JS обработчик клика этой кнопки.


CODE (javascript):
скопировать код в буфер обмена
  1.         loadMore: function(e) {
  2.             e.preventDefault();
  3.             var view = this,
  4.                 $target = $(e.currentTarget);
  5.             view.page++;
  6.             // collection fetch
  7.             view.collection.fetch({
  8.                 remove: false,
  9.                 data: {
  10.                     query: view.query,
  11.                     page: view.page,
  12.                     paged: view.page,
  13.                     action: 'ae-fetch-posts',
  14.                     paginate: true,
  15.                     thumbnail: view.thumbnail,
  16.                     text: $target.text()
  17.                 },
  18.                 // get the thumbnail size of post and send to server
  19.                 thumbnail: view.thumbnail,
  20.                 beforeSend: function() {
  21.                     view.blockUi.block($target);
  22.                     view.triggerMethod("before:loadMore");
  23.                 },
  24.                 success: function(result, res, xhr) {
  25.                     view.blockUi.unblock();
  26.                     view.$('.paginations-wrapper').html(res.paginate);
  27.                     AE.pubsub.trigger('aeBlockControl:after:loadMore', result, res);
  28.                     if (res.max_num_pages == view.page || !res.success) {
  29.                         $target.parents('.paginations').hide();
  30.                         $target.remove();
  31.                     }
  32.                     view.switchTo();
  33.                     view.triggerMethod("after:loadMore", result, res);
  34.                 }
  35.             });
  36.         },


Возможно ошибка в функции шаблона:
PHP:
скопировать код в буфер обмена
  1. function ae_pagination( $query, $current = '', $type = 'page', $text = '')
  2. {
  3.     /**
  4.      * posttype args
  5.      */
  6.     $query_var = array();
  7.     $query_var['post_type'] = $query->query_vars['post_type'] != '' ? $query->query_vars['post_type'] : 'post';
  8.     $query_var['post_status'] = isset($query->query_vars['post_status']) ? $query->query_vars['post_status'] : 'publish';
  9.     $query_var['orderby'] = isset($query->query_vars['orderby']) ? $query->query_vars['orderby'] : 'date';
  10.     // taxonomy args
  11.     $query_var['place_category'] = isset($query->query_vars['place_category']) ? $query->query_vars['place_category'] : '';
  12.     $query_var['location'] = isset($query->query_vars['location']) ? $query->query_vars['location'] : '';
  13.     $query_var['showposts'] = isset($query->query_vars['showposts']) ? $query->query_vars['showposts'] : '';
  14.     /**
  15.      * order
  16.      */
  17.  
  18.     $query_var['order'] = $query->query_vars['order'];
  19.  
  20.     if (!empty($query->query_vars['meta_key']))
  21.         $query_var['meta_key'] = isset($query->query_vars['meta_key']) ? $query->query_vars['meta_key'] : 'rating_score';
  22.  
  23.     $query_var = array_merge($query_var, (array)$query->query);
  24.     $query_var['paginate'] = $type;
  25.  
  26.     echo '<script type="application/json" class="ae_query">' . json_encode($query_var) . '</script>';
  27.  
  28.     if (($query->max_num_pages <= 1 && !et_load_mobile()) || !$type) return;
  29.     $style = '';
  30.     if (et_load_mobile() && $query->max_num_pages <= 1) {
  31.         $style = "style='display:none'";
  32.     }
  33.  
  34.     echo '<div class="paginations" ' . $style . '>';
  35.     if ($type === 'page') {
  36.         $big = 999999999; // need an unlikely integer
  37.         echo paginate_links(array(
  38.             'base' => str_replace($big, '%#%', esc_url(get_pagenum_link($big))),
  39.             'format' => '?paged=%#%',
  40.             'current' => max(1, ($current) ? $current : get_query_var('paged')),
  41.             'total' => $query->max_num_pages,
  42.             'next_text' => '<i class="fa fa-angle-double-right"></i>',
  43.             'prev_text' => '<i class="fa fa-angle-double-left"></i>',
  44.         ));
  45.     } else {
  46.         if ($query->max_num_pages == $current) {
  47.             return false;
  48.         }
  49.  
  50.         if ($text == '') {
  51.             $text = __("Load more", 'enginethemes');
  52.         }
  53.         echo '<a id="' . $query_var['post_type'] . '-inview" class="inview load-more-post" >' . $text . '</a>';
  54.     }
  55.  
  56.     echo '</div>';
  57. }
  58.  
  59. endif;


Добрый день!
Посмотрите в отладчике Chrome ошибки в JS.
Проверьте подгружаемый контент в БД.
Если можете изменить код, вставьте в JS перед 27стр.
CODE (javascript):
скопировать код в буфер обмена
  1. console.log(res.max_num_pages +"/"+view.page+"/"+res.success);

В PHP проверьте $query->max_num_pages и $current
Ставьте отладку во всех случаях, которые могут влиять на ошибочный результ.
Часто самые абсурдные предположения оказываются верными.
Удачи!

(Отредактировано автором: 27 Июня, 2020 - 12:31:19)

 
 Top
rasl89
Отправлено: 29 Июня, 2020 - 21:01:12
Post Id



Гость


Покинул форум
Сообщений всего: 71
Дата рег-ции: Март 2020  
Откуда: Россия, Уфа


Помог: 1 раз(а)




Цитата:
Если можете изменить код, вставьте в JS перед 27стр.


Выдало шквал ошибок:
Warning: Use of undefined constant console - assumed 'console' (
Warning: Use of undefined constant res - assumed 'res'
Warning: Use of undefined constant max_num_pages - assumed 'max_num_pages'
Warning: A non-numeric value encountered
Warning: A non-numeric value encountered
Warning: Use of undefined constant view - assumed 'view'
Warning: A non-numeric value encountered in
Warning: Use of undefined constant page - assumed 'page'
Warning: A non-numeric value encountered in
Warning: Use of undefined constant res - assumed 'res'
Warning: A non-numeric value encountered in
Warning: Use of undefined constant success - assumed 'success'

Цитата:
Посмотрите в отладчике Chrome ошибки в JS.


там светятся ошибки:
ReferenceError: mjob_post_thumbnail is not definedunderscore.min.js:12:1
Underscore 2
render http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
render http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
render self-hosted:844
renderItemView http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
addItemView http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
addChildView http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
Backbone 11
success http://buystart111/wp-content/th[dot][dot][dot]gine[dot]js?ver=1:75
jQuery 4

переходим в файл underscore.min.js:12:1:

CODE (javascript):
скопировать код в буфер обмена
  1. var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};
  2. with(obj||{}){
  3. __p+='\n    <div class="mjob-item">\n        <div class="status-label">\n            <span class="'+
  4. ((__t=( status_class ))==null?'':__t)+
  5. '">'+
  6. ((__t=( status_text ))==null?'':__t)+
  7. '</span>\n        </div>\n\n        <div class="mjob-item__image">\n            <a href="'+
  8. ((__t=( permalink ))==null?'':__t)+
  9. '">\n                <img src="'+
  10. ((__t=( mjob_post_thumbnail ))==null?'':__t)+
  11. '" alt="'+
  12. ((__t=( post_title ))==null?'':__t)+
  13. '">\n            </a>\n        </div><!-- end .mjob-item__image -->\n\n        <div class="mjob-item__entry">\n            <div class="mjob-item__title">\n                <h2 class="trimmed" title="'+
  14. ((__t=( post_title ))==null?'':__t)+
  15. '">\n                    <a href="'+
  16. ((__t=( permalink ))==null?'':__t)+
  17. '">'+
  18. ((__t=( post_title ))==null?'':__t)+
  19. '</a>\n                </h2>\n            </div><!-- end .mjob-item__title -->\n\n            <div class="mjob-item__price">\n                <div class="mjob-item__price-inner">\n                    <span class="starting-text customize-color">Итоговая цена:</span>\n                    <span class="price-text customize-color">'+
  20. ((__t=( amount_text ))==null?'':__t)+
  21. '</span>\n                </div>\n            </div><!-- end .mjob-item__price -->\n\n            <div class="mjob-item__bottom clearfix">\n                <div class="mjob-item__author">\n                    <span>\n                        Автор                        <a href="'+
  22. ((__t=( mjob_author_url ))==null?'':__t)+
  23. '">'+
  24. ((__t=( mjob_author_name ))==null?'':__t)+
  25. '</a></span>\n                </div><!-- end .mjob-item__author -->\n\n                <div class="order-item__date">\n                    '+
  26. ((__t=( post_human_time ))==null?'':__t)+
  27. '\n                </div>\n            </div>\n        </div>\n    </div>\n';
  28. }
  29. return __p;
  30.  


ну и собственно ругается на mjob_post_thumbnail

также в консоли светит такую ошибку:

Ошибка карты кода: Error: request failed with status 404
URL ресурса: http://test111/wp-content/themes[dot][dot][dot]n[dot]js?ver=1[dot]3[dot]7[dot]5
URL карты кода: toastr.js.map

(Отредактировано автором: 29 Июня, 2020 - 21:14:13)

 
 Top
Vladimir Kheifets
Отправлено: 30 Июня, 2020 - 08:17:18
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 537
Дата рег-ции: Март 2017  
Откуда: Германия, Бавария


Помог: 26 раз(а)




rasl89 пишет:
Цитата:
Если можете изменить код, вставьте в JS перед 27стр.


Выдало шквал ошибок:
Warning: Use of undefined constant console - assumed 'console' (
Warning: Use of undefined constant res - assumed 'res'
Warning: Use of undefined constant max_num_pages - assumed 'max_num_pages'
Warning: A non-numeric value encountered
Warning: A non-numeric value encountered
Warning: Use of undefined constant view - assumed 'view'
Warning: A non-numeric value encountered in
Warning: Use of undefined constant page - assumed 'page'
Warning: A non-numeric value encountered in
Warning: Use of undefined constant res - assumed 'res'
Warning: A non-numeric value encountered in
Warning: Use of undefined constant success - assumed 'success'

Цитата:
Посмотрите в отладчике Chrome ошибки в JS.


там светятся ошибки:
ReferenceError: mjob_post_thumbnail is not definedunderscore.min.js:12:1
Underscore 2
render http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
render http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
render self-hosted:844
renderItemView http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
addItemView http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
addChildView http://buystart111/wp-content/th[dot][dot][dot]nette[dot]js?ver=1:1
Backbone 11
success http://buystart111/wp-content/th[dot][dot][dot]gine[dot]js?ver=1:75
jQuery 4

переходим в файл underscore.min.js:12:1:

CODE (javascript):
скопировать код в буфер обмена
  1. var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};
  2. with(obj||{}){
  3. __p+='\n    <div class="mjob-item">\n        <div class="status-label">\n            <span class="'+
  4. ((__t=( status_class ))==null?'':__t)+
  5. '">'+
  6. ((__t=( status_text ))==null?'':__t)+
  7. '</span>\n        </div>\n\n        <div class="mjob-item__image">\n            <a href="'+
  8. ((__t=( permalink ))==null?'':__t)+
  9. '">\n                <img src="'+
  10. ((__t=( mjob_post_thumbnail ))==null?'':__t)+
  11. '" alt="'+
  12. ((__t=( post_title ))==null?'':__t)+
  13. '">\n            </a>\n        </div><!-- end .mjob-item__image -->\n\n        <div class="mjob-item__entry">\n            <div class="mjob-item__title">\n                <h2 class="trimmed" title="'+
  14. ((__t=( post_title ))==null?'':__t)+
  15. '">\n                    <a href="'+
  16. ((__t=( permalink ))==null?'':__t)+
  17. '">'+
  18. ((__t=( post_title ))==null?'':__t)+
  19. '</a>\n                </h2>\n            </div><!-- end .mjob-item__title -->\n\n            <div class="mjob-item__price">\n                <div class="mjob-item__price-inner">\n                    <span class="starting-text customize-color">Итоговая цена:</span>\n                    <span class="price-text customize-color">'+
  20. ((__t=( amount_text ))==null?'':__t)+
  21. '</span>\n                </div>\n            </div><!-- end .mjob-item__price -->\n\n            <div class="mjob-item__bottom clearfix">\n                <div class="mjob-item__author">\n                    <span>\n                        Автор                        <a href="'+
  22. ((__t=( mjob_author_url ))==null?'':__t)+
  23. '">'+
  24. ((__t=( mjob_author_name ))==null?'':__t)+
  25. '</a></span>\n                </div><!-- end .mjob-item__author -->\n\n                <div class="order-item__date">\n                    '+
  26. ((__t=( post_human_time ))==null?'':__t)+
  27. '\n                </div>\n            </div>\n        </div>\n    </div>\n';
  28. }
  29. return __p;
  30.  


ну и собственно ругается на mjob_post_thumbnail

также в консоли светит такую ошибку:

Ошибка карты кода: Error: request failed with status 404
URL ресурса: http://test111/wp-content/themes[dot][dot][dot]n[dot]js?ver=1[dot]3[dot]7[dot]5
URL карты кода: toastr.js.map

Добрый день!
Цитата:
Выдало шквал ошибок:
Warning: Use of undefined constant console - assumed 'console' (
Warning: Use of undefined constant res - assumed 'res'
...

Это PHP Warning.
Вы вставили в код PHP
CODE (javascript):
скопировать код в буфер обмена
  1. console.log(res.max_num_pages +"/"+view.page+"/"+res.success);
, а должны были в JS код.
То, что Вы увидели в консле можее означать, что либо шаблон не рабочий, либо не все скрипты установлены.
Советую посмотреть сообщения в консоле до и после нажатия этой кнопки.
Удачи!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB