-
Notifications
You must be signed in to change notification settings - Fork 0
Рефактор WP
#125
Comments
предположительная схема, как я это вижу глядя в диз и учитывая структуру:
далее внутри полей будет разделение на RU & EN, т.е. :
вопрос: main, contacts & privacy-policy можно объекдинить в одну вкладку |
Давай посмотрим на это с точки зрения разделения аналогично коду в наших фронт клиентах:
Последний пункт можно попытаться разбить на домены как мы это сделали в драмине - индивидуальные курсы и обычные курсы . |
в таком случае не совсем понимаю как ты видишь будущую структуру, цель у нас какая? перевести на ACF + убрать переизбыток фрагментов в сайдбаре? исходя из драм-ин структуры, будут вкладки в сайдбаре:
у них будут свои поля, в общих фрагментах, например, переиспользуемые contact-info, header и footer я могу накидать структуру непосредственно в WP, не трогая уже работающие сущности, и посмотришь что как |
Да. Для меня схема - ок. @TorinAsakura посмотри плиз. С плагинами wp - ты начнешь а мы подхватим? |
@oksssvv сообщи как будешь готова - начну миграцию |
@TorinAsakura |
@Nelfimov Вчера наш сервер атаковали через уязвимость в ВП на одном из сайтов, поэтому надо прогрейдить на наших ресурсах ВП до латеста. На ДТ я почти закончил:
Осталось - прогрейдить gQL до последних версий Я оставил их не тронутыми, так как плагины для gQL не паблятся через репозиторий ВП нам не видно что есть новые версии, поэтому нужно идти на гитхаб, брать свежие версии, накатывать, тестить что всё ок, после этого начинать рефакторинг. Мне ещё минут 15 на дораскатку ACF Pro и можете забирать эстафету |
Раскатал Polylang и ACF Pro. Полилэнг нужно подтьюнить под текущие нужды. Типы записей теперь живут в ACF. Развлекайтесь. |
тебе нужно что то делать в WP или могу приступать? |
ACF можешь уже переносить. Плагины для "общения" с кодом завтра сделаю. Ну и старые записи не трогаем чтобы сайт как можно дольше был рабочим. |
@Nelfimov |
Это типы записи. Посмотри раздел в ацф соответствующий, создай для наглядности тестовый по примеру и удали |
@oksssvv на всякий случай уточнюсь: Создаешь в ACF новые записи по схеме, которую ты расписала выше. Старые записи не трогаешь.
Это "Тип записи" |
что сделано: созданы типы записей > записи > поля > контент:
что осталось:
|
появились некоторые вопросы после внедрения новых данных в WP
глядя в старые записи вижу функционал перевода ссылка в WP на новую Политику конфиденциальности по схеме, которую я составила это должно было выглядеть как:
Вопрос:
Верно ли предполагаю и как добавить возможность перевода для созданных сою новых записей? |
Да.
Позже проверю, возможно дело в плагинах |
Бэкап стабильного ACF |
как отобразить новые записи в gql и получить их - я нашла осталось:
после решения этих двух вопросов - буду готова к переносу кода на новые данные |
Проверь, добавил плагин. Если нет - добавить 2FA и попробуй еще раз.
Нужно создавать две записи для разных языков. Пример: https://wp.dream-team.tech/wp-admin/edit.php?post_type=hero_fragments |
я понимаю принцип как оно будет, но у меня нет этого функционала для записей (в отличии от старых) действия:
вывод: вопрос: местонахождение новых данных: |
Включаешь тут: https://wp.dream-team.tech/wp-admin/admin.php?page=mlang_settings Сделал для общих фрагментов. Если что - документация https://polylang.pro/doc/working-with-acf-pro/ |
возник вопрос получения переводов, т.к. 2 записи не могут иметь одинаковое gql название поля - предыдущий метод получения переводов становится невозможным например, есть тип записи Not Found, в нем 2 записи RU и EN, эти записи не смотря на то, что поля у них с одинаковым названием должны иметь разные поэтому функционал в gql ввиде поля Language > code (RU или EN) становится бесполезным, т.к. мы и так уже четко разделяем получение рускоязычного и англоязычного контента (т.е. нужно будет переписывать логику вытягивания ru и en в нынешнем коде) вот пример как я вижу получение в такой ситуации: query notFoundQuery {
ru: notFound(id: "cG9zdDoxNTY1OQ==") {
notFoundRU {
title
textInButton
subtitle
description
}
}
en: notFound(id: "cG9zdDoxNTY3MA==") {
notFoundEN {
title
textInButton
subtitle
description
}
}
} ^ или же можно разбить на 2 отдельных кверя, для РУ и ЕН пример ответа:
вопрос: получается что плагит polylang для кода не нужен, возможно только для явного разграничения записей на RU и EN в wordpress вот пример как выглядел запрос 2х локалей ранее: export const GET_RECRUITS = gql(`
query GetRecruits {
recruits {
nodes {
title
featuredImage {
node {
mediaItemUrl
title
}
}
language {
code /* здесь мы получаем RU или EN что бы отфильтровать по нему данные */
}
}
}
}
`) это конечно достаточно удобно, но я не нашла возможности также получить записи по одному пути как это сделано тут, возможно я что то упустила, и такое получение возможно с ACF, можешь меня поправить |
там ведь полиланг явно об этом говорит - на каждый объект локали создавать новую запись, а ты чо, пыталась это делать через поле в записях? |
@TorinAsakura их поля заполнены RU и EN контентом (в зависимости от локали), но получить и RU и EN одному пути через gql я не могу, потому что в acf у записей нельзя выставить одинаковые названия для gql вот, 2 записи 404-й страницы, одна на русском другая на анлгийском, поля с одинаковыми именами, контент отличается языком:
|
там на каждый язык своя запись должна быть - доку полиленга читни краткую |
@oksssvv успех есть? |
С чем связан запрос на фичу?
Необходимо провести рефактор
WP
у сайта - сгруппировать блоки по функционалу и смыслу.1 этап
Расскажите как вы это себе видите
https://wp.dream-team.tech/wp-admin
К выполнению рефактора в админке и в коде приступать только после согласования плана с @TorinAsakura @Nelfimov
Пометка для @TorinAsakura @Nelfimov - необходимо прогрейдить плагины админки до рефактора.
Приложите пример реализаций
WP
drum-in2 этап
3 этап
The text was updated successfully, but these errors were encountered: