Bonjour a tous,
je suis debutant avec wordpress et j'ai pu realiser un plugin qui me permet de créer un post type, mais mon probleme est, lorsque je crée un article avec dans ce post type, a l'affichage de ma page sur le site, il s'effectue une redirection vers un autre lien.
quelqu'un peut m'aider dans ce sens ou m'expliquer comment fonctionne les redirections avec wordpress.
merci

18 réponses


C'est quoi le lien vers quoi tu es redirigé?

codeing
Auteur

mon permalien affiche
http://localhost:8080/monsite/savoirfair/securite-infos
je suis redirigé vers ce lien
http:localhost:8080/monsite/slide/securite-infos
du coups dans le "content" de mon site, on a "PAGE INTROUVABLE"

Dans ton theme tu a créés une page pour ton custom-post ?

A quoi correspond le /slide/ dans ton url ou tu es redirigé?

codeing
Auteur

le slide= au premier plugin crée dans mon site
savoirfaire= dernier plugin crée.
le custon-post = ????
j'ai crée un template single-savoirfaire.php pour afficher le detail de l'article de savoir faire mais malheureusement elle ne s'affiche pas et me redirige vers un autre lien.

ce que tu peut faire par exemple:

dans ta page content.php

    <?php if($post->post_name == 'savoirfaire'): ?> // If le post_name correspond à savoir faire
        <?php get_template_part( 'single-savoirfaire' ); ?> // Alors inclus la page 'single-savoirfaire' ici
    <?php endif;?>

Après je ne comprends pas pq il te redirige vers slide

codeing
Auteur

je test et te fais un retour....

codeing
Auteur

JC_Pires, je me retrouve toujours avec une redirection systematique du lien
http://localhost/monsite/savoirfaire/securite-infos
vers
http://localhost/monsite/slide/securite-infos
je peux savoir quel est le fichier qui gere les redirections dans wordpress?

Je pourrais pas te dire regarde dans la doc, mais à mon avis tu as un problème de nom de ton dernier custom_post_type 'savoirfaire' on dirais qu'il prend le même nom que ton custom_post_type 'slide'

codeing
Auteur

oui, je le pense aussi, voici le code de creation de mon plugin savoir faire. a aucun moment le mot slide intervient
<?php
/**

  • Plugin Name: Eliogroup savoirfaire
  • Description: savoirfaire pour la page d'accueil du site de Eliogroup
  • Version: 1.0.0
  • Author: Sam Kooker
    */
    add_action('init','monsite_savoirfaire_init');

function mosite_savoirfaire_init(){
$labels = array(
'name' => ' savoirfaire',
'singular_name' => ' savoirfaire',
'publicly_queryable' => true,
'add_new' => 'Ajouter savoirfaire',
'add_new_item' => 'Ajouter nouveau savoirfaire',
'edit_item' => 'Editer savoirfaire',
'view_item' => 'Voir savoirfaire',
'search_item' => 'Rechercher un savoirfaire',
'not_found' => 'Aucun savoirfaire',
'not_found_in_trash' => 'Aucun savoirfaire dans la corbeille',
'parent_item_columns' => '',
'menu_name' => 'Savoir faire',
);
register_post_type('savoirfaire',array(
'public' => true,
'publicly_queryable' => false,
'labels' => $labels,
'capability_type' => 'post',
'supports' => array( 'title', 'thumbnail','editor','excerpt'),
'query_var' => true,
'rewrite' => array( 'slug' => 'savoirfaire' ),
'has_archive' => true,
'hierarchical' => false,
'menu_position' => null
));
add_image_size('savoirfaire',500,300,true);
add_image_size('savoirfairethumb',86,86,true);
}

function monsite_savoirfaire_homepage(){
$savoirfaires = new WP_query("post_type=savoirfaire");

while($savoirfaires->have_posts()){
    $savoirfaires->the_post();
    global $post;

    echo '<h4 class="newsflash-title"> Nos valeurs </h4>';

    echo '<p>';
    the_post_thumbnail('savoirfairethumb',
                array(
                    'class' => '',
                    'style' => ''
                ));
    echo '</p>';

    echo '<h4>'; the_title(); echo '</h4>';
    echo '<p>'; the_excerpt(); echo '</p>';
    echo '<a class="readmore" href="'; the_permalink(); echo '">Lire la suite...</a>';

}
wp_reset_query();

}

Et si tu met le 'publicly_queryable' => false, à true dans ton register post type ?

Source wordpress:
publicly_queryable
(boolean) (optional) Whether queries can be performed on the front end as part of parse_request().
Default: value of public argument
Note: The queries affected include the following (also initiated when rewrites are handled)
?post_type={post_type_key}
?{post_type_key}={single_post_slug}
?{post_type_query_var}={single_post_slug}
Note: If you set this to FALSE, you will find that you cannot preview/see your custom post (return 404).

codeing
Auteur

JC_Pires, merci beaucoup pour ton aide car c'etait a ce niveau le probleme, il fallait ajouter 'publicly_queryable' => true, et créer le template, single-savoirfaire.php.
alors tous marche comme sur des roulettes. merci beaucoups, c'est resolu.....

Content de t'avoir aidé

codeing
Auteur

JC_Pires, pourrais tu stp me donner le nom d'un plugin qui permet de lister le contenu d'une table "contact" créee personnellement afin de l'afficher dans le backoffice?

Il faut que tu créés tes pages coté administration, j'avais vu une video de grafikart qui en parlais

codeing
Auteur

merci bcps JC_pires, j'ai reussi a le realiser.....

Et bien c'est parfait, de nouvelles idées de plugins te viendront rapidement je pense.