deveplmaks, hdmi - это стандарт, который не создавался для четкой попиксельной графики, и тем более с высокой плотностью. На нем четкой картинки не будет. Хотите красиво как на самом маке - берите DisplayPort. В идеале - 4к или 5к монитор, это будет максимально близко к ретине. Все остальные мониторы будут выдавать в лучшем случае "весьма посредственную" картинку.
miron-partner, youtube/vimeo - да, недоступны. Но, во-первых, есть специализированные adult сервисы. Во вторых, есть неспециализированные, но не запрещающие adult контент как таковой (пока он легален юридически и не содержит детскую порнографию и прочие повсеместно запрещенные темы). В третьих, хостить на обычном веб-сервере видосы 18+ (учитывая что обычно adult-индустрия связана с таким понятием как существенный трафик) может вылезти в копеечку, падать из-за нагрузок и тд. В общем, если кратко - в мире существует огромная индустрия adult-бизнеса, и там существует своя техническая прослойка - это и сервера, и сервисы для adult-контента. Ищите, гуглите, все найдется. Начать можете с сайта/форума Master-X (он даже русскоязычный).
Сама тема устарела и обновлений не было а wordpress обновленный, последняя версия
Я писал в своем ответе, повторюсь еще раз - версия WordPress, как и сам WordPress тут вообще ни при чем - он полностью совместим с PHP7 уже давным давно. Проблема исключительно в теме, в устаревшем коде.
> 1) ничему вы в итоге не научитесь. Выучите WP - будете знать только WP.
а как вы объясните то, что я начинал с WP, и до сих пор использую его регулярно, но при этом освоил PHP, Symfony, Laravel, Phalcon и еще массу других решений из мира PHP, не говоря уже о десятке других языков программирования. Сейчас вот Swift изучаю, например. И среди моего круга общения (онлайн и оффлайн) таких WP-разработчиков с широчайшим кругозором - масса.
> 2) код WP сделал в худших традициях говнокода
Вы крайне неосторожно путаете 2 принципиально разных понятия - говнокод и легаси код. Если вы не видите разницы между этими понятиями, у меня для вас плохие новости.
Max Medar, ну вот, как я и предполагал, тут есть таки offset, а значит как минимум некое подобие пагинации/порционности. А значит, usort будет давать именно те проблемы, которые я описал в комментарии выше.
there4, у вас тут кастомный запрос к БД. Перепишите его чтобы сортировал по алфавиту, а не по post_type.
Nikita Shchypylov, нету, потому что тут еще "смотря с какой стороны посмотреть". Например, а почему разбивка front/back? Почему не core/app/public/cache? Почему не framework/app/assets/cache? И тд. Во многих случаях, грань между фронтом и беком не так видна и не так важна.
Stanislav Pugachev, +1 к запрету пушить в мастер. В мастер - только через pull request, который прошел тесты, code review, тестирование на деве и approved другими релевантными людьми из команды.
Еще как важно, это по сути противоречащие друг другу вещи. Вы комментом выше прямым текстом говорите "наследование = легкость модификации", тогда как все наоборот - "композиция = легкость модификации" и "наследование = прямой путь к сложностям модификации"
1. Наследование как бы уже давно скорее антипаттерн, поскольку усложняет модификацию
2. Легкость модификации достигается грамотной композицией
3. В контексте javascript это все вообще весьма забавно
4. Adamos реально дело говорит, про ООП на концептуальном уровне
Насколько пустые? :) Пустые строки, null, 0, false etc? От того значения, которое вернул update_post_meta() зависит что же пошло не так. Эта функция (как и многие другие) в разных ситуациях возвращает разные данные (и разные типы).
Но нужно ли в данном случае ТС-у делать правильно?
Может я конечно задрот (на самом деле да), но имхо правильно надо делать всегда, даже если конкретная задача / ситуация / проект не требуют этого прямо. Это вопрос личной гигиены и качественного роста собственных скилов.
Max Medar, ну, во-первых потому что метод очевидно тупо проксирует на get_posts, формируя его из полученных параметров (тип поста, пользователь, сколько записей). Метод не является final и не вижу проблем почему вдруг нельзя менять его поведение. Можно захардкодить сортировку, можно передать ее дополнительным параметром. В чем проблема изменить метод и его сигнатуру при необходимости? Религия?
Во-вторых, лимит вполне возможно может использоваться для постраничного/порционного вывода, или даже для простого ограничения записей числом Х, но таким образом сортировка будет применяться к каждой порции записей независимо. То есть, вы на выходе будете получать не "все мои избранные по алфавиту", а Х моих избранных по дате, но отсортированы по алфавиту. Надеюсь, различие в получаемом списке просматривается. Как реально топикстартеру надо - это уже другой вопрос, но то что здесь имеет место неочевидный потенциальный баг - очевидно.
В третьих, идеологически правильнее делать сортировки максимально близко к источнику данных, тем более если он отлично умеет это делать. Зачем лишний оверхед на php?
В четвертых, просматривается еще один очень неочевидный момент - у топикстартера на выводе присутствует кнопка "удалить из избранного". После удаления не совсем понятно что происходит - подтягивается новый список целиком? Длина списка просто уменьшается? Подтягивается 1 дополнительный элемент? Или может есть буфер из нескольких элементов, который позволит просто дозаполнить список? Сам по себе этот неочевидный момент не критичен сейчас, но понимая его может появиться дополнительное понимание, можно ли обойтись простой сортировкой на выводе, или все же лучше сделать выборку правильно изначально?
Имхо, данные надо максимально правильно выбирать из БД изначально, а не строить костыли.
Александр Соболев, ACF устроен проще (хотя, как посмотреть): поля и их свойства - это custom post type. Значения этих полей в postmeta пишутся 2мя записями - как раз в виде трюка с подчеркиванием. "Служебное" поле _fieldname содержит уникальный ID поля (не ID в базе в классическом понимании), по которому ACF и получает все свойства поля, а поле fieldname уже содержит само значение. Впрочем, у ACF есть и альтернативные подходы - сами поля можно хранить как JSON, так и в виде PHP-кода. Оба метода будут быстрее, плюс удобнее в разработке. Особенно последний, поскольку получается и кеширование опкода, и полноценное версионирование, и удобство работы, потому что можно прям на лету все генерить, при необходимости - php из php.