- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов

В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Всем привет!
Подскажите если кто знает или правильно ли я понял, что при создании кастумного вывода цикла статей с помощью WP_Query он в переменную записывает все статьи, которые есть в базе?
$query = new WP_Query;
Var_dump и printr выводит какую-то галиматью в которой тяжело разобраться, но вот если поставить в аргументах posts_per_page=-1 он вывел все статьи которые есть на сайте, хотя там в аргументах было указано только по количеству комментариев.
Так что получается, что при использовании $query = new WP_Query; в переменной $query хранятся по сути все статьи, и не важно какое количество ты собираешься выводить posts_per_page, и не важно с комментариями ли они или без - orderby=comment_count, все статьи не зависимо от запроса будут храниться в этой переменной, а потом уже сколько ты там хочешь вывести, по количеству комментариев и т.д., и т.п.
Короче получается в переменной $query при создании нового объекта с помощью класса WP_query хранятся все посты, которые есть на сайте?
Заранее всем спасибо за ответы!Var_dump и printr выводит какую-то галиматью в которой тяжело разобраться
Изучай основы ООП, и разберёшься.
получается, что при использовании $query = new WP_Query; в переменной $query хранятся по сути все статьи
Нет, не получается. Ничего там не хранится.
Изучай основы ООП, и разберёшься.
Нет, не получается. Ничего там не хранится.
WP_Query
Выбирает записи из базы данных по указанным критериям.
Правда про указанным критериям у меня есть сомнения,
мне бы просто узнать все ли там статьи или нет,
я подозреваю что все, т.к. если включить пагинацию то независимо от posts_per_page какой ты там указал, выведет все статьи постранично
Echo $query->found_posts; - вернул точную цифру в виде суммы количества всех постов, а ты говоришь ничего нету, вот тебе и ООП, все там вся инфа о всех постах 100%.
Все правильно я понимаю!Все правильно я понимаю!
Нихрена ты не понимаешь. Ты совершил запрос к базе данных с помощью метода класса, и получил штатный результат.
А не вот это:
при использовании $query = new WP_Query; в переменной $query хранятся по сути все статьи
хотя там в аргументах было указано только по количеству комментариев.
Ты используешь неправильную терминологию, приводишь обрывки кода - вот тебя и понять никто не может, что же по факту ты хочешь узнать.
WP_Query - это класс, который принимает определенные параметры и на основании их создает запрос в базу данных. А вот уже после выполнения этого запроса создается экземпляр(обьект) класса, переменная - неправильное слово, в котором содержаться все результаты запроса. И дальше ты можешь обрабатывать их в цикле как тебе нравится. А встроенные методы класса дают определенную информацию, например о количестве постов, тайтлы и проч.
В документации все это хорошо расписано, просто потрать 5 минут времени чтоб прочитать - https://developer.wordpress.org/reference/classes/wp_query/
Если не нужна пагинация и информация об общем количестве записей по запросу, то это можно отключить
no_found_rows = true
тогда и запрос будет быстрее выполнятся.
Параметр posts_per_page - ограничивает количество постов в запросе, сколько укажите, столько и будет.
posts_per_page = -1 - выводит все посты
Да, да извиняюсь, точно это класс, на основе его объект у того свойства/методы, НО это все мне не важно :), мне важно, что речь идет о всех статьях, а не о пяти, одной, ста и т.д.
Вы делаете выборку posts_per_page=5, пять статей, но на самом деле это просто он показывает пять статей, но как только добавляется пагинация, то там все статьи.
Когда вы делаете выборку по количеству комментариев orderby=comment_count, если добавите пагинацию, то тоже увидите все свои статьи, которые есть на вашем сайте + даже те у которых 0 комментариев.
Пусть это будет объект, пусть это будет не переменная, пусть там какие-то методы подключаются и делают выборку, но по факту речь идет о всех статьях, а не об одной.
Не обижайтесь на меня, я ведь не программист я иногда даже не понимаю, что там происходит.но как только добавляется пагинация, то там все статьи.
нет там всех статей, это просто не работало бы... есть сайты с миллионами статей и никаких ресурсов не хватило бы для работы
Если задать параметр минус один, -1, в posts_per_page=-1, то выведутся все статьи, которые есть на сайте, это проверено, не знаю может он и не хранит их в созданной переменной, может она превращается в объект и его методы в моменте вытаскивают их из базы, ок, даже так, но речь идет о всех статьях. Он выведет хоть миллион статей, если браузер и сервак не повиснет, при чуть больше 2К статей чувствуется запинка при выводе. Я просто думал он все в переменную кладет $query, а потом с помощью цикла while вы вытаскиваете данные которые вам нужны заголовки, контент, миниатюру и т.п. Не судите строго я сам не знаю, как оно работает :), мне лишь было важно, что при добавлении пагинации выводятся все статьи какие там бы небыли запросы и то это все не точно.
И самый загадочный вопрос для меня если в ней ничего нет, то что в ней есть, и что выводит цикл while из неё…