web-dev-qa-db-fra.com

Archives de type de publication personnalisée par date (stockées en tant que méta-valeur) WP3.1

Je souhaite implémenter une fonctionnalité d'archivage basée sur la date (similaire à la fonctionnalité de widget Archives WP Archives d'origine) pour un type de publication personnalisé (CPT). Ce qui rend la tâche difficile, c’est le fait que j’ai besoin de grouper et d’archiver des événements non pas par date de publication, mais par event_date stocké en tant que méta-valeur .

Par exemple, j'ai event CPT enregistré comme suit:

$args = array(
    'labels' => $labels,
    'public' => true,
    'publicly_queryable' => true,
    'show_ui' => true,
    'has_archive' => 'past-events',
    'rewrite' => array('slug' => 'event','with_front' => false),
    'query_var' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'show_in_nav_menus' => false,
    'menu_position' => 15,
    'supports' => array(
      'title',
      'editor',
      'author',
      'revisions'       
    )
  );
  register_post_type('event',$args);

J'aimerais générer des liens d'archive tels que /past-events/2011/04, similaires aux fonctionnalités du widget WP Archives. Cependant, mes événements doivent être archivés avec la méta valeur event_date. De plus, si, par exemple, pour avril 2011, il y a plus d'événements que mon paramètre Blog pages show at most, j'aimerais une pagination correcte des pages. Et idéalement, lors de la visualisation d'un seul événement, les liens des événements précédents et suivants sont corrects dans cette page d'archive. J'espère que cela a du sens.

J'utilise WP3.1. Je suis allé aussi loin que de spécifier le paramètre has_archive pour le CPT. J'ai regardé autour de moi, mais je me suis demandé comment procéder. Est-ce quelque chose que je dois écrire moi-même ou cela pourrait être fait avec WP fonctions ou plugins?

J'apprécierais vraiment toute aide et conseils.

Merci beaucoup, Dasha

3
dashaluna

Cela ne répond pas complètement à votre question, mais c'est une tentative d'aider.

Jetez un coup d’œil à: http://seebz.net/notes/#note-145 Configure un CPT avec des archives de dates et configure tous les éléments nécessaires. réécrire les règles.

En ce qui concerne l'utilisation de wp_get_archives(), il ne dispose pas des crochets de filtres nécessaires pour fonctionner avec un CPT. Je vous recommande donc de copier la fonction et de la modifier à votre guise.

1
Brady