rootey
Ответы в темах
-
Форум: Проблемы и решения
Тема: Вывод 100 постов wp_queryКод не работает, с ним посты выводятся просто на одной странице, пагинация тоже есть, но она неработает
Форум: Проблемы и решения
Тема: Вывод 100 постов wp_queryОн применяется для всех страниц с выводом wp_query ?
Просто у меня есть много страниц, где используется wp_query и там ничего ограничивать ненужно.
По сути, тут подойдет вариант, чтобы ограничить пагинацию, постов может выводиться сколько угодно, но страниц, чтобы было только 10. Тогда пользователи просто не смогут увидеть лишнего)Форум: Проблемы и решения
Тема: Вывод 100 постов wp_query'posts_per_page' => 10,Выводит 10 постов на одной странице. Я хочу выводить по 10 постов на 1 странице, но чтобы в общей суме выводилось только 100 постов — то есть 10 страниц с постами. Другими словами ТОП 100 постов с пагинацией.Я уже вера побывал переделать вывод под pre_get_posts, но что-то не получилось. Может Вы подскажите.
Возможно тогда можно будет добавить параметр'numberposts' => 100,разобрался, вместо category указал имя метки
В рубриках работает, а вот в таксономии не хочет…
У меня есть таксономия актеры, хотел выводить на странице каждого актера количество записей, возможно дело в старой версии ВП, у меня 4,3$term_id = get_queried_object_id(); $term = get_term( $term_id, 'category' );//for example uncategorized category echo 'count: '. $term->count;да, к примеру в таксономии 20 записей, нужно вывести число 20
Форум: Проблемы и решения
Тема: слэш в конце url-
Вот скажите, интереса ради, какую цель вы преследуете? Ну кроме «красявостей»
Где-то прочитал, что такие урл больше нравятся поисковикам, вот и добавил код, сейчас я бы и рад его убрать, но как на это отреагируют поисковики непонятно.
Форум: Проблемы и решения
Тема: Плагин который поможет узнать нагрузкуНагрузка на ЧТО? Где и как это видно?
В плагине «горят» какие-то данные? Вот кликайте на них.Нагрузка на хостинг, это видно в ЛК хостинга на графике, где показывается полоска доступных ресурсов по выбранному тарифу. Убрал код который показал выше сразу и нагрузка упала примерно в двое.
- Ответ изменён 9 лет назад пользователем rootey.
Форум: Проблемы и решения
Тема: Плагин который поможет узнать нагрузкуВот есть код, давно еще в интернете нашел. добавляет в конце ссылки /
Он походу нагружает сильно.
выглядит вот так/* Добавляет слеш в конце URL */ function pcl_smart_trailingslashit($string) { $string = rtrim($string, '/') . '/'; if ( 0 < preg_match("#\.[^/]+/$#", $string) ) { $string = rtrim($string, '/'); } return $string; } add_filter('user_trailingslashit', 'pcl_smart_trailingslashit');Записи выводятся с .html
а по умолчанию метки и рубрики выводятся без слеша в конце, а этот код добавляет и систему грузит, вот попробовал убрать сразу и нагрузка упала.Может может есть аналог какой-то, чтобы слеш вывести?
Форум: Проблемы и решения
Тема: Плагин который поможет узнать нагрузкуПерешел на более дорогой тариф генерация страницы 0,289 sec. В целом работает неплохо, но на что стоит обратить внимание в плагине который вы посоветовали, там очень много данных. нагрузка по прежнему высокая.
Форум: Проблемы и решения
Тема: Плагин который поможет узнать нагрузкуВоспользовался вашим кодом, спасибо. вот какой результат
SQL 69 1,957 sec 18048 KbВыходит что время загрузки очень большое. И что в таком случае лучше хостингу отписать? Сайт начал грузится долго и они рассказывают, что нагрузка запредельная. якобы пора менять тариф.
Форум: Проблемы и решения
Тема: Два вопроса по условию ifСпасибо, это то что нужно. А как задать условие для конкретного поста ? к примеру для постов с ID 1 и 2 нужно выводить некие уведомления.
Форум: Проблемы и решения
Тема: Два вопроса по условию ifВопрос был не об этом, как вывести нужное количество символов я знаю.
Вывожу вот так
<meta itemprop="description" content='<?php $my_post_obj = get_post( $my_post_id ); echo wp_trim_words( $my_post_obj->post_content, 40, false ); ?>' />Тут дело в другом, у меня есть статьи у которых нет текста, в таком случаи, выводится пустой тег
<meta itemprop="description" content='' />
Как скрыть этот тег для записей без текста? Нужно задать условие, но какФорум: Проблемы и решения
Тема: Вопрос о передаче данных методом GETЭто не совсем просто select. Он должен одновременно несколько параметров из выпадающего списка выбирать
<div class="select_block"> <select data-placeholder="Выберите год" class="chosen-select" multiple style="width: 100%;" name="tax_god[]"> <?php foreach($god as $keys=>$val): ?> <?php $selected =($keys == $tax_god) ? 'selected' : ''; ?> <option <?=$selected?> value="<?=$keys;?>"><?=$val;?></option> <?php endforeach; ?> </select> </div>Форум: Проблемы и решения
Тема: Постраничная навигацияЕсли ввыводить вот такой ссылкой, то пагинация работает,
/favorit/?preview=true
/favorit/?preview=true&page=2Вот собственно функция вывода вывода статей
//Пагинация $perpage = 5; $count_fav = count($favorites); $count_pages = ceil($count_fav / $perpage); // если число страниц равно 0 if(!$count_pages) $count_pages = 1; // получаем номер страницы if( isset($_GET['page']) ){ $page = (int)$_GET['page']; if( $page < 0 ) $page = 1; }else{ $page = 1; } // если запрошенная страница больше максимума if( $page > $count_pages ) $page = $count_pages; // первая картинка на страницу $start_pos = ($page - 1) * $perpage; // последняя картинка на страницу $end_pos = $start_pos + $perpage; // если последняя картинка больше максимума картинок if( $end_pos > $count_fav ) $end_pos = $count_fav; // получаем пагинацию $pagination = pagination($page, $count_pages); if (!$favorites){ echo '<p>Список пуст</p>'; return; } echo '<ul class="fav-list">'; for($j = $start_pos; $j < $end_pos; $j++): $image_attributes = wp_get_attachment_image_src(get_post_thumbnail_id($favorites[$j]), 'thumbnail'); echo '<li><a href="'.get_permalink($favorites[$j]).'"><img src="'.$image_attributes[0].'" alt="" />'.get_the_title($favorites[$j]).'<span class="del-link" data-post="'. $favorites[$j] .'" >❎</span></a> <span class="fav-load"><img src="'.$src_img.'" alt="" /></span> </li>'; endfor; echo '</ul>'; if( $count_pages > 1 ): echo $output . '<div class="clear"></div><div class="pagination">' .$pagination. '</div>'; endif; }Вот сама пагинация
function pagination($page, $count_pages, $modrew = false){ // << < 3 4 5 6 7 > >> $back = null; // ссылка НАЗАД $forward = null; // ссылка ВПЕРЕД $startpage = null; // ссылка В НАЧАЛО $endpage = null; // ссылка В КОНЕЦ $page2left = null; // вторая страница слева $page1left = null; // первая страница слева $page2right = null; // вторая страница справа $page1right = null; // первая страница справа $uri = "?"; if(!$modrew){ // если есть параметры в запросе if( $_SERVER['QUERY_STRING'] ){ foreach ($_GET as $key => $value) { if( $key != 'page' ) $uri .= "{$key}=$value&"; } } }else{ $url = $_SERVER['REQUEST_URI']; $url = explode("?", $url); if(isset($url[1]) && $url[1] != ''){ $params = explode("&", $url[1]); foreach($params as $param){ if(!preg_match("#page=#", $param)) $uri .= "{$param}&"; } } } if( $page > 1 ){ $back = "<a class='nav-link' data-page='".($page-1)."' href='{$uri}page=" .($page-1). "'><</a>"; } if( $page < $count_pages ){ $forward = "<a class='nav-link' data-page='".($page+1)."' href='{$uri}page=" .($page+1). "'>></a>"; } if( $page > 3 ){ $startpage = "<a class='nav-link' data-page='1' href='{$uri}page=1'>«</a>"; } if( $page < ($count_pages - 2) ){ $endpage = "<a class='nav-link' data-page='".$count_pages."' href='{$uri}page={$count_pages}'>»</a>"; } if( $page - 2 > 0 ){ $page2left = "<a class='nav-link' data-page='".($page-2)."' href='{$uri}page=" .($page-2). "'>" .($page-2). "</a>"; } if( $page - 1 > 0 ){ $page1left = "<a class='nav-link' data-page='".($page-1)."' href='{$uri}page=" .($page-1). "'>" .($page-1). "</a>"; } if( $page + 1 <= $count_pages ){ $page1right = "<a class='nav-link' data-page='".($page+1)."' href='{$uri}page=" .($page+1). "'>" .($page+1). "</a>"; } if( $page + 2 <= $count_pages ){ $page2right = "<a class='nav-link' data-page='".($page+2)."' href='{$uri}page=" .($page+2). "'>" .($page+2). "</a>"; } return $startpage.$back.$page2left.$page1left.'<a class="nav-active">'.$page.'</a>'.$page1right.$page2right.$forward.$endpage; } function portfolio_page_template( $template ) { if( is_page('portfolio') ){ if ( $new_template = locate_template( array( 'portfolio-page-template.php' ) ) ) $template = $new_template ; } return $template; } add_filter( 'template_include', 'portfolio_page_template', 99 );