我試圖根據我擁有的類別數創建一個URL。預期的輸出我想要的是:帶變量的兩個foreach語句
<a href="http://lart.co.uk/?cat=13" title="Category Name">Dance</a>
<a href="http://lart.co.uk/?cat=19" title="Category Name">Fashion</a>
我得到的輸出是:
<a href="http://lart.co.uk/?cat=13" title="Category Name">
<a href="http://lart.co.uk/?cat=19" title="Category Name">
Dance</a> Fashion</a> </a>
這是我想幾乎什麼,但很明顯,我還是關閉的不少。我使用3個foreach語句來獲得這個結果。我試過嵌套一個foreach,但沒有奏效。問題是讓一個foreach的結果進入另一個。
下面是我使用的代碼:
<?php
$categories = get_the_category();
$separator = ', ';
if($categories) {
foreach($categories as $category) {
$output .= $category->cat_name.$separator;
$cat_id[] = $category->cat_ID;
}
foreach($cat_id as $id) {
$category_link = get_category_link($id); ?>
<a href="<?php echo esc_url($category_link); ?>" title="Category Name">
<?php }
$strarr = explode(',',$output);
foreach($strarr as $string) {
echo $string .'</a>';
}
} ?>
哇,這是一個該死的罰款答案。然而,我對此有唯一的質疑,那就是如何在每個鏈接之間放置一個'/'而不是最後一個鏈接。有點像「舞蹈/時尚/音樂」? – UzumakiDev
不是直接輸出,而是將每個鏈接放入一個數組中:'$ links [] = sprintf(...)',然後在循環之後使它們爆炸:'echo implode('/',$ links)'。 – deceze
感謝您向我介紹htmlspecialchars我將在未來保持這一點:) – UzumakiDev