Задать вопрос
  • Что то намудрил с циклом WP_Query в чем ошибка?

    Vladddosss, я же писал, посмотрите у меня в ответах. И поищите по тостеру modulo или modulus. Это оператор "деление без остатка", грубо if ($query->current_post % 5) вернет true если номер текущего поста кратен 5 (то есть, каждый 5й - 5, 10, 15 и тд). Этот вопрос неоднократно обсуждался, в более простых и более сложных вариациях. Я писал детальные ответы, повторяться уже устал :)
  • Что то намудрил с циклом WP_Query в чем ошибка?

    Vladddosss,
    как сделать, чтобы выводились посты в таком виде, то есть 1 пост обернуть в одну колонку со своими классами, а 2,3,4 пост обернуть в другую колонку, плюс потом 2 посту дать класс свой, а 3,4 обернуть и так же классы дать.

    Полистайте мои ответы в профиле отвечал на подобный вопрос много раз.

    Это то, что выдало WP_Query, скопировал один пост, остальные не стал, чтоб место не занимать.

    WP_Query в полном порядке.

    Попробовал вывести через foreach и получилось. Непонятно почему через while ошибку выдавало

    Похоже на проблемы с глобальными переменными. Без xdebug не разобраться.
  • Что то намудрил с циклом WP_Query в чем ошибка?

    Vladddosss,
    он ошибку не выдает, просто белый экран

    Загрузка останавливается или он висит на белом экране в ожидании ответа сервера?

    Сам луп вроде в порядке, ничего необычного там не вижу. Есть вариант что значения, которые вы получаете с помощью $this->get_settings() и передаете аргументами в WP_Query могут иметь какие-то странные значения, но вероятность невысокая. Впрочем, попробуйте задампить $args перед самим new WP_Query, посмотрите что там ему передается в итоге. Ну и потом после инициализации сам WP_Query задампите и посмотрите что там прилетело.

    Если с запросом все ок, то тогда проблема на стороне регистрации компонент. Ну а тут уже без тяжелой артиллерии не обойтись - включайте xdebug. Не думаю, что кто-то здесь только по коду сможет вам помочь.
  • Могли бы вы поделиться хорошим техническим заданием на разработку сайта/веб-приложения?

    4) Правильная оценка проекта

    У вас ошибка в нумерации. Пунктом 10 должно стоять само написание ТЗ, и только пунктом 11 - оценка. Любая оценка сделанная ранее в итоге окажется ошибочной.
  • Что то намудрил с циклом WP_Query в чем ошибка?

    Vladddosss, вы серьезно?
    1. Включите WP_DEBUG в wp-config.php
    2. Смотрите wp-content/debug.log
    3. Ну и стандартный лог ошибок PHP тоже никто не отменял.

    Видимо вы решили пропустить начальный этап обучения, поэтому озвучу вам главное правило разработчика: Любая разработка ведется в режиме отладки, с включенным выводом ошибок всех уровней, по максимуму. Включая warning и notice. Тогда половина вопросов у вас отпадет сразу - сэкономите время и нам, и себе.
  • Кастомные вход и регистрация на сайт WordPress. Как обработать условие «is_wp_error»?

    avprinciple, это конечно чудо господнее, что оно работает, потому что:

    1. do_action не распознает ваши параметры 9 и 2 как приоритет и количество аргументов. Сигнатура:

    do_action(string $tag, $arg = '')
    где $tag - название экшна, $arg,... - один и более аргументов. В вашем случае это должны быть string $username и WP_User $user.

    А приоритет и количество аргументов указывается в add_action.

    Поэтому, по сути вы передали в свой экшн:
    do_action('wp_login', $username, $user = 9);

    Что есть некорректно. И оно не упало только потому что PHP легкомысленно относится к типам, а WP этим пользуется. По хорошему вам лучше оставить там один параметр как изначально, а в add_action() заменить 2 на 1. Тогда оно не будет ругаться, что мало параметров передали. Зачем вообще это число? Поскольку в do_action вы можете вписать произвольное количество параметров, ему нужно знать сколько же вы все-таки передали, чтобы корректно их распарсить. Это единственное предназначение этого числа.
  • Что то намудрил с циклом WP_Query в чем ошибка?

    Дмитрий, ну это да. Но проблема то точно не из-за этого. Впрочем, мы то знаем что проблему легко решить если заглянуть в логи.
  • Кастомные вход и регистрация на сайт WordPress. Как обработать условие «is_wp_error»?

    avprinciple, лол) как добавили? do_action( 'wp_login', sanitize_user($_POST['user_name']), 9 ) наверное? :)
  • Что то намудрил с циклом WP_Query в чем ошибка?

    Дмитрий, пробел там до лампочки, это валидный код.

    А по сути +1, зачем лишний счетчик если есть встроенный в $query->current_post
  • Кастомные вход и регистрация на сайт WordPress. Как обработать условие «is_wp_error»?

    avprinciple,
    Fatal error: Uncaught ArgumentCountError: Too few arguments to function mo_openid_link_account(), 1 passed

    Фатальная ошибка: Исключение ОшибкаКоличестваАргументов: Слишком мало аргументов передано в функцию mo_openid_link_account(), передано 1
    Что вполне логично - вы же сами пишете что сигнатура функции:

    mo_openid_link_account( $username, $user )

    Ей нужно 2 параметра, $username и $user. Собственно, это же и в хуке явно указано:

    add_action( 'wp_login', 'mo_openid_link_account', 9, 2);


    Экшн wp_login, коллбек mo_openid_link_account, приоритет 9, передать 2 аргумента.

    Соответственно, нужно:
    do_action( 'wp_login', sanitize_user($_POST['user_name']), $user );

    где:
    string $username
    WP_User $user
  • Есть ли такой плагин для wordpress?

    Евгений, будьте добры ознакомиться с правилами Тостера и не хамить. Вы нарушили пункт 3.2 самым явным образом. Ваше "суть его я думаю понятна" - неприемлемая формулировка. Потому что то, что понятно вам в контексте вашей задачи, сторонним людям не понятно от слова совсем.

    по поводу догадаться, если уж я скинул ссылку, то не сложно ведь, посмотреть ее и перейти по паре ссылок

    Перейти сложно. Объясню почему. Вам самому реально лень потратить пару минут СВОЕГО времени, чтобы детально сформулировать вопрос, но от других, незнакомых вам людей вы ждете того, что они потратят СВОЕ время на вникание в ВАШУ проблему. Это крайнее проявление неуважения к чужому времени. Волонтерскому кстати, мы вам тут ничем не обязаны и денег нам вы не платите.

    Ну а хамить в ответ, когда вам указали на вашу недоработку - это ни в какие ворота. Поэтому лично я себе сделал пометочку и на ваши вопросы в этом разделе отвечать не буду. Была бы на Тостере фича бана, улетели бы туда навечно.
  • Есть ли в mac OS какая-то функция проверки файлов системы на целостность?

    weranda, Тогда вполне возможно что дело не в системе, а в том, что приложение чуток устарело и не учитывает какие-то новшества Mojave / более свежего Swift.
  • Есть ли в mac OS какая-то функция проверки файлов системы на целостность?

    Андрей Горбунов, да, но имхо если человек не в курсе об этом до сих пор, то он явно не из тех, кто любит в системе ковыряться. Почти все что в CleanMyMac есть можно из командной строки делать, но UI многим больше заходит. Конкретно эта софтина закрывает сразу много вопросов, поэтому отличный вариант.
  • Почему у меня не получается обратиться к методу модели для связи?

    ortsuev33, не совсем понимаю вас. Вы делаете запросы "дай мне ВСЕ записи, которые соответствуют критериям X". В ответ вы разумеется получаете коллекцию. Если вам нужно вызвать метод модели - обратитесь к модели в коллекции. Используйте first если нужно получить 1 первую модель, или map/filter если нужно пройтись по всем. Это же коллекция.
  • Кастомные вход и регистрация на сайт WordPress. Как обработать условие «is_wp_error»?

    avprinciple, спасибо за наводку, добавил в закладки, посмотрю ближе к зиме. У меня сейчас стартап к релизу готовится, iOS приложение для фитнесс-тренировок, у меня тут АПИ и бекенд в разгаре, так что пока точно не до курсов)

    По JS кстати настоятельно советую курсы:
    - от Chris Ferdinandi по ванильному JS - https://gomakethings.com/resources/ (у него программа price parity, для наших стран стоит очень адекватно)
    - от Wes Bos по ES6/React - https://wesbos.com/courses/ (есть и по CSS - flexbox и grid)
    - Laracasts по Vue.js (а также PHP, Laravel, инструментарий, тестирование) - https://laracasts.com/series?curated (тоже есть flexbox и grid)

    Отличный контент, стоит каждую потраченную копейку (не считая того что многое доступно бесплатно).

    все пропускают раздел, где нужно кастомизировать Вход, регу, профиль :D Я не понимал почему, теперь знаю :)

    Эту штуку принято либо оставлять нативной (в этом нет ничего плохого), либо использовать уже проверенный плагин для кастомных профайлов на фронте, включая регистрацию, либо если пишут фронт на реакте/vue - использовать REST API. Написать это дело самому и по уму для опытного разработчика не проблема, а новичкам лучше туда не лезть без подготовки - чревато :)

    Хотя кстати это мысль, вполне мог бы получиться мини-курс "Все про регистрацию и авторизацию в WP", в который можно вложить как написание своего фронта (классического + SPA/аякс на чистом JS и/или на Vue/React к примеру), так и тонкости работы с roles и capabilities. Вполне интересная тема была бы. Где ж только время на это найти :)
  • Почему у меня не получается обратиться к методу модели для связи?

    ortsuev33, сделайте dd($builder) и посмотрите, какой у него тип. Я (исходя из ошибки) предположил что он будет Collection. А вы думаете, что там Model. Проверьте дампом.
  • Почему у меня не получается обратиться к методу модели для связи?

    ortsuev33, а почему вы решили что от модели? Exception вам как-бы прямым текстом говорит об обратном - вы от коллекции моделей обращаетесь. Что вполне логично если вы получаете модели с помощью ->get() и у вас там даже пагинация предусмотрена.
  • Кастомные вход и регистрация на сайт WordPress. Как обработать условие «is_wp_error»?

    А вы не проводите ни каких конференций или не принимали участий по WP?

    Та все никак руки не доходят) Долгие годы мучался "я еще недостаточно хорош чтобы на конференциях выступать", когда понял, что готов - времени уже на это нету, не самое главное) Точечно по возможности где-то выступал, но глобально - нет. Впрочем, есть вероятность что этой осенью выступлю на Киевском WordCamp с докладом.

    не понимаю почему за 16 лет, не появился в СНГ, кто писал бы толковый материал по WP,

    Есть 2 нюанса - объем рынка + платежеспособность. Всем конечно хотелось бы качественные материалы бесплатно, но в реальности это огромное количество работы - запилить качественный видео-курс, книгу-курс, серию статей в виде курса. И этот труд кто-то должен оплачивать. В цивилизованных странах люди привыкли платить за качественный обучающий контент адекватные деньги. В рунете один умник дождется скидки на какую-нибудь черную пятницу, купит по скидке, выкачает весь контент и выложит на все трекеры. А остальные с удовольствием оттуда скачают с улыбкой "я что лох платить". Поэтому рунет как рынок - не интересен.

    То же самое касается блога и статей - если я буду писать качественный контент и тратить на это время, я хочу это монетизировать - это абсолютно нормальное и здоровое желание автора. За счет рекламы не вариант - почти у всех будут блокировщики. За счет рефералок - тоже не очень вариант, все адекватные западные сервисы с хорошими рефералками "слишком дорого" для среднестатистического рунетовца. Платная подписка на блог? Не смешите. Точно не в рунете.

    даже на западной стороне, как оказывается за 16 лет - мало. Я когда гуглил, Пиппина не нашел :(

    Да нет, там дофига и больше. Ссылки и имена которые я вам привел - только верхушка айсберга. А конкретно Пиппин это старая школа, он сейчас больше менеджерит свои бизнесы построенные на культовых плагинах, так что и посты в блоге старые и в индексе обычно уже не всплывают вверху.

    У нас русскоязычных блогеров/разработчиков, которые пишут про WP, кроме wp-kama, нет?

    https://wpmag.ru еще есть, а так большинство русскоязычных разработчиков которые знают английский тусуются больше "там". Я например вообще по рунету не хожу и никогда не ищу на русском, тем более во всяких яндексах (сервис, заблокированный в Украине). Только гугл, только английский. Если посмотреть мою историю в браузере, то рунета для меня кроме Тостера и Гиктаймс - не существует. От слова совсем.

    Вам с вашим багажом на udemy надобно, я был бы первым учеником :)

    А вот над этим я активно-пассивно размышляю который год. По чесноку, есть в черновиках штук 50 качественных статей, которые надо конечно уже обновить/актуализировать, но в целом материалы очень годные. Есть куча заметок для видео-уроков и даже целых вебинаров по узким темам в WP. Но довести все это дело до логического завершения физически не хватает ресурса. Но не исключено, что доберусь когда-то.
  • Кастомные вход и регистрация на сайт WordPress. Как обработать условие «is_wp_error»?

    avprinciple,
    А где вы всю эту информацию черпали?

    Да все просто - с WP работаю очень плотно с его первых дней. Сам WP родился в 2003м, а я впервые за него сел в 2004м, и дальше рос вместе с ним, следя за всеми ключевыми обсуждениями среди разработчиков ядра, участвуя в них. Чувствую себя в коде ядра WP как дома, потому что со временем перелопатил его от корки до корки, много-много раз. Он мне как родной :)

    Дайте ещё ссылки для развития WP.

    https://wordpress.org/support/
    https://developer.wordpress.org/themes/
    https://developer.wordpress.org/plugins/
    https://developer.wordpress.org/apis/ - этот раздел еще в работе, доступен только авторизованным пользователям (можете зарегистрироваться на wordpress.org, и получите доступ автоматом)
    Ну и https://codex.wordpress.org - там все еще достаточное количество полезной инфы, не все перенеслось на новую версию developer.wordpress.org
    https://deliciousbrains.com/blog/
    https://10up.github.io/Engineering-Best-Practices/
    https://engineering.hmn.md/standards/

    Дальше найдите эти компании на GitHub (одних только HumanMade и 10Up уже достаточно), и посмотрите там список людей в самих командах на GitHub. Вот все из этих списков - адекватные. И их блоги можно и нужно изучать.

    Кроме этого - статьи и уроки из надежных источников. Условно говоря, есть люди / компании, которые пишут качественный код (и учат этому). Это тот же Pippin Williamson, Tom MacFarlin, братья Ковшенины, компании Delicious Brains, 10Up, Human Made и тд. Любой контент от них - годный. Часто - лучший в экосистеме. Ему можно и нужно доверять.То же касается многих разрабов из команды ядра, разрабов популярных плагинов и тд - среди них очень много качественного материала, разбросано по блогам. Но тут уже надо понимать кто есть кто, а это придет со временем - когда вы будете узнавать конкретных людей из экосистемы. Все остальное нужно воспринимать критически и "доверять но проверять", потому что говнокода и вредных советов намного больше, чем полезных. Типичный урок "how to do X in wordpress" как правило содержит ряд фатальных концептуальных ошибок - статья из камы которая привела вас сюда с этим вопросом яркий пример этого. И, кстати, еще не самый худший - многие подобные уроки вообще например опускают код связанный с проверкой данных из REQUEST, а новички и не догадываются что это такое и как это валидировать, санитайзить и тд. Результат - крики о помощи "мой сайт взломали" и потом на каждом углу вам скажут что "вордпресс говно и дырявый".

    Уже стереотип ровняться только на зарубежные источники. Я гуглил, и не мало, если я нашел такую "дичь" на зарубежных, то в СНГ пространстве я вообще ничего не нагуглил.

    Ровняться не нужно - говнокода и плохих советов там очень много. Единственное ключевое отличие от рунета - материала в принципе на порядки больше и он свежее. Большая часть материалов в рунете (за исключением нескольких авторских блогов) - переводы и вторичное переосмысливание западных материалов. С задержкой по времени.

    Вчерашний материал я прочитал, реализовал регу. C ajax для формы через JS, вывод ошибок не работает, остальное делает, регает, ну то такое, когда PHP изучу - буду понимать почему :D

    Вот это уже правильное направление :)
    Вывод ошибок здесь проще реализовать - ваш callback на wp_ajax_{action}/wp_ajax_nopriv_{action} должен в итоге всегда возвращать wp_send_json_success($data); die; / wp_send_json_error($data); die;, где $data будет JSON-объектом, содержащим ошибки или положительный результат (например id или даже все данные только что зарегистрированного пользователя). А что дальше делать с JSON на фронте и как вывести в форме я думаю вы уже знаете. Вот тут вам и пригодятся data-атрибуты.