WordPressで利用しているプラグイン、コード、設定などを紹介しています。こまめに書き換えたいです。このページの最終更新日はリソース情報にあります。
最終更新日:2008年1月4日(バージョン2.7)
<?php the_content(); ?>を<?php the_hn_converted_content(1); ?>というふうに書き換えます。正の引数であれば見出しレベルに足され、不の引数であれば引かれます。基本、そしてspam対策。以下のコードをfunctions.phpに書き加えると、ヘッダに自動挿入されるバージョン情報・wlwmanifest.xml・rsd へのリンクが削除されます。
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'rsd_link');
テンプレートタグ/query posts(WordPress Codex 日本語版)参考。1ページに表示する投稿数はデフォルトだと一括指定されてしまうので、ページ種類別に表示件数を変えます。例えばメインページに5件表示させたい場合はindex.phpのループの前に、
<?php query_posts('showposts=5'); ?>
カテゴリーページで10件表示させたい場合は、category.phpに、
<?php query_posts('showposts=10'); ?>
を挿入します。
最新の一件を除いた5件の記事を表示させたい場合は<?php query_posts('showposts=5&offset=1'); ?>、カテゴリーID1と2だけを10件表示する場合は<?php query_posts('cat=1,2&showposts=10'); ?>など。色々応用できて便利。
WP-PageNaviを使わずにナビゲーション表示(改良版):Yuriko.Netと、関数化については私がWordPressをインストールしたとき最初にすること(der Gegenwart)のfunctions.php参照。プラグインを使わず実現できるのならその方がいいと思うので。
以下のコードをfunctions.phpに貼りつけてページナビゲーションを表示させたいところに<?php bmPageNavi(); ?>を挿入します。
function bmPageNavi() {
global $wp_rewrite;
global $wp_query;
global $paged;
$paginate_base = get_pagenum_link(1);
if(($wp_query->max_num_pages) > 1):
if (strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()) {
$paginate_format = '';
$paginate_base = add_query_arg('paged', '%#%');
} else {
$paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/') .
user_trailingslashit('page/%#%/', 'paged');;
$paginate_base .= '%_%';
}
$result = paginate_links( array(
'base' => $paginate_base,
'format' => $paginate_format,
'total' => $wp_query->max_num_pages,
'mid_size' => 5,
'current' => ($paged ? $paged : 1),
));
echo '<p class="pageNavigation">'."\n".$result."\n</p>\n";
endif;
}
single.phpで使用。デフォルトでは時系列順の前後リンクになるところを、同一カテゴリー内で移動できるようにします。複数カテゴリーを選択した場合はカテゴリーIDが小さいものが優先されます。多分。
<p class="pageNavigation">
<?php previous_post_link('« %link', '%title', 'true') ?>
<?php the_category(',') ?>
<?php next_post_link('%link »', '%title', 'true') ?>
</p>
WordPress なサイト制作時に参考にしたサイトや使用中のプラグインなどのまとめ(eclucifer)からコピペ。ありがとうございます。
以下のコードをfunctions.phpに書き加え、header.phpに<?php meta_link(); ?> を挿入します。
function meta_link(){
if(is_single()) {
global $wpdb, $wp_query;
$post = $wp_query->post;
$prev_post = get_previous_post('true','');
if($prev_post) {
$prev_title = strip_tags(str_replace('"', '', $prev_post->post_title));
echo '<link rel="prev" href="' . get_permalink($prev_post->ID) . '" title="' . $prev_title. '" />' . "n";
}
$next_post = get_next_post('true','');
if($next_post) {
$next_title = strip_tags(str_replace('"', '', $next_post->post_title));
echo '<link rel="next" href="' . get_permalink($next_post->ID) . '" title="' . $next_title. '" />' . "n";
}
}
}
使っていませんが、一応。
<p class="topicPath"><a href="<?php bloginfo('home'); ?>"><?php bloginfo('name'); ?> index</a> > <?php the_category(' > ', 'multiple'); ?> > <strong><?php the_title(); ?></strong></p>
wp-includes/default-filters.php内の一部をコメントアウトします。
Add Meta Tagsの使用をやめたので。
add_filter('the_excerpt', 'wpautop');
↓
// add_filter('the_excerpt', 'wpautop');
add_filter('the_content', 'wpautop');
↓
// add_filter('the_content', 'wpautop');