2016-12-29 8 views
2

Ich versuche, alle Beiträge, die eine Nummer enthalten zu zeigen.wordpress query alle Beiträge, die mit der Nummer beginnen

ich diesen Code verwende:

global $wpdb; 
$postids = $wpdb->get_col($wpdb->prepare(" 
SELECT  ID 
FROM  $wpdb->posts 
WHERE  SUBSTR($wpdb->posts.post_title,1,1) = %s 
ORDER BY $wpdb->posts.post_title",REGEXP ^[0-9])); 
if ($postids) { 
$args=array(
    'post__in' => $postids, 
    'post_type' => 'shows', 
    'post_status' => 'publish', 
    'posts_per_page' => -1, 
    'caller_get_posts'=> 1 
); 
$my_query = null; 
$my_query = new WP_Query($args); 
if($my_query->have_posts()) { 
echo 'List of Posts Titles beginning with the letter '. $_GET['letter']; 
    while ($my_query->have_posts()) : $my_query->the_post(); ?> 
    <p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p> 
    <?php 
    endwhile; 
} 
wp_reset_query(); 
} 

Ich habe versucht, dies ist aber nicht nur ein Beitrag zu arbeiten, aber wenn ich es ändern zum Beispiel Beiträge zu zeigen, dass mit ihm zeigen alle von ihnen beginnen .

RLIKE ^[0-9] [0-9]%   

Dank.

Antwort

0

nur Datensätze holen mit der Startnummer, filtern sie REGEXP verwenden Sie

SELECT  ID 
FROM  $wpdb->posts 
WHERE  $wpdb->posts.post_title REGEXP '^[0-9]+' 
ORDER BY $wpdb->posts.post_title; 
+0

perfekt danken – ANto1

Verwandte Themen