人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

WordPressのテーマ「customizr」でサイトを制作しています。

customizrはこんな感じです。
http://kikiora2000.xsrv.jp/

質問に添付している画像の部分を全てハイパーリンクにしたいと思っています。

「記事を読む」ボタンはなくしても良いのですが、
画像・H2・文章のどれをクリックしても、記事へ飛ぶリンクにしたいです。

リンク範囲を拡張すれば、できそうに思うのですが分かりません。

CSSをどのようにすれば、良いでしょうか。

アドバイスお願いいたします。

1434185537
●拡大する

●質問者: wpwp2015
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● a-kuma3

残念ながら、CSS だけではどうにもなりません。
該当するテキスト (P タグで括られた部分) を、A タグで囲ってあげる必要があります。

最新の customizr 3.3.9 のソースを読んでみました。
該当する箇所は、以下の部分です。
http://themes.svn.wordpress.org/customizr/3.3.9/inc/parts/class-content-featured_pages.php
このソースの 220行目辺り。

 //text block
 $tc_fp_text_block = sprintf('<p class="fp-text-%1$s">%2$s</p>',
 $fp_single_id,
 $text
 );
 echo apply_filters( 'tc_fp_text_block' , $tc_fp_text_block , $fp_single_id , $text, $featured_page_id);

ベタに対応するなら、このテーマのソースをいじっちゃう。
プラグインの外側からいじるなら、javascript で ".widget-front P" 辺りをひろって A タグで囲んであげる。

もしかしたら Wordpress のフィルタで、テーマをいじらずにどうにかなるのかも(でも、元の function.php をいじることにはなるはず)。



申し訳ありませんが、ぼくのレベルだとここまでです (´・ω・`)


a-kuma3さんのコメント
リクエストは飛ばしてないけど、召喚の呪文にはなってるかな...

rouge_2008さんのコメント
a-kuma3さん、もしかして呼びました? 概要テキストは「tc_fp_text_block」フィルタを利用すると書き換えできると思います。 「customizr」テーマの「functions.php」のPHPを記述する箇所に以下を追加してみてください。 >|| function text_block_add_link( $tc_fp_text_block , $fp_single_id , $text, $featured_page_id ) { /* リンクURL取得 */ $featured_page_link = get_permalink( $featured_page_id ); /*以下1と2のどちらか好きな方 */ /* 方法1.置換する */ $tc_fp_text_block = preg_replace( '!(<p [^>]+>)(.+?)(?=</p>)!', '$1<a href="'. $featured_page_link . '">$2</p>', $tc_fp_text_block ); /* 方法2.生成し直す*/ $tc_fp_text_block = sprintf('<p class="fp-text-%1$s"><a href="%3$s">%2$s</a></p>', $fp_single_id, $text, $featured_page_link ); return $tc_fp_text_block; // ここは必ず記述 } add_filter( 'tc_fp_text_block' , 'text_block_add_link', 10, 4 ); ||< タイトルテキストは、a-kuma3さんが引用したコードのすぐ上にある「tc_fp_title_block」フィルタで大丈夫だと思います。 ・customizr 3.3.9 のソース >|| //title block $tc_fp_title_block = sprintf('<%1$s>%2$s %3$s</%1$s>', apply_filters( 'tc_fp_title_tag' , 'h2', $fp_single_id, $featured_page_id ), $featured_page_title, ( isset($edit_enabled) && $edit_enabled )? sprintf('<span class="edit-link btn btn-inverse btn-mini"><a class="post-edit-link" href="%1$s" title="%2$s" target="_blank">%2$s</a></span>', get_edit_post_link($featured_page_id), __( 'Edit' , 'customizr' ) ) : '' ); echo apply_filters( 'tc_fp_title_block' , $tc_fp_title_block , $featured_page_title , $fp_single_id, $featured_page_id ); ||< ・概要テキストと同じように、置換するかあるいは上記のコードの「$tc_fp_title_block」を参考にして生成し直すか、どちらでも好きな方法が使えると思います。 ただ、権限があるユーザーでログインしている場合、編集リンクも追加されるようですので、置換する場合は編集用のリンクと入れ子にならないようにする必要があります。 >|| function title_block_add_link( $tc_fp_title_block, $featured_page_title, $fp_single_id, $featured_page_id ) { $featured_page_link = get_permalink( $featured_page_id ); /* ここに処理追加 */ return $tc_fp_title_block; } add_filter( 'tc_fp_title_block', 'title_block_add_link', 10, 4 ); ||< ・プラグイン API http://wpdocs.osdn.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3_API

rouge_2008さんのコメント
リンクにするのを忘れたので再投稿します・・・ タイトルテキストの生成し直しは、そのままでは無理みたいです。すみません・・・ 置換の場合のコードです。(正規表現はもっといい書き方があればお願いします。) >|| function title_block_add_link( $tc_fp_title_block, $featured_page_title, $fp_single_id, $featured_page_id ) { $featured_page_link = get_permalink( $featured_page_id ); $tc_fp_title_block = preg_replace( '!<h(\d)([^>]+)?>(.+?)\s(<span.+)?</h\d>!', '<h$1$2><a href="' . $featured_page_link . '">$3</a> $4</$1>', $tc_fp_title_block ); return $tc_fp_title_block; } add_filter( 'tc_fp_title_block', 'title_block_add_link', 10, 4 ); ||<
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ