Toutes mes réponses sur les forums
-
AuteurMessages
-
31 mai 2012 à 14 h 55 min en réponse à : Afficher le listing des posts d’une nouvelle taxonomy #835764
bon en faite quand j’active la réécriture d’URL ça se remet à déconner…
Peux tu me dire comment faire pour réenregistrer les permalliens s’il te plait ?31 mai 2012 à 14 h 39 min en réponse à : Afficher le listing des posts d’une nouvelle taxonomy #835763Au final j’ai redéployé un Wodpress vierge et j’y ai intégré ce code
function my_post_type_piano() {
register_post_type( ‘pianoneuf’,
array(
‘label’ => __(‘Piano neuf’),
‘singular_label’ => __(‘Piano neuf’, ‘toolbox’),
‘_builtin’ => false,
‘public’ => true,
‘show_ui’ => true,
‘show_in_nav_menus’ => true,
‘hierarchical’ => true,
‘capability_type’ => ‘page’,
‘menu_icon’ => get_template_directory_uri() . ‘/images/icon_piano.png’,
‘rewrite’ => array(
‘slug’ => ‘piano-neuf’,
‘with_front’ => FALSE,
),
‘supports’ => array(
‘title’,
‘editor’,
‘thumbnail’,
‘excerpt’,
‘custom-fields’,
‘comments’)
)
);
register_taxonomy(‘pianosneufs_category’, ‘pianoneuf’, array(‘hierarchical’ => true, ‘label’ => ‘Marque pianos neufs’, ‘singular_name’ => ‘Category’, « rewrite » => true, « query_var » => true));
}
add_action(‘init’, ‘my_post_type_piano’);et là ça fonctionne…
31 mai 2012 à 13 h 51 min en réponse à : Afficher le listing des posts d’une nouvelle taxonomy #835762ok je vais regarder de ce côté là
En plus j’ai fait une énorme faute d’orthographe … quelle tristesse !
Oui, mais comment se fait il qu’on ne puisse plus modifier c’est message ? c’est un bug juste chez moi ?
le walker du dessus n’est pas le bon mais impossible de modifier le message…Voilà le bon walker :EDIT modération: le message précédent a été supprimé pour ne pas laisser une erreur.
class My_Function_Walker extends Walker_Nav_Menu
{
function start_lvl(&$output, $depth)
{
$indent = str_repeat(« t », $depth);
$output .= « n$indent<div><ul class="sub-menu niveau-$depth">n »;
}
function start_el(&$output, $item, $depth, $args)
{
global $wp_query;
$indent = ( $depth ) ? str_repeat( « t », $depth ) : »;
$class_names = $value = »;
$classes = empty( $item->classes ) ? array() : (array) $item->classes;
$classes[] = ‘menu-item-‘ . $item->ID;
$class_names = join( ‘ ‘, apply_filters( ‘nav_menu_css_class’, array_filter( $classes ), $item, $args ) );
$class_names = ‘ class= »‘ . esc_attr( $class_names ) . ‘ »‘;
$id = apply_filters( ‘nav_menu_item_id’, ‘menu-item-‘. $item->ID, $item, $args );
$id = strlen( $id ) ? ‘ id= »‘ . esc_attr( $id ) . ‘ »‘ : »;
$output .= $indent . ‘<li>‘;
$attributes = ! empty( $item->attr_title ) ? ‘ title= »‘ . esc_attr( $item->attr_title ) .' »‘ : »;
$attributes .= ! empty( $item->target ) ? ‘ target= »‘ . esc_attr( $item->target ) .' »‘ : »;
$attributes .= ! empty( $item->xfn ) ? ‘ rel= »‘ . esc_attr( $item->xfn ) .' »‘ : »;
$attributes .= ! empty( $item->url ) ? ‘ href= »‘ . esc_attr( $item->url ) .' »‘ : »;
$src = null;
if($item->object == ‘piano-neuf_category’) {
$meta = get_option(‘additional’);
if (empty($meta[$item->object_id])) $meta[$item->object_id] = array();
if (!is_array($meta[$item->object_id])) $meta[$item->object_id] = (array) $meta[$item->object_id];
$meta = isset($meta[$item->object_id][‘thumbnail’]) ? $meta[$item->object_id][‘thumbnail’] : array();
$images = $meta[0];
$src = wp_get_attachment_image_src($images, ‘full’);
}
$item_output = $args->before;
$item_output .= ‘<a>‘;
if (is_null($src)) $item_output .= $args->link_before . apply_filters( ‘the_title’, $item->title, $item->ID ) . $args->link_after;
else $item_output .= $args->link_before . ‘<img src="'.$src[0].'" width="'.$src[1].'" height="'.$src[2].'">title.' » />’ . $args->link_after;
$item_output .= ‘</a>‘;
$item_output .= $args->after;
$output .= apply_filters( ‘walker_nav_menu_start_el’, $item_output, $item, $depth, $args );
}
function end_lvl(&$output, $depth)
{
$indent = str_repeat(« t », $depth);
$output .= « n$indent</ul></div>n »;
}
}le code pour ajouter un champ image à la taxonomie (dans functions.php du thème actif) :
$includes_path = TEMPLATEPATH . ‘/includes/’;
require_once $includes_path . ‘taxonomy-meta.php’;
$meta_sections[] = array(
‘id’ => ‘additional’,
‘title’ => ‘Additional Information’,
‘taxonomies’ => array(‘piano-neuf_category’),
‘fields’ => array(
array(
‘name’ => ‘Upload’,
‘desc’ => »,
‘id’ => ‘thumbnail’,
‘type’ => ‘image’
)
)
);
foreach ($meta_sections as $meta_section) {
$my_section = new RW_Taxonomy_Meta($meta_section);
}juste parfait et simple pour le côté administration, reste à voir comment ça se passe côté front
Je viens de trouver cette class : http://www.deluxeblogtips.com/taxonomy-meta-script-for-wordpress je vais la tester pour voir ce que ça donne.
oui j’ai vu aussi que plusieurs plugins proposaient une solution à mon problème mais j’avais envie de ne pas en utiliser et de jouer un peu avec le code…
Je crois que c’est peine perdue et qu’il va falloir utiliser un des ces plugins…Ne faite pas attention à la ligne
‘supports’ => array( ‘title’, ‘editor’, ‘author’, ‘thumbnail’, ‘excerpt’,’category’),
de register_taxonomy() c’était un test non concluant que j’ai oublié de virer avant de coller mon code dans mon premier post et impossible de modifer ce post …
oui c’est exactement ça, je voudrais savoir sur quelle hook me brancher et quelle méthode utiliser
ok merci c’est cool !
Salut, j’aimerai pouvoir trier les articles dans les catégories dans l’ordre que je désire.
Merci pour le lien Komli, ca m’a permis d’ajouter les display block dans ma feuille de style, ça corrige déjà certains bugs. Par contre dès que je fais appel à HTML5 shim mon contenu se rétrécit au fur et a mesure qu’on est bas dans ma page d’accueil …. là je sèche totalement !
-
AuteurMessages