Numery wersji typu wpisu
WordPress Development Stack Exchange to strona z pytaniami i odpowiedziami dla programistów i administratorów WordPress. Rejestracja zajmuje tylko minutę.
Zarejestruj się, aby dołączyć do tej społeczności
Każdy może zadać pytanie
Każdy może odpowiedzieć
Najlepsze odpowiedzi są głosowane i wznoszą się na szczyt
Spytał
Oglądane457 razy
W wp-config.php
możesz zmienić sposób, w jaki WordPress radzi sobie z wersjami postów. W szczególności możesz je wyłączyć lub określić maksymalną liczbę wersji.
Chciałbym móc ustawić maksymalną liczbę lub wersje na podstawie typu postu.
czy to możliwe?
-
Usuń akcję
'wp_save_post_revision'
z'pre_post_update'
. Jest ustawiony domyślnie wwp-includes/default-filters.php
z domyślnym priorytetem (10). -
Dodaj własną funkcję do tego haka. Dostajesz
$post_ID
jako parametr, więc wykrycie typu postu jest łatwe. -
W wywołaniu zwrotnym skopiuj kod z
wp_save_post_revision()
ale użyj stałejWP_POST_REVISIONS
dla typu postupost
tylko i używaj innych wartości dla innych typów postów. Nie jestem pewien, czy można przekazać dodatkowe wartościregister_post_type()
…
1
Jest to możliwe, ale nie jest tak proste, jak zmiana pliku WP_POST_REVISIONS
nieruchomość w wp-config.php
. Jest to możliwe poprzez dodanie filtra do „wp_insert_post_data”.
Dodanie filtra odbywa się w następujący sposób:
add_filter('wp_insert_post_data' , 'my_insert_post_data');
function my_insert_post_data($data , $postarr) {
// Check the revision stuff
return $data;
}
2
po 11 latach pytania, dzisiaj natknąłem się na to pytanie i oto moje rozwiązanie:
// keep 10 revisions for only posts.
// /wp-includes/revision.php:621
// filter: wp_{$post->post_type}_revisions_to_keep
add_filter('wp_post_revisions_to_keep', 'postRevisionsToKeep');
function postRevisionsToKeep(): int
{
return 10;
}
lang-php