réécrire le mot dans l’URL – wordpress

Publié par Jean-Michel le

je travaille avec wordpress et le thème acheté. Le thème génère l’url http://martin.heskovci.sk/avalon_td_gallery/zvierata/ et je veux le changer en http://martin.heskovci.sk/portfolio/zvierata/

J’ai essayé quelque chose dans .htacces et functions.php mais sans résultat. j’ai trouvé quelque chose dans le code

<a href="'.$avalon_td_post_permalink.'" class="avalon_td_btn"><span>'.esc_html__('View Full Gallery', 'avalon').'</span> <i class="xcon-right-open-big"></i></a>

Je pense que je dois réécrire « .$avalon_td_post_permalink. » mais je ne sais pas comment. Quelqu’un m’aide s’il vous plait?

MISE À JOUR 1

J’ai trouvé celui-ci. Où dois-je réécrire « avalon_td_gallery » ? J’ai essayé de changer la ligne de réécriture et la dernière ligne, mais après avoir créé une nouvelle galerie, j’obtiens toujours 404.

// Arguments for gallery projects
            $args = array(
                'labels'                => $labels,
                'public'                => true,
                'publicly_queryable'    => true,
                'show_in_nav_menus'     => true,
                'show_in_admin_bar'     => true,
                'exclude_from_search'   => false,
                'show_ui'               => true,
                'show_in_menu'          => true,
                'menu_position'         => 4,
                'menu_icon'             => 'dashicons-format-gallery', //XXS_PLUGIN_URI . 'assets/img/portfolio-icon.png',
                'can_export'            => true,
                'delete_with_user'      => false,
                'hierarchical'          => false,
                'has_archive'           => true,
                'capability_type'       => 'post',
                'rewrite'               => array( 'slug' => 'avalon_td_gallery', 'with_front' => false ),
                'supports'              => array( 'title', 'editor', 'thumbnail' )
            );

            // Register our gallery post type
            register_post_type( 'avalon_td_gallery', $args );

MISE À JOUR 2 :

'rewrite' => array( 'slug' => 'avalon_td_gallery', 'with_front' => false ),

pour ça

'rewrite' => array( 'slug' => 'portfolio', 'with_front' => false ),

et chose importante, Paramètres -> Permaliens page et appuyez sur Enregistrer. Cela va vider les règles de réécriture et maintenant ça marche !

Solution n°1 trouvée

Je ne peux pas faire de commentaire – je vais donc répondre ici.

Je rechercherais d’abord dans le dossier du projet les fichiers contenant avalon_td_gallery .

En fonction de la manière dont le thème génère l’URL, cela décidera de la manière dont vous modifierez l’URL. S’il est créé avec un type de publication personnalisé, vous modifiez simplement les règles de réécriture. Le avalon_td_gallery serait à l’intérieur d’une fonction register_post_type. Et soit vous modifiez la valeur, soit vous ajoutez une règle de réécriture à cette fonction :

'rewrite' => array('slug' => 'portfolio'),

Évidemment, vous devez vous assurer qu’il n’y a pas de conflits en utilisant cette règle de réécriture.

L’autre façon de créer des règles de réécriture personnalisées à la « façon wordpress » est la fonction add_rewrite_rule. Si vous y trouvez avalon_td_gallery , changez simplement le premier paramètre de la règle de réécriture, puis mettez à jour vos permaliens dans Wordress. Par exemple:

add_rewrite_rule( 'avalon_td_gallery/([^/]+)', 'index.php?gallery_item=$matches[1]', 'top' );

J’espère que cela pourra aider.

METTRE À JOUR

Vous ne devez donc pas modifier toutes les instances de avalon_td_gallery dans tous les fichiers. Vous voulez toujours que le gestionnaire ou la variable de requête reste comme avalon_td_gallery, vous voulez juste que l’url change. Voici un exemple très simple de la fonction register_post_type.

function codex_custom_init() {
    $args = array(
        'public' => true,
        'label'  => 'Gallery',
        'rewrite' => array( 'slug' => 'portfolio' )
    );

    register_post_type( 'avalon_td_gallery', $args );
}

add_action( 'init', 'codex_custom_init' );

Par conséquent, seule la limace changerait. Si vous avez changé le gestionnaire register_post_type en autre chose, il le considérera comme un nouveau type de publication. Alors ne fais pas ça :

register_post_type( 'portfolio', $args ); // -< THIS IS WRONG

Si vous pouvez annuler l’enregistrement de votre type de publication, revenir à la galerie avalon_td_gallery , cela conservera vos données sous cet espace de noms, mais ne changera que l’URL.

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *