Ondersteuning » Code oplossingen gezocht » Variable toevoegen in permalink

2 reacties aan het bekijken - 1 tot 2 (van in totaal 2)
  • Eerst en vooral moet je je functie die het ‘pand’ post type registreert aanpassen om (a) een nieuwe rewrite tag en (b) de gewenste rewrite slug te registreren, voorbeeld:

    add_action( 'init', 'jandoornbos_pand_post_type_init' );
    function jandoornbos_pand_post_type_init()
    {
        add_rewrite_tag( '%loc%', '([^&]+)' );
    
        register_post_type( 'pand', array(
            // overige args hier
            'rewrite' => array( 'slug' => 'pand/%loc%' ),
        ) );
    }

    Vervolgens gebruik je de post_type_link filter om je meta in de url te krijgen. Ik ga er in het onderstaande voorbeeld van uit dat je post meta met key ‘locatie’ gebruikt:

    add_filter( 'post_type_link', 'jandoornbos_link_filter', 1, 3 );
    function jandoornbos_link_filter( $post_link, $id = 0, $leavename = FALSE )
    {
        $post = get_post( $id );
    
        if( $post->post_type != 'pand' )
                return $post_link;
    
        $loc = get_post_meta( $post->ID, 'locatie', true );
        $str = $post_link;
        $str = str_replace( '%loc%', $loc, $str );
    
        return $str;
    }

    De code hierboven gaat in functions.php, bezoek na implementatie even de Instellingen -> Permalinks pagina in je admin om de rewrite rules te flushen.

    Thread starter jandoornbos

    (@jandoornbos)

    Dank je wel donutz!
    Het werkt super!

2 reacties aan het bekijken - 1 tot 2 (van in totaal 2)
  • Het onderwerp ‘Variable toevoegen in permalink’ is gesloten voor nieuwe reacties.