• Сортировка WP через post__in, как правильно собрать массив для этого поля?

    @Arh1diablo Автор вопроса
    Александр, сударь низкий Вам поклон, уже нацатый час бьюсь, и спасение пришло в виде Вашей строчки :
    'orderby' => 'post__in', // сортировка, как указано в массиве $post__in

    Все не просто заработало, залетело как так и было ! Огромная благодарность !
  • Сортировка WP через post__in, как правильно собрать массив для этого поля?

    @Arh1diablo Автор вопроса
    Александр, в самом запросе ломился изначально так:
    $args = array(
                'post__in'  => $post__in,
                'order' => DESC,
                'post_type' => 'com',
                'posts_per_page' => 999
            );
            $query = new WP_Query( $args );


    Сейчас попробовал:
    $args = array(
                'orderby' => [
                    'post__in'  => $post__in
                ],
                'order' => $sort,
                'post_type' => 'com',
                'posts_per_page' => 999
            );
            $query = new WP_Query( $args );

    Тоже не получилось, по идеи post__in в запросе это список ID которые надо выводить в таком порядке, на всякий случай приведу подробный кусок кода:

    com - основная таксомния которую мне надо вывести
    com_a - другая таксомния в которой к записям в произвольных полях подцепляется ID записей из com

    мне надо вывести com в порядке где больше записей с com_a на подцеплено, я решил что составлю список ID которые мне нужно вывести, и все получилось но не могу в запрос передать этот список, если в ручную в post__in подставляю, то все работает :

    'post__in'  => [77,144,106,103,327,326,325,324,323,322,321....]


    if(empty($sort)==FALSE){
                if($sort=='z'){ $sort='DESC'; }
                if($sort=='x'){ $sort='ASC'; }
                if($sort=='c'){
                    $sort='desc';
    
                    /* Перебираем отзывы, что бы узнать, сколько на каждый отзыв комментариев */
                    $args = array(
                        'order' => $sort,
                        'post_type' => 'com',
                        'posts_per_page' => 999
                    );
                    $query = new WP_Query( $args );
                    while ( $query->have_posts() ) {
                        $query->the_post();
                        $id_sort = get_the_ID(); /* Заносим ID в переменную т.к. после цыкла какого то хера она не работает по прямому запросу */
                        /* Считаем сколько записей прикреплено к комментарию */
                        $args_a = array(
                                'post_type' => 'com_a',
                                'meta_query' => array(
                                    array(
                                        'key'     => 'com_id',
                                        'value'   => get_the_ID()
                                    )
                                )
                            );
                            $query_a = new WP_Query( $args_a );
    
    
                            while ( $query_a->have_posts() ) { $query_a->the_post(); $i;
                                $i++;
                            }
                        wp_reset_postdata();
    
                        /* Если коментариев к отзывам нет пишем 0 */
                            if(empty($i)==TRUE){
                                $i = 0;
                            }
    
                        /* попутно собираем масив с ID постами и количеством прикрепленных записей */
                        $sort_c[] = [
                            'count' => $i,
                            'ID' => $id_sort
    
                        ];
                        unset($i);
                        /* Считаем сколько записей прикреплено к комментарию */
    
                    }
                    wp_reset_postdata();
    
                    print_r($sort_c);
                    /* сортируем в порядке убывания */
                    arsort($sort_c);
    
                    foreach ($sort_c as $key => $val) {
                        $post__in[] = $val['ID'];
                    }
                    /* пытаемся переложить в массив полученые ID через запятую но тут у нас, что то не работает */
                    $post__in = implode(",", $post__in);
                    /*сортировка должна проходить через 'post__in' => [77,327,144,106,103], */
    
                }
            }else{
                $sort='DESC';
            }
    
    
            $args = array(
                'post__in'  => $post__in,
                'order' => $sort,
                'post_type' => 'com',
                'posts_per_page' => 999
            );
            $query = new WP_Query( $args );
  • Сортировка WP через post__in, как правильно собрать массив для этого поля?

    @Arh1diablo Автор вопроса
    Так тоже делал ( в первом посте писал что прогоняю "через foreach и implode", получаю вот такой результат:
    Array ( [0] => 77 [1] => 144 [2] => 106 [3] => 103 [4] => 327 [5] => 326 [6] => 325 [7] => 324 [8] => 323 [9] => 322 [10] => 321 [11] => 320 [12] => 319 [13] => 318 [14] => 317 [15] => 316 [16] => 315 [17] => 314 [18] => 313 [19] => 312 [20] => 310 [21] => 309 [22] => 308 [23] => 307 [24] => 306 [25] => 305 [26] => 304 [27] => 303 [28] => 302 [29] => 235 [30] => 234 [31] => 233 [32] => 230 [33] => 225 [34] => 223 [35] => 222 [36] => 217 [37] => 215 [38] => 214 [39] => 213 [40] => 212 [41] => 211 [42] => 207 [43] => 206 [44] => 205 [45] => 202 [46] => 200 [47] => 199 [48] => 197 [49] => 196 [50] => 194 [51] => 192 [52] => 189 [53] => 188 [54] => 182 [55] => 181 [56] => 179 [57] => 178 [58] => 176 [59] => 175 [60] => 173 [61] => 170 [62] => 168 [63] => 165 [64] => 161 [65] => 156 [66] => 154 [67] => 151 [68] => 148 [69] => 135 [70] => 132 [71] => 131 [72] => 126 [73] => 125 [74] => 122 [75] => 119 [76] => 118 [77] => 117 [78] => 114 [79] => 112 [80] => 111 [81] => 110 [82] => 108 [83] => 107 [84] => 105 [85] => 104 [86] => 102 [87] => 100 [88] => 97 [89] => 95 [90] => 94 [91] => 88 [92] => 86 [93] => 81 [94] => 80 [95] => 78 [96] => 76 [97] => 74 [98] => 55 )


    Однако он не подходит видимо из за наличия ключей, под такой формат:
    'post__in' => [77,327,144,106,103]
    я уже пробовал убирать ключи через implode, но не могу понять, как подогнать под формат значения через запятую :|
  • Как склеить код добавления файлов в единое?

    @Arh1diablo Автор вопроса
    К сожалению в WP работает немного все по другому есть свои нюансы, свои функции и т.п. ( не спорю можно голым php прописать но это не правильно для WP - обработки, фильтры, уязвимости, инфа под кеширование и т.п. )

    ajax упомянул, что бы понимали как я принимал в переменные инфу

    как раз перебираю разные варианты но хотелось бы одним файлом т.к. его еще придется наращивать под создание таксомний с произвольными полями.

    На счет ошибки так и понял, трабла в том, что там все правильно указано ( искал инфу в мануалах и stackoverflow, разбирал примеры и т.п. вышеуказанный пост это совокупность всех примеров - собираю воедино )
  • Функция wp_generate_attachment_metadata не создает промежуточные копии изображения, почему?

    @Arh1diablo Автор вопроса
    Благодарю Вас за решение, сам пробовал по мануалам но видимо где то ошибся !
  • Ошибка - Uncaught (in promise) в Chrome. Что за ошибка и как ее исправить?

    Александр Попов, к сожалению влияют, в процессе отладки когда выдает ошибку, сидишь и начинаешь заниматься самокопанием, есть ошибка надо решить ( а вдруг это в проекте уязвимость ) особенно влияют те которые перехватывают фото\видео и т.п. или которые помогают работать тем приложухам которые перехватывают.
  • Вложенный опрос AJAX на WP не работает?

    @Arh1diablo Автор вопроса
    Вы не поверите, в пример попал вариант когда я тестил и методом "тыка" убирал данные, и добавил без определения переменой ( забыл вернуть ), вы написали, я такой ну ок верну опять ниче не будет работать и .. и все заработало!! С этим кодом борюсь уже час 6ой. Низкий Вам поклон и побольше заказов!
  • Wordpress вывод последних новостей на главной с описанием?

    Забыли setup_postdata($post);
    Это для того, что бы если создается цикл, то не цеплял инфу из основного цикла

    P.S. Вставлять перед foreach:
    <div class="last-posts">
    <h2>Последние сообщения</h2>
    <ul>
    <?php $posts = get_posts('numberposts=3'); 
    foreach($posts as $post) {setup_postdata($post); ?>
    <li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a>
    <?php if ( has_post_thumbnail() ) the_post_thumbnail(); ?>
    <?php the_excerpt(); ?>
    </li>
    <?php } ?>
    </ul>
    <div>
  • Количество произвольных записей помеченных своей таксономия?

    @Arh1diablo Автор вопроса
    Erl, не совсем понял Вас, мне не нужно ничего сравнивать, мне нужно послать WP запрос ( пишу свою тему ) по ID конкретной метке и получить значение счетчика записей.
    Можно перебрать посты с определенной меткой, но этот метод будет не правильным т.к. запросов будет много, а спросить кол-во записей к определенной метке это 1 запрос. ( тут еще моменты оптимизации ).
  • Как сверстать меню на flexbox?

    На мой взгляд лучше, что бы блоки исчезали полностью если не помещаются, вот пример:
    https://codepen.io/siteseed/pen/gOYZQRm?editors=1100
  • Что бы wp_insert_post прикреплял тэги из своей таксономии?

    @Arh1diablo Автор вопроса
    Благодарю за ответ, после публикации поста я как раз пришел к подобному решению ( использовал wp_set_object_terms ), однако не нашел как добавлять теги из нескольких категорий ( 2 раза использовал функцию так работает ):
    wp_set_object_terms( 35, array('Фирма 1 | Вопрос 1 | 1'), 'marks' );
    wp_set_object_terms( 35, 'Фирма 1', 'firms' );

    думаю больше документации почитать должен быть способ добавить сразу несколько одним запросом!
    Еще раз благодарю за ответ !
  • Запрет прямого входа на сайт, кроме тех кто пришел из поисковых систем в htaccess?

    @Arh1diablo Автор вопроса
    Александр, подскажите пожалуйста, как это будет работать в связке ?

    Что то по типу
    Allow from Referer.Contains("google.com")

    Ищу через гугл Referer.Contains выкидывает все запросы на RewriteCond %{HTTP_REFERER} и т.п. не могу найти примеры использования
  • Заблокировать mailphp через htaccess?

    @Arh1diablo Автор вопроса
    Печально ( на jino несколько сайтов, хотел отключить на некоторых которые бородатые и доживают свой век функцию отпарвки почты, но там только общее решение для всех сайтов.
    Благодарю за направление куда копать ! :)