Изображение готовится
Описание
Это дополнение к расширенным настраиваемым полям (ACF) >= версии 5.
Этот плагин не будет работать с ACF версии 4.
Этот плагин не будет предоставлять никаких функций, если не установлен ACF >=5.
Этот плагин не создает новый тип поля или какой-либо интерфейс администратора. Этот плагин при использовании в качестве
Как описано ниже, существующие поля ACF Relationship и Post Object работают в двунаправленном режиме.
автоматическое обновление поля отношения на другом конце отношения.
Дополнительную информацию см. в разделе "Другие примечания".
Репозиторий Github
Этот плагин также есть на GitHub.
https://github.com/Hube2/acf-post2post
Как использовать
- Создайте связь или поле объекта публикации.
- Поле должно находиться на верхнем уровне. Это не может быть подполе повторителя или гибкое поле контента.
- Имя поля должно быть одинаковым во всех сообщениях. Другими словами, если вы хотите, чтобы разные типы сообщений были связаны, вы должны добавить поле с одинаковым именем поля в оба типа сообщений.
Когда вы добавляете публикацию в поле связи или объекта публикации и в публикации, добавленной в связь, появляется то же имя поля, тогда поле связи в связанной публикации будет обновлено, чтобы включить связь с редактируемой публикацией.
Если сообщение удаляется из связи, удаляемое сообщение также будет обновлено, чтобы удалить связь с редактируемым сообщением.
Поля объекта публикации
Если используется поле объекта публикации
- Если разрешено несколько значений, то это будет работать так же, как и поля отношений.
- Если он не допускает несколько значений и связанное сообщение уже содержит значение, см. "Перезаписать настройки".
Перезаписать настройки
Если поле в связанном сообщении, будь то поле объекта сообщения, которое допускает только 1 значение, или поле связи, которое имеет максимальное количество связанных сообщений, если поле в связанном сообщении уже имеет максимально допустимое количество значений, по умолчанию новое значение не будет добавлено. Вы можете переопределить это значение по умолчанию, указав параметры перезаписи.
Как добавить настройки перезаписи
add_filter("acf-post2post/overwrite-settings", "my_overwrite_settings");
функция my_overwrite_settings ($ настройки) {
$settings["имя_поля"] = массив(
"перезаписать" => правда,
"тип" => "первый"
);
вернуть $настройки;
}
Каждый элемент массива $settings является массивом. Индекс массива - это поле, для которого вы хотите указать настройки. Каждое поле может иметь 2 аргумента.
- перезаписать: true/false или 1/0. Если установлено значение true или 1, новые значения перезапишут старые значения. Значение этого параметра по умолчанию - false.
- тип: "первый" или "последний". Какое из существующих значений следует удалить: первое добавленное или последнее. Значение по умолчанию - "первый".
после удаления значения из существующего списка новое значение добавляется в конец списка.
Исключения на местах
Вы можете отключить автоматические двунаправленные связи для определенных ключей полей с помощью фильтра
// field_XXXXXXXX = ключ поля
// вы хотите отключить двунаправленные связи для
add_filter("acf/post2post/update_relationships/key=field_XXXXXXXX", "__return_false");
Привязки после обновления**
Есть два действия, которые можно использовать после обновления публикации и передачи ей одного идентификатора публикации. Пожалуйста, убедитесь, что вы видите тонкую разницу между этими двумя крючками.
Первый запускается после обновления каждого связанного сообщения.
add_action("acf/post2post/relationship_updated", "my_post_updated_action");
функция my_post_updated_action($post_id) {
// $post_id == идентификатор сообщения, которое было обновлено
// делаем что-то после обновления связанного сообщения
}
Второй запускается после обновления всех сообщений и передает массив идентификаторов сообщений.
add_action("acf/post2post/relationships_updated", "my_post_updated_action");
функция my_post_updated_action($posts) {
// $posts == и массив идентификаторов постов, которые были обновлены
// делаем что-то со всеми сообщениями после обновления
foreach ($posts как $post_id) {
// делаем что-то для публикации
}
}
Этот плагин не будет работать с ACF версии 4.
Этот плагин не будет предоставлять никаких функций, если не установлен ACF >=5.
Этот плагин не создает новый тип поля или какой-либо интерфейс администратора. Этот плагин при использовании в качестве
Как описано ниже, существующие поля ACF Relationship и Post Object работают в двунаправленном режиме.
автоматическое обновление поля отношения на другом конце отношения.
Дополнительную информацию см. в разделе "Другие примечания".
Репозиторий Github
Этот плагин также есть на GitHub.
https://github.com/Hube2/acf-post2post
Как использовать
- Создайте связь или поле объекта публикации.
- Поле должно находиться на верхнем уровне. Это не может быть подполе повторителя или гибкое поле контента.
- Имя поля должно быть одинаковым во всех сообщениях. Другими словами, если вы хотите, чтобы разные типы сообщений были связаны, вы должны добавить поле с одинаковым именем поля в оба типа сообщений.
Когда вы добавляете публикацию в поле связи или объекта публикации и в публикации, добавленной в связь, появляется то же имя поля, тогда поле связи в связанной публикации будет обновлено, чтобы включить связь с редактируемой публикацией.
Если сообщение удаляется из связи, удаляемое сообщение также будет обновлено, чтобы удалить связь с редактируемым сообщением.
Поля объекта публикации
Если используется поле объекта публикации
- Если разрешено несколько значений, то это будет работать так же, как и поля отношений.
- Если он не допускает несколько значений и связанное сообщение уже содержит значение, см. "Перезаписать настройки".
Перезаписать настройки
Если поле в связанном сообщении, будь то поле объекта сообщения, которое допускает только 1 значение, или поле связи, которое имеет максимальное количество связанных сообщений, если поле в связанном сообщении уже имеет максимально допустимое количество значений, по умолчанию новое значение не будет добавлено. Вы можете переопределить это значение по умолчанию, указав параметры перезаписи.
Как добавить настройки перезаписи
add_filter("acf-post2post/overwrite-settings", "my_overwrite_settings");
функция my_overwrite_settings ($ настройки) {
$settings["имя_поля"] = массив(
"перезаписать" => правда,
"тип" => "первый"
);
вернуть $настройки;
}
Каждый элемент массива $settings является массивом. Индекс массива - это поле, для которого вы хотите указать настройки. Каждое поле может иметь 2 аргумента.
- перезаписать: true/false или 1/0. Если установлено значение true или 1, новые значения перезапишут старые значения. Значение этого параметра по умолчанию - false.
- тип: "первый" или "последний". Какое из существующих значений следует удалить: первое добавленное или последнее. Значение по умолчанию - "первый".
после удаления значения из существующего списка новое значение добавляется в конец списка.
Исключения на местах
Вы можете отключить автоматические двунаправленные связи для определенных ключей полей с помощью фильтра
// field_XXXXXXXX = ключ поля
// вы хотите отключить двунаправленные связи для
add_filter("acf/post2post/update_relationships/key=field_XXXXXXXX", "__return_false");
Привязки после обновления**
Есть два действия, которые можно использовать после обновления публикации и передачи ей одного идентификатора публикации. Пожалуйста, убедитесь, что вы видите тонкую разницу между этими двумя крючками.
Первый запускается после обновления каждого связанного сообщения.
add_action("acf/post2post/relationship_updated", "my_post_updated_action");
функция my_post_updated_action($post_id) {
// $post_id == идентификатор сообщения, которое было обновлено
// делаем что-то после обновления связанного сообщения
}
Второй запускается после обновления всех сообщений и передает массив идентификаторов сообщений.
add_action("acf/post2post/relationships_updated", "my_post_updated_action");
функция my_post_updated_action($posts) {
// $posts == и массив идентификаторов постов, которые были обновлены
// делаем что-то со всеми сообщениями после обновления
foreach ($posts как $post_id) {
// делаем что-то для публикации
}
}
Похожие товары
Смотреть все
Хит продаж
WordPress
Хит продаж
WordPress