• はじめまして、表題の件で教えて頂けますでしょうか。

    テーマTwenty-tenの各個別記事(single.php)で表示される画面で、記事の終わりにカテゴリとタグが出力されます。

    その各タグ、カテゴリに対してクラス指定を行いたいのですがどのようにすれば宜しいでしょうか?

    タグ一つ一つに個別のクラス名ではなく、同じクラス名が指定出来れば事足りるのですが…

    この件について知見をお持ちの方教えて頂けますでしょうか。

    よろしくお願いします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • Peinyanさん こんにちは、

    PHPの知識が必要です
    テーマを直接書き換えると、アップデートの時に、消えてしまうので、チャイルドテーマを作らなければなりません。

    そういう、大変な苦労をいとわないならば、

    functions.php 480行目位

    /**
     * Prints HTML with meta information for the current post (category, tags and permalink).
     *
     * @since Twenty Ten 1.0
     */
    function twentyten_posted_in() {
    	// Retrieves tag list of current post, separated by commas.
    	$tag_list = get_the_tag_list( '', ', ' );
    	if ( $tag_list ) {
    		$posted_in = __( 'This entry was posted in %1$s and tagged %2$s. Bookmark the <a href="%3$s" title="Permalink to %4$s" rel="bookmark">permalink</a>.', 'twentyten' );
    	} elseif ( is_object_in_taxonomy( get_post_type(), 'category' ) ) {
    		......略
    	}
    	// Prints the string, replacing the placeholders.
    	printf(
    		$posted_in,
    		get_the_category_list( ', ' ),
    		$tag_list,
    		get_permalink(),
    		the_title_attribute( 'echo=0' )
    	);
    }

    この関数が、カテゴリや、タグを表示します

    get_the_category_list( ‘, ‘ ) 及び get_the_tag_list( ”, ‘, ‘ )が、カテゴリやタグの素です

    カテゴリの書き換えは、簡単に表示を置き換えるだけなら以下のように、またはPHPの置換のための関数などを使って書き換える事が出来ます。

    printf(
    		$posted_in,
    		'<span class="example">'.get_the_category_list( '</span>, <span class="example">' ).'</span>',
    		$tag_list,
    		get_permalink(),
    		the_title_attribute( 'echo=0' )
    	);
    
    とか
    	$category_list = str_replace('<a','<a class="example"',get_the_category_list( ', ' ));
    	printf(
    		$posted_in,
    		$category_list,
    		$tag_list,
    		get_permalink(),
    		the_title_attribute( 'echo=0' )
    	);

    勉強のためなら、これらの関数を自作のものに置き換えるという事になります。

    が、

    スタイルルールのためのクラス指定等でしたらば、なにをしたいか具体的に書いてもらえれば、もっとすっきりする解決方法もあるかも:)

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「単一記事のタグ、カテゴリにクラス指定をしたい」には新たに返信することはできません。