Permalink-Struktur abhängig vom benutzerdefinierten Feld

Ich versuche, eine Permalink-Struktur zu erstellen, die nur verwendet wird, wenn ein bestimmtes benutzerdefiniertes Feld ausgefüllt wird.

Zum Beispiel, wenn der benutzerdefinierte Feldwert von ‘premium’ ‘1’ ist, möchte ich / premium / meiner Permalink-Struktur hinzufügen.

Dies ist mein aktueller Code:

function premium_custom_meta_permalink( $link, $post ){ $post_meta = get_post_meta( $post->ID, 'premium', true ); if($post_meta == 1){ $post_meta = 'premium'; $link = str_replace( '%premium%', $post_meta, $link ); } else { $link = str_replace( '/%premium%', '', $link ); } return $link; } add_filter( 'post_link', 'premium_custom_meta_permalink', 10, 2 ); 

Dies funktioniert bis zu dem Punkt, an dem die Post besucht wird. Es zeigt dann einen 404-Fehler an. Was mache ich falsch?

Hoffnung auf Hilfe!

Solutions Collecting From Web of "Permalink-Struktur abhängig vom benutzerdefinierten Feld"