2014年08月25日 web関連WordPressphp

WordPressの抜粋表示(excerpt)を以下のように動作させたかったので、自作してみました。

  1. 抜粋があれば抜粋表示
  2. moreタグがあれば、それに従う
  3. 指定文字数より本文文字数が少なければ、そのまま表示
  4. 指定文字数より本文文字数が多ければ抜粋表示

コード

functions.phpにコピペ。

<?php
//WordPress抜粋表示の変更
/****
1.抜粋があれば抜粋表示
2.moreタグがあれば、それに従う
3.$lengthより文字が少なければ、そのまま表示
4.$lengthより文字が多ければ抜粋表示
****/
function set_excerpt( $length=200 ){
	global $post;
	//抜粋が入力されていれば、抜粋表示($length無効)
	if(has_excerpt()) {
		$content = strip_tags(get_the_excerpt());
		$content = $content . '…'.'<div class="more"><a href="'.get_permalink().'" class="btn btn-default btn-md"><span class="glyphicon glyphicon-ok"></span> この記事の続きを読む</a></div>';
	//moreタグがある場合
	//}elseif(preg_match('/<!--more(.*?)?-->/u', $post->post_content, $matches)){
	}elseif(strpos($post->post_content,'<!--more')){
		global $more; $more = 0;
		$content = strip_tags(get_the_content(''));
		$content = $content . '…'.'<div class="more"><a href="'.get_permalink().'" class="btn btn-default btn-md"><span class="glyphicon glyphicon-ok"></span> この記事の続きを読む</a></div>';
	//本文の文字数が$lengthより少ない場合は全文表示
	}elseif(mb_strlen( $post -> post_content) <= $length){
			$content = strip_tags(get_the_content());
	}else{
		 $content = mb_substr( strip_tags( $post -> post_content ), 0, $length );
		 $content = $content . '…'.'<div class="more"><a href="'.get_permalink().'" class="btn btn-default btn-md"><span class="glyphicon glyphicon-ok"></span> この記事の続きを読む</a></div>';
	}	
		 return $content;
}

?>

使用方法

テーマファイルの本文の抜粋を表示させたいにset_excerpt();

この投稿へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます。
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

CAPTCHA


ピックアップ記事

FacebookアプリをFacebookページ(ファンページ)に追加する

2012年01月27日 web関連Facebook
[php]https://www.facebook.com/dialog/pagetab?app_id=YOUR_APP_ID&display=popup&next=YOUR_URL [/php] この「YOUR_APP_ID」はApp ID/API Keyに、「YOUR_URL」はアプリのURLに書き換えて、ブラウザからアクセスしてください。 アプリのApp ID/API K…
「FacebookアプリをFacebookページ(ファンページ)に追加する」をはてなブックマークに追加

Twitter for Mac’s developer consoleの設定

2014年07月18日 web関連twitter API
Twitter for Mac’s developer consoleの設定
ちょうど設定してみたので、メモ。 まだ触ってないので詳しく分かりませんが、Twitter for Mac's developer consoleというのは、Twitter APIのテストが可能なのようです。 WEB版のコンソールもありますが、Twitter for Mac's developer consoleの方がサクサク動くらしいです。 DEVサイトにログイン、APP登録 まず…
「Twitter for Mac’s developer consoleの設定」をはてなブックマークに追加

WordPressでログインユーザーのみに表示するための記述

2014年07月15日 web関連WordPress
使用頻度が高いので、自分用にメモ。 運営中のサイトに少し手を加えたい場合や、自作プログラムの実行結果を自分だけに表示させて確認したい場合などに役立ちます。 ログインユーザーのみに内容を表示させる場合 [php]<?php if (is_user_logged_in()) : ?> <!-- ログインユーザーのみに表示される箇所 --> <?p…
「WordPressでログインユーザーのみに表示するための記述」をはてなブックマークに追加

何かうまくいかなかったようです。変更が保存されていないかもしれません。

2020年02月05日 WordPress
WordPressのテーマを編集中に以下のエラーが出て保存出来ない場合に考えられる対処法のメモ。 何かうまくいかなかったようです。変更が保存されていないかもしれません。手動で修正し、FTP 経由でファイルをアップロードすることもできます。 考えられる可能性 編集中のファイル内に何らかのエラーが含まれている可能性 いずれかのWPプラグインの影響 WAF設定の影響 …
「何かうまくいかなかったようです。変更が保存されていないかもしれません。」をはてなブックマークに追加

twitter API v1.1を使ってツイート投稿

2014年08月01日 web関連phptwitter API
twitterのAPIを利用してツイートする必要があったので、メモ。 準備 まず、twitterのdevサイトでapp登録しておきます。 次に、ツイートする際に必要なOAuthという認証作業を簡単にしてくれるOAuthライブラリtwitteroauthをダウンロードします。リンク先に飛んだら右下の方にDownload ZIPというボタンがあるのでそこからダウンロード出来ます。 …
「twitter API v1.1を使ってツイート投稿」をはてなブックマークに追加
© graffiti on the web . All rights reserved. WordPress Theme by comfy