2017-04-11 8 views
0

CPTのすべての投稿タイトルを呼び出すループがあり、それぞれが同じX文字を開始します。ループ内でタイトルを表示するときに冗長テキストを削除する

例:

XX XXXアラバマ

XX XXXアラスカ

など

どのように私は 'XXXXX' を削除することができますので、表示されるすべてがある:

アラバマ

アラスカ

など

ここに私のループです:

<?php 
wp_reset_postdata(); 
$state_list = new WP_Query(array(
    'post_type' => 'play_states', 
    'post_status' => 'publish', 
    'posts_per_page' => -1, 

)); 

while ($state_list->have_posts()) : $state_list->the_post(); 
    echo '<li><a href="'.get_permalink().'" class="' . $class . '">'.get_the_title().'</a></li>'; 
endwhile; 
wp_reset_query(); 
?> 

ありがとう!

EDIT:

私は、次を追加しました:

$title = get_the_title(); 
$newTitle = str_replace("XXXXX Post", "", $title); 

ラインはwhile文を開いた後。 "XXXXX Post"を削除したいテキストに置き換えるだけで、私は目標を達成することができました。

ご協力いただきありがとうございます。

+0

最初のスペースの位置を見つけ、この位置から始まる部分文字列を取得します。 –

+0

@u_mulder 15番目の文字が実際の状態リストを開始します。私はどのように部分文字列を書くか分からない。コーデックスでこれを見る – mdnash

+0

コアPHPに 'substr'関数があります。 –

答えて

2

str_replace機能を使用できます。さあ!

$variable = str_replace("XXXXX","", $variable); 

私は助けること、それを知ってみましょう!

In Loop!

// I hope you have Array named $cities Containing the cities! 
foreach($cities as $city) 
{ 
    $city_final = str_replace("XXXX","",$city); 
    // Do whatever you want with $city_final now! 
} 

申し訳ありませんが、ここで構文エラーがあるアーカンソー場合!あなたにアイデアを伝えようとしています!私は構文エラーがあるとは思わない!

+0

これはループ内のどのように適合しますか? – mdnash

+0

@mdnashに返信するための詳細情報を追加しました! –

+0

私はそれを稼働させる方法を理解できません。私は急いでいるので、後でチェックする必要があります。私は使用していますが、foreachではありません – mdnash

0

これは、スペース上のテキストを2つに分割します。配列の2番目の要素が必要です。

$onlyState=explode(' ', $stateWithJunk, 2); 
// do something with $onlyState[1] 
+1

「ノースカロライナ」などとは? –

+0

実際には複数のスペースがあります。 XXX XXXX [状態] – mdnash

+0

彼は文字列の最初の部分を取り除くように頼んだ。だから、もし我々が 'XXXXXXノースカロライナ'を持っていて、彼はこのメソッドを使うと、彼は$ onlyState [1] = 'ノースカロライナ'を得るでしょう。コードの2は最初の空白で2つに分割するだけです。 – Vbudo

関連する問題