Intereting Posts
Тема WordPress для детей Неустранимая ошибка: Непринятая ошибка: вызов неопределенной функции get_userdata () Данные метаданных сохраняются, но НЕ отображаются в текстовом поле мета-поля. Зачем? is_wp_error () и ошибки обработки Заменить функцию плагина на пользовательскую функцию? Пользовательский тип сообщения без редактора или изменений. Уведомлять об обновлении? post_content с разрывами строк Проблема с разбивкой по страницам на category.php с использованием пользовательского запроса типа post Несколько типов сообщений для плагина BuddyBlog URL-адрес перезаписи с настраиваемыми переменными wp_update_term не создает новую уникальную пулю Как быстро добавить 500+ загружаемых файлов в магазин Woocommerce? Есть ли опция или константа wp-config.php, которую я могу настроить, чтобы позволить мне загружать ночные / бета-сборки? WordPress дает предупреждение, но мой код работает нормально Постоянная ссылка меня дает 404

Сумасшедший вопрос – обновление идентификатора сообщения

Я знаю, что это немного странно, но есть ли функция, которая может автоматически обновлять / изменять post_id, когда пользователь обновляет сообщение? Я знаю, что есть функции автоматического обновления дат публикации, но идентификатор настолько уникален, даже возможно?

Благодарю.

Solutions Collecting From Web of "Сумасшедший вопрос – обновление идентификатора сообщения"

Во-первых, я понятия не имею, ПОЧЕМУ вы хотели бы это сделать. Идентификаторы уникальны по причине. Если вы измените ID, я могу видеть, что он создает больше проблем, чем решает. Можете ли вы объяснить, почему вы хотите это сделать? Я уверен, что сообщество может дать вам альтернативное решение. Но чтобы ответить на этот вопрос, здесь говорится:

Нет. Нет такой функции. Вам нужно будет запустить некоторый код, когда пользователь сохранит или обновит сообщение. Однако это должно быть возможно. Вы можете использовать этот action-hook в файле functions.php вашей темы:

add_action( 'post_updated', 'my_function_name_here', 10, 3 ); function my_function_name_here($post_ID, $post_after, $post_before) { global $wpdb; // this is the custom query $wpdb->query($wpdb->prepare("UPDATE wp_posts SET ID=[your new ID] WHERE ID = $post_ID")); } 

Затем внутри этой функции вы можете создать запрос пользовательской базы данных, который изменит идентификатор.

Примечание. Это произойдет, если новый идентификатор уже находится в таблице, поэтому сначала вы можете проверить наличие нового идентификатора. Или разрешите проблему таким образом, чтобы не пытаться изменить идентификаторы

Я должен подчеркнуть, что это не лучший способ добиться того, чего вы пытаетесь достичь. Надеюсь, я помог.

Обновление: ОП опубликовала это как актуальную проблему: «Проблема заключается в том, что разработчики для темы управления собственностью решили заказать свойства по их идентификатору, скажем, опубликовать дату. У моего клиента есть свойства аренды, которые периодически активны и неактивен. Когда мы повторно активируем свойство, мы хотели бы, чтобы он был первым списком, но поскольку его упорядоченный по идентификатору это не может произойти, если мы повторно не вводим свойство. Сейчас мы просто клонируем свойство и удаляем оригинал, поскольку это дает клонированное свойство – новый идентификатор ».

В этом случае найдите запрос, используемый для получения всех сообщений. Вместо использования ID как order_by, используйте следующие параметры: post_status '=>' publish ',' orderby '=>' modified ',' order '=>' DESC '

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