Я пытаюсь создать собственную форму поиска на сайте WordPress. Получить желаемый результат не проблема, но я не могу заставить paginate_links работать.
Я протестировал все входные и выходные параметры из WP_Query, и все кажется нормальным. Входные данные для paginate_links — 775 результатов, что дает 16 страниц с 50 названиями продуктов.
Проблема: все страницы дают тот же результат, что и страница 1.
Что все готово, сделано: опубликовано на форуме WordPress, но теперь подсказка на 3 дня.
Проверили все параметры.
Объединили отражение get_col в WP_Query с помощью add_hook.
Проверяем постоянную ссылку и постраничное отображение.
global $wpdb;
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
if ($paged == 1) {
$Limit = "50";
} else {
$FirstPage = ($paged-1)*50;
$LastPage = $paged*50;
$Limit = $FirstPage.",".$LastPage;
}
$term = get_term_by('name', $_REQUEST["product_cat"], 'product_cat');
// echo "id". $term->term_id;
$mypostids = $wpdb->get_col("select * from $wpdb->posts, $wpdb->term_relationships
where $wpdb->posts.post_title LIKE '".$_REQUEST["start_letter"]."%'
AND $wpdb->posts.post_type='product'
AND $wpdb->term_relationships.term_taxonomy_id=".$term->term_id."
AND $wpdb->term_relationships.object_id=$wpdb->posts.ID
AND $wpdb->posts.post_excerpt LIKE '%".$_REQUEST["product_tag"]."%'
ORDER BY $wpdb->posts.post_title asc ");
$argssearch = array('post__in'=> $mypostids,
'post_type'=>'product',
'orderby'=>'title',
'order'=>'asc',
'posts_per_page'=>50,
'product_tag'=>urldecode( $_REQUEST["product_tag"]),
'product_cat'=>urldecode( $_REQUEST["product_cat"]),
'paged=' => $paged);
$querysearch = new WP_Query($argssearch);
echo "
-".$querysearch->found_posts."-".$paged."
" ;
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '',
'current' => max( 1, get_query_var('paged') ),
'total' => $querysearch->max_num_pages,
'add_args' => array('start_letter'=>$_REQUEST["start_letter"],
'product_tag'=>urlencode ($_REQUEST["product_tag"]),
'product_cat'=>urlencode ($_REQUEST["product_cat"]),
'ZOEK' => 'Zoek'
) ));
Подробнее здесь: https://stackoverflow.com/questions/183 ... ame-result
WordPress paginate_links на всех страницах одинаковый результат ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1728520769
Anonymous
Я пытаюсь создать собственную форму поиска на сайте WordPress. Получить желаемый результат не проблема, но я не могу заставить paginate_links работать.
Я протестировал все входные и выходные параметры из WP_Query, и все кажется нормальным. Входные данные для paginate_links — 775 результатов, что дает 16 страниц с 50 названиями продуктов.
Проблема: все страницы дают тот же результат, что и страница 1.
Что все готово, сделано: опубликовано на форуме WordPress, но теперь подсказка на 3 дня.
Проверили все параметры.
Объединили отражение get_col в WP_Query с помощью add_hook.
Проверяем постоянную ссылку и постраничное отображение.
global $wpdb;
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
if ($paged == 1) {
$Limit = "50";
} else {
$FirstPage = ($paged-1)*50;
$LastPage = $paged*50;
$Limit = $FirstPage.",".$LastPage;
}
$term = get_term_by('name', $_REQUEST["product_cat"], 'product_cat');
// echo "id". $term->term_id;
$mypostids = $wpdb->get_col("select * from $wpdb->posts, $wpdb->term_relationships
where $wpdb->posts.post_title LIKE '".$_REQUEST["start_letter"]."%'
AND $wpdb->posts.post_type='product'
AND $wpdb->term_relationships.term_taxonomy_id=".$term->term_id."
AND $wpdb->term_relationships.object_id=$wpdb->posts.ID
AND $wpdb->posts.post_excerpt LIKE '%".$_REQUEST["product_tag"]."%'
ORDER BY $wpdb->posts.post_title asc ");
$argssearch = array('post__in'=> $mypostids,
'post_type'=>'product',
'orderby'=>'title',
'order'=>'asc',
'posts_per_page'=>50,
'product_tag'=>urldecode( $_REQUEST["product_tag"]),
'product_cat'=>urldecode( $_REQUEST["product_cat"]),
'paged=' => $paged);
$querysearch = new WP_Query($argssearch);
echo "
-".$querysearch->found_posts."-".$paged."
" ;
$big = 999999999; // need an unlikely integer
echo paginate_links( array(
'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ),
'format' => '',
'current' => max( 1, get_query_var('paged') ),
'total' => $querysearch->max_num_pages,
'add_args' => array('start_letter'=>$_REQUEST["start_letter"],
'product_tag'=>urlencode ($_REQUEST["product_tag"]),
'product_cat'=>urlencode ($_REQUEST["product_cat"]),
'ZOEK' => 'Zoek'
) ));
Подробнее здесь: [url]https://stackoverflow.com/questions/18329388/wordpress-paginate-links-all-pages-same-result[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия