Adadx

Рейтинг
20
Регистрация
10.09.2016

у меня тоже беда с тещёй. ей непонятно, как можно не выходя из дома и не махая лопатой или кайлом зарабатывать. для людей старой закалки, если у тебя трудовая в отделе кадров лежит значит ты работаешь, если нет то ты бездельник.

Иногда руки чешутся и ставлю надоевшую Доту2 и пробую новых героев или на старых смотрю изменения. Накатывает на такое где то раз в полгода. Какое то наваждение. Потом опять сношу с ПК, до следующего раза.

Извините, проблему решил сам. Тему можно закрывать.

hakuna matata:
Попробуйте заменить на

   $all_cats_ids = get_terms('post_tag', 'orderby='.$by_sort.'&hide_empty=0&number=5');

Заменил. Количество выводимых постов меняется, но нет постраничной навигации.

hakuna matata:
Adadx, здесь функция wp_tube_tags_letters_list не вызывается ни разу, только назначается.
Подозреваю, это кусок из functions.php?

wp_tube_tags_letters_list даже не выводит список букв на страницу, т.к. просто возвращает массив.


Нужен код этой страницы. tag.php или что-то такое.

<?php

/* Template Name: WPTube-Tags */
get_header();

$by_letter = (isset($_REQUEST['view']) && !empty($_REQUEST['view'])) ? $_REQUEST['view'] : '';
$by_sort = (isset($_REQUEST['sort']) && !empty($_REQUEST['sort'])) ? $_REQUEST['sort'] : 'name';
?>

<div class="box">
<div class="headline">
<div class="title"><?php the_title(); ?></div>
<?php while ( have_posts() ) : the_post(); ?>
<div class="top_desc_block">
<?php the_content(); ?>
</div>
<?php endwhile; ?>
<div class="sorting">
<a href="<?php echo get_permalink() . '?sort=name'; ?>" class="<?php echo $by_sort === 'name'? 'active' : '' ?>">Name</a>
<a href="<?php echo get_permalink() . '?sort=count'; ?>" class="<?php echo $by_sort === 'count'? 'active' : '' ?>">Count</a>
</div>
</div>
<div class="alphabet">
<?php
$ltrs = wp_tube_tags_letters_list();
foreach ($ltrs as $l) {
echo '<a href="'.get_permalink() . '?view=' . $l .'">' .$l. '</a>';
}
?>
</div>
<?php
$all_cats_ids = get_terms('post_tag', 'orderby='.$by_sort.'&hide_empty=0');

$idp = array();

for ($o = 0; $o < count($all_cats_ids); $o++) {

if ( isset($by_letter) && !empty($by_letter)){
if (substr($all_cats_ids[$o]->name, 0, 1) !== $by_letter)
continue;
}

$args = array(
'numberposts' => 1
,'tag_id' => $all_cats_ids[$o]->term_id
,'post_status' => 'publish'
);

$result = wp_get_recent_posts($args);

$idp[] = @$result[0]['ID'];
}

query_posts(array('post__in' => $idp, 'nopaging' => true, 'posts_per_page' => -1, 'ignore_sticky_posts' => true, 'orderby' => $by_sort));

$exist_cats = array();
?>
<?php if (have_posts()): ?>
<div class="thumbs-items">
<?php while (have_posts()) : the_post(); ?>
<?php if ( has_post_thumbnail() ) : ?>
<?php
$cat_objs = get_the_terms (get_the_ID(), 'post_tag');

$cat_obj = null;
for ($i = 0; $i < count($cat_objs); $i++) {
if (!in_array($cat_objs[$i]->term_id, $exist_cats)) {
$cat_obj = $cat_objs[$i];
}
}

if ($cat_obj != null) {
$exist_cats[] = $cat_obj->term_id;

$cat_link = get_tag_link( $cat_obj->term_id);
$cat_name = $cat_obj->name;
$cat_altname = $cat_obj->slug;
$cat_count = $cat_obj->count;
$cat_desc = $cat_obj->description;
?>
<div class="thumb thumb thumb-model">
<a href="<?php echo $cat_link; ?>">
<div class="image-holder">
<?php
if (function_exists('z_taxonomy_image')) {
$arratr = array ('class' => 'lazy wp-post-image',
'alt' => $cat_altname);
$taxonomy_thumb = z_taxonomy_image($cat_obj->term_id, 'wptube-pics', $arratr, false);
if (empty($taxonomy_thumb)) {
//wp_taxonomy_image ('wptube-pics');
}
else {
echo $taxonomy_thumb;
}
}
else {
//wp_taxonomy_image ('wptube-pics');
}
?>
</div>
<div class="title">
<div class="text"><?php echo $cat_name;?></div>
</div>
</a>
<?php edit_post_link(); ?>
</div>
<?php } endif; ?>
<?php endwhile; ?>
</div>
<?php else: ?>
<h3><?php _e( 'Sorry, nothing to display.', TXTDOMAIN ); ?></h3>
<?php get_template_part('searchform', '404'); ?>
<?php endif; ?>
</div>
<?php get_footer(); ?>

<?php wp_footer(); ?>
hakuna matata:
Adadx, покажите, как используется функция wp_tube_tags_letters_list в шаблоне. Там наверняка есть что-то еще.
Нужно больше информации.

/ru/forum/comment/16035609

Cтраница с списком тегов, к каждому тегу прикреплено изображение, при нажатии на миниатюру открывается страница с тегом где отображены все сообщения с этим тегом, но на отдельной странице с тегом работает функция вывода количества постов заданная в админке WP - как на главной странице.

---------- Добавлено 20.04.2019 в 21:27 ----------

Sitealert:
Практика не может показать осмысленность выраженияПотому что осмысленность фраз определяется не практикой, а связностью элементов текста и смысловым наполнением в контексте обсуждаемого вопроса.

Извините, у меня нет желания в какую либо демагогию и словоблудие вступать с вами не по факту вопроса.

Sitealert:

1. Этого не может быть.
2. Это утверждение лишено смысла.

1. Это есть, а значит существует, т.е. правда.

2. Практика показывает обратное.

Sitealert:

Эта функция не выводит список тегов. Она выводит список первых букв имён.

Всё верно. На странице отображается всё тот же полный список, только вместо сортировки от A до Z по alphabetycal отображается сортировка по заданному количеству букв.

Ваш код некорректно отображает всё тот же полный список тегов. Привожу функцию полностью:

if ( ! function_exists( 'wptube_post_thumbnail') ) {

function wptube_post_thumbnail (){
$image_url = wp_get_attachment_image_src( get_post_thumbnail_id(), 'wptube-tumbs');
?>
<img src="<?php echo get_stylesheet_directory_uri() . '/img/grey.gif'; ?>"
id="<?php echo get_the_ID(); ?>"
width="100%"
class="lazy wp-post-image"
alt="<?php echo get_the_title(); ?>"
title="<?php echo get_the_excerpt();?>"
style="display: inline;"
data-original="<?php echo $image_url[0]; ?>">
<?php
}
}
function wp_tube_tags_letters_list (){

$res = array();
$chars = range('A', 'Z');

$term_args=array(
'orderby' => 'name',
'order' => 'ASC'
);

$terms = get_terms('post_tag', $term_args);

foreach ($terms as $term) {
foreach ($chars as $char) {
if (substr($term->name, 0, 1) === $char) {
if (!in_array($char, $res))
$res[] = $char;
}
}
}
return $res;
}
hakuna matata:
Adadx, проверил у себя - работает.

Ваш способ работает частично. В целом он отображает всё тот же полный список. Если есть желание могу дать доступ в админку сайта для экспериментов.

12
Всего: 11