it-swarm-ko.tech

워드 프레스는 wp_list_categories의 마지막 항목에서 분리 기호를 제거합니다.

나는 마지막 분리 기호 (일반적으로 <br/> 태그를 제거하려고 시도하지만 wp_list_categories의 마지막 링크에서 "//"로 변경했습니다).

기본적으로 나는 이것을 원한다.

범주 1 // 범주 2 // 범주 3 //

다음과 같이 보자.

범주 1 // 범주 2 // 범주 3

다음은 현재 사용중인 코드입니다.

<?php
    $cat_array = array();
    $args = array(
        'author' => get_the_author_meta('id'),
        'showposts' => -1,
        'caller_get_posts' => 1
    );
    $author_posts = get_posts($args);
    if ( $author_posts ) {
        foreach ($author_posts as $author_post ) {
            foreach(get_the_category($author_post->ID) as $category) {
                $cat_array[$category->term_id] =  $category->term_id;
            }
        }
    }

    $cat_ids = implode(',', $cat_array);
    echo strtr(wp_list_categories('include='.$cat_ids.'&title_li=&style=none&echo=0'),array('<br />'=>' // '));
?>
3
j-man86

마지막 행을 다음과 같이 변경하십시오.

$output = strtr( wp_list_categories( 'include='.$cat_ids.'&title_li=&style=none&echo=0' ), array( '<br />' => ' // ' ) );
echo preg_replace( '@\s//\s\[email protected]', '', $output );
2
John P Bloch

그곳에는 많은 문자열 처리가 있습니다. 결과를 목록으로 출력하지 않는 것이 좋습니다.

wp_list_categories('include='.$cat_ids.'&title_li=');

cSS로 스타일링하기 :

li.cat-item { list-style-type: none; display: inline; }
li.cat-item:before { content: "&#32;&#47;&#47;&#32;"; }
li.cat-item:first-child:before { content: none; }

고려해야 할 또 다른 대안은 ...

4
goldenapples

또 다른 옵션 인 explode -> pop -> implode ...

$output = explode( '<br />', wp_list_categories( 'include='.$cat_ids.'&title_li=&style=none&echo=0' ) );
array_pop($output);
echo implode(' // ',$output);
2
t31os