- カタチグラフィックスのBlog – Katachigfxの日記と制作メモ

「WordPress」というかたログ

08.22

add_filter('pre_site_transient_update_core', create_function('$a', "return null;"));

利用しているテーマの functions.php に下記のコードを記述する。

– 制作メモ

08.01

親ページA
├子ページA
├子ページB
└子ページC

親ページAに子ページA~Bのタイトルと本文を表示したい場合、親ページA(page.php)に下記コードを記入。

<?php
$child_posts = get_posts( 'numberposts=-1&order=ASC&orderby=post_title&post_type=page&post_parent=' . $post->ID );
	if ( $child_posts ) {
		 foreach ( $child_posts as $child ) {
			$c_title = apply_filters( 'the_title', $child->post_title );
			 $c_content = get_extended( $child->post_content );
			 $c_content = apply_filters( 'the_content', $c_content['main'] );
?>
 <h3><?php echo $c_title; ?></h3>
<div class="entry">
	<?php echo $c_content; ?>
</div>
<?php
	 }
}
?>

–制作メモ

02.23

WordPress – 表示速度アップ

Published 2月 23rd, 2011 Posted in WordPress No Comments »  

WordPressは非常に重い。
少しでもスムーズにサイトを観覧してもらうために、様々なプラグインが出ています。
また、WordPressを軽くする方法もいくつか紹介されていたので、ここにメモしておきます。

●プラグイン

Head Cleaner
ヘッダー内のcssやjavascriptをまとめてくれる優れもの。
※スマートフォン対応の場合は注意!

DB Cache Reloaded
データベースへのクエリーをキャッシュしてくれます。
※スマートフォン対応の場合は注意!

W3 Total Cache日本語版
すばらしい!キャッシュプラグインの日本語版
※スマートフォン対応の場合は注意!

WP-DBManager
DBの最適化やバックアップなどができます。

※使い方などはGoogleで調べてください。

●プラグイン以外でWordPressを軽くする方法

・最新の WordPress を使用する

・外部サイトへの依存を減らす

・プラグインは最低限に抑える

・書けるところはhtmlに

・使っていないテーマは削除

・CSS と JavaScript を圧縮する
CSSやJavascriptを圧縮してくれるサイトがいくつか存在します。

・ホットリンクを無効にする
ホットリンクとは、直リンクのことです。直リンクをさせないことでサーバ負担を減らすという方法です。※調べてください。

・投稿編集履歴機能を切る
保存するたびにwp_postsに新しい行を作成するので、特に投稿者が一人の場合は必要ないんでオフにしろということです。(引用)
config.phpファイルに追加するだけです。
define('WP_POST_REVISIONS', false);

・早めにフラッシュ(flush )する
ウェブサーバは人が訪れるたびにウェブサイトを生成します。通常ウェブサーバは全体のコードを作成してからそれを訪問者に送ります。 PHP の flush 関数を使用すると、サーバはヘッダー作成直後にメッセージをブラウザに送ります。これにより、ブラウザは他のリクエストを待つ間に、ヘッダ内にリンクされ ている CSS ファイルを読み込むことができます。
ウェブサイトをスピードアップするには次を header.php ファイルの </head> タグの直後に追加します。(引用)
<?php flush(); ?>

といった感じ。
W3 Total Cacheは優れものですよ。

–制作メモ

11.25

WordPressにて、サブページかどうかをチェックしサブページだった場合の条件分岐の記述を発見。

function is_subpage() {
	global $post;
        if ( is_page() || $post->post_parent ) {
               $parentID = $post->post_parent;
               return $parentID;
        } else {
               return false; 
        };
};

上記のようにfunctionを定義

条件分岐で、

if ( is_page('6') || $post->post_parent == '6' ) {
    // このページは "ID6"、または親ページが "ID6"の場合
    $bannerimg = 'abc.jpg';
}

といった感じ。

– 制作メモ

03.25

「limit post ja」というプラグインを使う。

そのままでは、「…続きを見る」の前の文字が文字化けしてしまう。

そこで、limit-post-ja.phpの下記を書き換える。

$content = mb_substr($content, 0, $max_char);

ここを、

$content = mb_substr($content, 0, $max_char,’UTF-8′);

.

使い方は、<?php the_content(); ?>を<?php the_content_limit(50, “続きを見る”); ?>とかにする。

–制作メモ