ieha * Web Design ieha * Web Design

Word Press小技いろいろ

仕事でもプライベートでも、Word Pressを使い始めてやっとこ1年くらいたちました。

今回のネタ元、その他Word Pressn参考サイトは、こちらにブックマークしてます。

はてなブックマーク

でわでわ小技いろいろです。

[php]
// カスタムフィールドで表示・非表示を判定
// キー「textarea01」に値があればコンテンツ表示
<?php if (get_post_meta($post->ID, “textarea01″ ,TRUE)): ?>
<div>表示したいコンテンツ</div>
<?php endif; ?>
[/php]

[php]
// カテゴリスラッグで適用するテンプレートを判定
<?php $post = $wp_query->post;
if (in_category(‘cat_a’) || in_category(‘cat_b’) || in_category(‘cat_c’)) {
include(TEMPLATEPATH . ‘/cat_a_b_c_template.php’);
} elseif (in_category(‘cat_d’)) {
include(TEMPLATEPATH . ‘/cat_d_template.php’);
}
?>
[/php]

[php]
// 特定の要素下へ動的に生成
// カテゴリがcat_aの時、テンプレートcat_a.phpを使用
<ul>
<li id=”nav01″><a href=”nav01.html”>ナビゲーション01</a></li>
<li id=”nav02″>
<?php $post = $wp_query->post;
if (in_category(‘cat_a’)) {
include(TEMPLATEPATH . ‘/cat_a.php’);
}
?>
</li>
<li id=”nav03″><a href=”nav03.html”>ナビゲーション03</a></li>
</ul>
[/php]

[php]
// カテゴリースラッグで生成コンテンツを制御
// カテゴリー「cat_a」の記事(投稿時間・タイトル・投稿)を5件表示
<?php query_posts(‘category_name=cat_a&showposts=5’); ?>
<?php while (have_posts()) : the_post(); ?>
<p><?php the_time(__(‘Y.m.d’, ‘kubrick’)) ?></p>
<p><?php the_title(); ?></p<
<p><?php the_content(); ?></p>
<?php endwhile;?>
<?php wp_reset_query();?>
[/php]

[php]
// カテゴリースラッグで固有のcssを適用
<link rel=”stylesheet” type=”text/css” media=”screen” href=”common/css/<?php
if (is_home()) {
echo ‘home’;
} elseif (in_category(‘seminar’)) {
echo ‘seminar’;
} elseif (in_category(‘forum’)) {
echo ‘forum’;
} elseif (in_category(‘monitor’)) {
echo ‘monitor’;
}
?>.css” />
[/php]

[php]
// 特定のカテゴリ、ページのみにhtmlを生成
// トップ、cat_aにaccordion・biggerlinkを生成
// cat_bにはbiggerlinkのみ生成
<?php if (is_front_page() || in_category(‘cat_a’)) { echo ‘<!– accordion –>
<script type=”text/javascript” src=”common/js/jquery.accordion.js” charset=”utf-8″></script>
<!– jquery.biggerlink –>
<script type=”text/javascript” src=”common/js/jquery.biggerlink.js”></script>
<script type=”text/javascript”>
$(function(){
$(“.bLink”).biggerlink();
});
</script>
‘;
} else if ( in_category(‘cat_b’)) {
echo ‘
<!– jquery.biggerlink –>
<script type=”text/javascript” src=”common/js/jquery.biggerlink.js”></script>
<script type=”text/javascript”>
$(function(){
$(“.bLink”).biggerlink();
});
</script>
‘;
}
?>
[/php]

[php]
// yuga.js併用タブ http://kyosuke.jp/yugajs/
// クリックでコンテンツ切り替え
// tab1:カテゴリー「cat_a」の記事(投稿時間・タイトル・投稿)を5件表示
// tab2:カテゴリー「cat_b」の記事(投稿時間・タイトル・投稿)を5件表示
<ul class=”tabNav”>
<li><a href=”#tab1″>タブ1</a></li>
<li><a href=”#tab2″>タブ2</a></li>
</ul>
<div id=”tab1″>
<?php query_posts(‘category_name=cat_a&showposts=5’); ?>
<?php while (have_posts()) : the_post(); ?>
<p><?php the_time(__(‘Y.m.d’, ‘kubrick’)) ?></p>
<p><?php the_title(); ?></p<
<p><?php the_content(); ?></p>
<?php endwhile;?>
<?php wp_reset_query();?>
</div>
<div id=”tab2″>
<?php query_posts(‘category_name=cat_b&showposts=5’); ?>
<?php while (have_posts()) : the_post(); ?>
<p><?php the_time(__(‘Y.m.d’, ‘kubrick’)) ?></p>
<p><?php the_title(); ?></p<
<p><?php the_content(); ?></p>
<?php endwhile;?>
<?php wp_reset_query();?>
</div>
[/php]

[php]
// プラグイン「ustom Field GUI Utility」併用
// http://www.tinybeans.net/blog/download/wp-plugin/cfg-utility-3.html

// カスタムフィールド「imagefield01」を取得して記事へリンク
<p><a href=”<?php the_permalink() ?>”><?php $key=”imagefield01″; echo get_post_meta($post->ID, $key, true); ?></a></p>

// カスタムフィールド「textarea01」を取得して記事へリンク
// <textarea>内の改行を反映させるため、nl2br();でくるむ
<p><a href=”<?php the_permalink() ?>”><?php $key=”textarea01″; echo nl2br(get_post_meta($post->ID, $key, true)); ?></a></p>
[/php]

[php]
// 投稿本文を45文字(2バイト文字)取得して記事へリンク
// 45文字以降は<span>タグで囲まれた[ …続きを読む ]を生成
<p><a href=”<?php the_permalink() ?>”><?php $content= mb_substr($post->post_content,0,45); echo $content . ‘<span>[ …続きを読む ]</span>’; ?></a></p>
[/php]

[php]
// archive.phpの構造化
// カテゴリがcat_aの時、テンプレートcat_a.phpを使用
// カテゴリがcat_bの時、テンプレートcat_b.phpを使用
// カテゴリがcat_cの時及びcat_dの時、テンプレートarchive_c_d.phpを使用

<?php
/*————————————————-

for [your web site]

tpl Name: archive.php

File URL: wp-content/themes/your_theme/archive.php

Created: 20XX-XX-XX

Description by your name

————————————————-*/
get_header();
?>

<!– wrap –>
<div id=”wrap”>

<!– content –>
<div id=”content”>
<?php
$post = $wp_query->post;
if (in_category(‘cat_a’)) {
include(TEMPLATEPATH . ‘/archive_a.php’);
} elseif (in_category(‘cat_b’)) {
include(TEMPLATEPATH . ‘/archive_b.php’);
} elseif ( is_category(‘cat_c’) || in_category(‘cat_d’)) {
include(TEMPLATEPATH . ‘/archive_c_d.php’);
}
?>
</div>
<!– /content –>

<?php get_sidebar(); ?>

</div>
<!– /wrap –>

<?php get_footer(); ?>
[/php]

少しでもおやくにたてばーー(^_^)

コメントする

必須 が付いている欄は必須項目となりますので、必ずご記入をお願いします。

内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。
※コメントは即時反映されない場合があります。

page top