カスタムフィールドに入力した値の改行 Comment
WordPressでカスタムフィールドを頻繁に使いますが、この入力欄に入力したテキストについて改行を反映させたい場合、2種類の記述方法があります。
自動的にPタグでマークアップする
1 | <?php echo wpautop(post_custom('カスタムフィールドの値')); ?> |
自動的にBRタグを挿入するだけでPタグなどの自動整形はしない。
1 | <?php echo nl2br(get_post_meta($post->ID,'カスタムフィールドの値',true)); ?> |
All-in-One Event Calendar Plugin 日本語化ファイル Comment
WordPress用イベントカレンダーのプラグインはいろいろ出ています。
一番有名なのは Event cakender 3 ですが、 Event cakender 3は投稿のカテゴリーの中に「イベント」に該当するカテゴリーを設定するので自分の求める用途では使いにくいなと思ってたところ、All-in-One Event Calendar Pluginが一番使いやすそうでした。
が・・・
日本語化ファイルが無い・・・orz
と、言うことで、日本語化ファイルを作りました。
まだ英語のままの部分もありますが、無いよりはずいぶんマシだと思うので公開します。
All-in-One Event Calendar Plugin 日本語化ファイル
2011.10.09 all-in-one-event-calendar-ja_000.zip
2011.10.11 all-in-one-event-calendar-ja_001.zip UP!!
使い方
フォルダの中身を展開して、
all-in-one-event-calendar-ja.mo
all-in-one-event-calendar-ja.po
を
all-in-one-event-calendar/language/
フォルダにアップロードすればOKです。
補足事項
All-in-One Event Calendar Plugin 1.0.9 では下記の場所にバグがあります。
/all-in-one-event-calendar/app/controller/class-ai1ec-events-controller.php
の407行目
$rrule = ‘FREQ=DAILY;BYDAY=SA+SU’;
の箇所を
$rrule = ‘FREQ=DAILY;BYDAY=SA,SU’;
にしないと、イベントの「繰り返し」を「毎週末」にした時にエラーになってしまいます。
ウェブ屋が震災で出来そうな事を考えてみた。 Comment
東日本大震災で何か出来ない事はないか考えてたんだけど既に誰かが作ったものを作っても、情報が乱立するだけなので、それらを除けば、震災発生以来これといって特別な事は思いつかなかったのだけど、ニュースを見ていてこんなのはどうかと思うので、意見伺いと、よさそうなら開発・運営要員を募りたいと思う。
■提案サイト
東日本大震災での遺品や瓦礫の中にある写真などの残留物の写真をアップロード・閲覧出来るウェブサイト
■趣旨
瓦礫の中から市役所・役場の職員が回収した品物、これらは回収した各役場などに保管・展示されており、被災者・遺族がそれぞれ探しに来るが、これらは以下の問題がある。
・津波の規模が大きかった為、数箇所回らないといいけない。
しかし、確認しに行くには燃料・労力・時間を要する。
・役場もいつまでも並べておくわけにはいかない。
■必要と思われる成果物
・PCサイト
・ガラケー版サイト
・スマートフォン版サイト
・使い方解説ページ(サイト)
■必要と思われる機能
・誰でも(各地域の役場・ボランティアの人)ユーザー登録出来て写真をアップロード
・PCサイトは勿論スマートフォン、ガラケーからも閲覧・投稿
・地域や種類、管理場所などを登録しておけばユーザーも管理者も探しやすいかなと。
・各写真に問い合わせ連絡先(登録したユーザーの電話番号など)を掲載
■あると望ましい機能
・不適切画像・情報の通報
■必要な人員
・PCサイト構築スタッフ(IT技術者)
・ガラケー用テンプレ制作スタッフ(IT技術者)
・スマホ用テンプレ制作スタッフ(IT技術者)
・使い方解説ページ(サイト) ITリテラシー低い人向けなのでこれが結構難しいかも。
※WordPressベースでの開発想定
・ウェブデザイナー
(凝る必要はないと思うので、部分的なパーツ作成がメインかな)
・こんなサイトがありますと各関係機関に告知する為に、告知先リストの作成と連絡スタッフ
ツイッターとかで拡散はしてもらうにせよ、直接連絡やプレスリリースは必要かなと。
■必要な運営要員
・不適切画像が投稿された時に対応・削除するスタッフ
・使い方をサポートするスタッフ
投稿作業は労力やITリテラシーが少し必要かもしれないけど、そういう作業こそ現地ボランティアに向くのかなと期待したり・・・。
で、もう震災から随分日が経ってるので、すぐに作れないんだったら、サイトの存在意義が無いような気がするので、今週末(つまり今日?明日)で、『作業分担してやるぞもらぁ!』って人が少なくとも3名以上集まらなければまぁあんましなぁ・・・
今週末で作れないんだったら現実的じゃないかなって思ってますがどうですかね?
カスタム投稿タイプのRSS Comment
カスタム投稿タイプを作った場合、そのRSSフィードだけも出力したいと思います。
カスタム投稿タイプを設定しただけではRSSフィードには入らないので、function.phpに下記を追記します。
1 2 3 4 5 6 7 8 | // RSSの追加
function my_get_posts( $query ) {
if ( is_feed() ) {
$query->set( 'post_type', array('info') ); // カスタム投稿タイプ'info'を追加した場合
return $query;
}
}
add_filter( 'pre_get_posts', 'my_get_posts' ); |
出力されるRSSのURL
公開URL/feed?post_type=info
the_excerpt(抜粋・概要)タグでpタグを除外する方法。 Comment
抜粋欄に記入されている内容(記入されていない場合は本文最初の数文字)を表示するthe_excerptタグですが、大変親切な事に勝手にpタグを入れてくれます。
と、なると、抜粋を表示してそこにパーマリンクを指定しようとするとpタグの外にaタグになるのでhtml上よろしくなかったり、metaのdescriptionに使いたいのに中にpタグが入るなんて事になってしまうので、都合が悪いです。
調べたところこちらのサイトで紹介されていました。
function.phpに
1 2 3 4 | <?php
// pタグ自動挿入解除
remove_filter('the_excerpt', 'wpautop');
?> |
を追加すれば解除できます。
ちなみにwp-includes/default-filters.phpを触る方法もありますが、こちらはWordPress本体のアップデートで上書きされてしまうのでお勧めしません。
WordPressの投稿・更新をもっと簡単にするカスタマイズ 1 Comment
WordCampNagoya2010のLTのスライドをアップしました。
WordCampNagoya 2010 に出演します。 Comment
2010年10月30日に名古屋で開催される、WordPress カンファレンス「WordCamp Nagoya 2010」に出演します。
初心者向けのTRACK1で13時より「レンタルサーバー座談会」にパネラーとして、
また、中上級者向けのTRAK2で15時から開始のLT(ライトニングトーク)で、PCに疎い人でも簡単に更新出来るようにする為のカスタマイズについて短時間ですがお話します。
入場は無料ですので、是非ご来場下さい。
WordPress 逆引きタグリファレンス 12 Comments
よく使う項目や、自分が使ったタグをまとめました。
動かなかった部分などありましたらコメントいただけると幸いです。
- 基本的にどこでも使用可
- サイドバーなど
-
- 親ページのページ名を表示
- ページのリストを表示
- ページのリストを階層構造を維持して表示(ローカルメニュー向け)
- 指定カテゴリーの記事リストを表示1
- 指定カテゴリーの記事リストを表示2
- 指定カテゴリーのサブカテゴリーのみ表示
- 指定カテゴリーとそのサブカテゴリーを表示
- 指定カテゴリーとそのサブカテゴリーを除外
- 指定カテゴリーIDを除外して表示
- 現在のトップカテゴリー以下のカテゴリーをリスト表示[category]
- カテゴリ名をリストで表示
- カテゴリ名 サブカテゴリ名 記事名をリストで表示
- 投稿記事の属する親カテゴリとサブカテゴリを階層構造を維持して表示(ローカルメニュー向け)[single]
- アーカイブリストを表示
- 最近の投稿を表示
- カスタム投稿タイプのカスタム分類をリスト(一覧)表示
- カスタム投稿タイプの月別アーカイブをリスト表示
- ループで使用
- インデックスページ
- カテゴリーアーカイブページ
- 年月アーカイブページ
サイトのURLを表示
1 | <?php bloginfo('url'); ?> |
サイトの名前を表示
1 | <?php bloginfo('name'); ?> |
サイトのdescriptionを表示
1 | <?php bloginfo('description'); ?> |
テンプレートディレクトリのパスを出力
1 | <?php bloginfo('template_directory'); ?> |
ページの種類で条件分岐例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <?php if (is_home()) { ?>
<?php /* ▼トップページ */ ?>
<?php /* ▲トップページ */ ?>
<?php } else if (is_page('top')) { ?>
<?php /* ▼特定のページをトップに表示している場合(ページのスラッグ名は top に設定 */ ?>
<?php /* ▲特定のページをトップに表示している場合(ページのスラッグ名は top に設定 */ ?>
<?php } else if (is_category()) { ?>
<?php /* ▼カテゴリーページ */ ?>
<?php /* ▲カテゴリーページ */ ?>
<?php } else if (is_single()) { ?>
<?php /* ▼投稿記事 */ ?>
<?php /* ▲投稿記事 */ ?>
<?php } else if (is_page()) { ?>
<?php /* ▼単一ページ */ ?>
<?php /* ▲単一ページ */ ?>
<?php } else if (is_tag()) { ?>
<?php /* ▼タグアーカイブ */ ?>
<?php /* ▲タグアーカイブ */ ?>
<?php } else if (is_month()) { ?>
<?php /* ▼月別アーカイブ */ ?>
<?php /* ▲月別アーカイブ */ ?>
<?php } else if (is_search()) { ?>
<?php /* ▼検索結果 */ ?>
<?php /* ▲検索結果 */ ?>
<?php } else { ?>
<?php /* ▼それ以外 */ ?>
<?php /* ▲それ以外 */ ?>
<?php } ?> |
カスタムフィールドの値が空じゃない場合の条件分岐
1 2 3 | <?php if ( post_custom('フィールド名') ) : ?>
<?php echo post_custom('フィールド名'); ?>
<?php endif; ?> |
投稿カテゴリーのリストをトップ階層から階層構造を維持して表示
1 | <?php wp_list_categories("title_li="); ?> |
その他詳細はこちら
親ページのページ名を表示
1 | <?php echo get_the_title($post->post_parent); ?> |
最近の投稿を表示
1 2 3 | <ul>
<?php get_archives('postbypost', 10); ?>
</ul> |
投稿日付も表示する場合
1 2 3 4 5 | <ul>
<?php while ( have_posts() ) : the_post(); ?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?> へのリンク"><span class="infoDate"><?php the_time('Y.m.d'); ?></span> <?php the_title(); ?></a></li>
<?php endwhile; ?>
</ul> |
ページのリストを表示
1 2 3 | <ul> <?php wp_list_pages(); ?> </ul> |
ページリストの見出しを隠す。
上記の例では一番上の階層が“ページ”となってしまうので、
↓のようにすると、ページのリストだけを表示する事が出来る。
1 2 3 | <ul>
<?php wp_list_pages('title_li='); ?>
</ul> |
ページリストの見出しの名前を変更する。
下記の例では ID が 9, 5, 23 のページだけを表示し、見出しのテキストを「Poetry」に置き換え、タグを <h2> に変更しています。
1 2 3 | <ul>
<?php wp_list_pages('include=5,9,23&title_li=<h2>' . __('Poetry') . '</h2>' ); ?>
</ul> |
ページ順序に従ってページリストを表示
1 2 3 | <ul>
<?php wp_list_pages('sort_column=menu_order'); ?>
</ul> |
見出し無しでページ順序に従ってページリストを表示
1 2 3 | <ul>
<?php wp_list_pages('sort_column=menu_order&title_li='); ?>
</ul> |
特定のページを除外してページをリスト表示
1 2 | <ul>
<?php wp_list_pages('exclude=17,38' ); ?></ul> |
表示中のページに子ページ が存在する場合のみリストを表示。
1 2 3 4 5 6 7 | <?php
$children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0');
if ($children) { ?>
<ul>
<?php echo $children; ?>
</ul>
<?php } ?> |
表示中のページの親カテゴリに属する子ページ をリスト表示。
1 2 3 4 5 6 7 8 9 10 | <?php
if($post->post_parent)
$children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
else
$children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
if ($children) { ?>
<ul>
<?php echo $children; ?>
</ul>
<?php } ?> |
※ このコードは、サイドバーのウィジェットブロックの後ろに置くと動作しません。
ページのリストを階層構造を維持して表示(ローカルメニュー向け)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php
if($post->ancestors){
foreach($post->ancestors as $post_anc_id){
$post_id = $post_anc_id;
}
} else {
$post_id = $post->ID;
}
if ($post_id) {
$children = wp_list_pages("title_li=&child_of=".$post_id."&echo=0");
if ($children) { ?>
<h3><a href="<?php echo get_permalink($post_id); ?>"><?php echo get_the_title($post_id); ?></a></h3>
<ul>
<?php echo $children; ?>
</ul>
<?php } ?>
<?php } ?> |
カテゴリ名をリストで表示
1 2 3 | <ul>
<?php wp_list_categories('title_li='); ?>
</ul> |
オプションの値などはCodex参照
投稿記事の属する親カテゴリとサブカテゴリを階層構造を維持して表示(ローカルメニュー向け)[single]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | <?php
// ▼トップカテゴリのIDを取得
/* 現在のカテゴリの取得 */
$cat_now = get_the_category();
$cat_now = $cat_now[0];
/*親カテゴリーのID取得*/
$parent_id = $cat_now->category_parent;
if ( $parent_id == 0) { // トップカテゴリだった場合は属するカテゴリIDを$menuIDに代入
$category = get_the_category();
$menuID = $category[0]->cat_ID;
} else { // トップカテゴリでない場合は親IDを$menuIDに代入
$menuID = $parent_id;
}
// ▲トップカテゴリのIDを取得
$args = array(
'child_of' => 0,
'parent' => 0,
'hide_empty' => false, // 投稿のないカテゴリを表示しない場合はこの行を削除
'orderby' => 'name',
'order' => 'ASC',
'include' => $menuID, // 対象のカテゴリを指定
);
$categories = get_categories($args);
$args = array(
'orderby' => 'name',
'order' => 'ASC',
'hierarchical' => false,
);
$sub_categories = get_categories($args);
?>
<?php foreach ($categories as $cat) { ?>
<h4 id="topCateId_<?php echo $cat->term_id; ?>">
<a href="<?php echo get_category_link( $cat->term_id ); ?>" title="<?php echo sprintf( __( "View all posts in %s" ), $cat->name); ?>">
<?php echo $cat->name; ?></a></h4>
<ul>
<?php foreach ($sub_categories as $sub_cat) { ?>
<?php if ($cat->term_id === $sub_cat->parent) { ?>
<li id="subCate_<?php echo $sub_cat->slug; ?>" class="sideSubCate">
<a href="<?php echo get_category_link( $sub_cat->term_id ); ?>" title="<?php echo sprintf( __( "View all posts in %s" ), $sub_cat->name); ?>" class="sideSubCateLink"><span><?php echo $sub_cat->name; ?> (<?php echo $sub_cat->category_count; ?>)</span></a>
<?php $myposts = get_posts('category='.$sub_cat->term_id."&orderby=post_date&order=DESC&numberposts=5"); ?>
</li>
<?php } ?>
<?php } ?>
</ul>
<?php } ?> |
カスタム投稿タイプのカスタム分類をリスト(一覧)表示
1 | <?php wp_list_categories('taxonomy=○○○○-cat&title_li='); ?> |
※『○○○○-cat』はカスタム投稿タイプのpost-typeではなくカスタムタクソノミーの値なので注意。
一般的には『カスタム投稿タイプの値-cate』で設定していると思います。
カスタム投稿タイプの月別アーカイブをリスト表示
まずはfunction.phpに下記を追加
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | // ▼カスタム投稿タイプのアーカイブ出力
global $my_archives_post_type;
add_filter( 'getarchives_where', 'my_getarchives_where', 10, 2 );
function my_getarchives_where( $where, $r ) {
global $my_archives_post_type;
if ( isset($r['post_type']) ) {
$my_archives_post_type = $r['post_type'];
$where = str_replace( '\'post\'', '\'' . $r['post_type'] . '\'', $where );
} else {
$my_archives_post_type = '';
}
return $where;
}
add_filter( 'get_archives_link', 'my_get_archives_link' );
function my_get_archives_link( $link_html ) {
global $my_archives_post_type;
if ( '' != $my_archives_post_type )
$add_link .= '?post_type=' . $my_archives_post_type;
$link_html = preg_replace("/href=\'(.+)\'\s/","href='$1".$add_link." '",$link_html);
return $link_html;
}
// ▲カスタム投稿タイプのアーカイブ出力 |
サイドバーに下記を追加
1 2 3 | <ul>
<?php wp_get_archives('type=monthly&post_type=○○○○'); ?>
</ul> |
記事のタイトルを表示
1 | <?php the_title(); ?> |
記事のパーマリンクを表示
1 | <?php the_permalink(); ?> |
記事の投稿日を表示
1 | <?php the_time('Y.m.d'); ?> |
記事の本文を表示
1 | <?php the_content(); ?> |
”続きを読む” をつける場合は
1 | <?php the_content(__('続きを読む »'));?> |
記事のIDを表示[loop]
1 | <?php the_ID(); ?> |
記事の属するカテゴリー名とそのカテゴリーへのリンクを表示[loop]
1 | <?php the_category(', ') ?> |
指定のタイトルのページの本文を表示
1 2 3 4 | <?php // ページ「ITEM」の本文を抽出 $post = get_page_by_title ( 'ITEM' ); echo apply_filters ( 'the_content', $post -> post_content ); ?> |
値が空の時の条件分岐
1 2 3 4 5 | <?php $category_description = category_description(); if ( ! empty( $category_description ) ) echo '<div class="archive-meta">' . $category_description . '</div>'; ?> |
上記は$category_descriptionに何か情報が入っている場合に実行する例
特定のカテゴリIDを除外して表示
1 | <?php if (have_posts()) : query_posts($query_string .'&cat=-202'); while (have_posts()) : the_post(); ?> |
カテゴリID 3と5を除外したい場合
1 | <?php if (have_posts()) : query_posts($query_string .'&cat=-3,-5'); while (have_posts()) : the_post(); ?> |
記事の表示件数を指定 [loop]
1 2 | <?php query_posts($query_string."&showposts=-1"); ?> <?php if (have_posts()): while (have_posts()) : the_post(); ?> |
showposts=-1 で全件表示。
showposts=10 で10件表示。
※基本的には管理画面から設定したり、プラグインを使用するのが一般的かと思います。
今の記事と同カテゴリーの最新記事を表示
1 2 3 4 5 6 7 8 9 10 11 | <?php $categories = get_the_category();
foreach($categories as $category):
$related_posts = get_posts('category='.$category->cat_ID.'&exclude='.$post->ID);
if($related_posts): ?>
<h3><?php echo $category->cat_name; ?>カテゴリーの最新記事</h3>
<ul>
<?php foreach($related_posts as $related_post): ?>
<li><a href="<?php echo get_permalink($related_post->ID); ?>"><?php echo $related_post->post_title; ?></a></li>
<?php endforeach; ?>
</ul>
<?php endif; endforeach; ?> |
指定カテゴリーの記事リストを表示1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <ul>
<?php
$category_recent_post = 5; // 記事数
$category_recent_id = 1; // カテゴリID
$posts = get_posts('numberposts=' . $category_recent_post . '&category=' . $category_recent_id);
global $post;
if($posts) {
foreach($posts as $post) {
setup_postdata($post);
echo '<li><a href="' . get_permalink() . '">' . get_the_title() . '</a></li>';
}
}
?>
</ul> |
指定カテゴリーの記事リストを表示2
1 2 3 4 5 6 7 8 9 |
<ul>
<?php query_posts("cat=1&showposts=5"); ?>
<?php if(have_posts()): while(have_posts()): the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile; else: ?>
<li>記事はありません</li>
<?php endif; ?>
</ul> |
指定カテゴリーのサブカテゴリーのみ表示
1 2 3 | <ul>
<?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=1&child_of=1'); ?>
</ul> |
ここで指定している属性は、
「sort_column=name」で名前順、
「optioncount=1」で記事数の出力あり、
「hierarchical=1」で複数階層形式で出力、
「child_of=3」でIDが3のカテゴリに所属するサブカテゴリーの出力、となっています。
指定カテゴリーとそのサブカテゴリーを除外
1 2 3 | <ul>
<?php wp_list_categories('orderby=name&show_count=1&exclude=1,3&title_li='); ?>
</ul> |
「title_li=」で“カテゴリー”と表示されなくなる。
「show_count=1」で投稿件数表示。0または向記述で非表示。
指定のカテゴリーとそのサブカテゴリーを表示
1 2 3 | <ul>
<?php wp_list_categories('orderby=name&include=1,3&title_li='); ?>
</ul> |
&title_li=”をつける事により“カテゴリー”と表示されなくなる
親カテゴリーのIDによって条件分岐
1 2 3 4 5 6 7 8 9 | <?php
$post_cats = get_the_category();
if ( $post_cats[0]->cat_ID == 1 || $post_cats[0]->category_parent == 1 || cat_is_ancestor_of( 1, (int)$post_cats[0]->category_parent ) ) { ?>
親カテゴリーのIDが1の記事の表示内容
<?php } elseif ( $post_cats[0]->cat_ID == 4 || $post_cats[0]->category_parent == 5 || cat_is_ancestor_of( 5, (int)$post_cats[0]->category_parent ) ) { ?>
親カテゴリーのIDが4の記事の表示内容
<?php } else { ?>
その他の記事の表示内容
<?php } ?> |
現在のトップカテゴリー以下のカテゴリーをリスト表示[category]
1 2 3 4 5 6 7 8 9 10 11 12 | <?php
$cat = get_category(get_query_var('cat'));
$id = $cat->category_parent ? $cat->category_parent : $cat->cat_ID;
$children = wp_list_categories('echo=0&title_li=&child_of=' . $id); ?>
<h2><?php echo get_category($id)->cat_name; ?></h2>
<?php
if ($children != "<li>カテゴリーなし</li>")
if ($children != "<li>No categories</li>") { ?>
<ul>
<?php echo $children; ?>
</ul>
<?php } ?> |
カテゴリ名 サブカテゴリ名 記事名をリストで表示
「’include’ => 1,」を削除すると、全てのカテゴリーと記事リストになります。
逆に「’include’ => 1,」を「「’exclude’ => 1,」と記載すればカテゴリID1を除外してリスト表示
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | <?php
$args = array(
'child_of' => 0,
'parent' => 0,
'hide_empty' => false, // 投稿のないカテゴリを表示しない場合はこの行を削除
'orderby' => 'name',
'order' => 'ASC',
'include' => 1, // 対象のカテゴリを指定
);
$categories = get_categories($args);
$args = array(
'orderby' => 'name',
'order' => 'ASC',
'hierarchical' => false,
);
$sub_categories = get_categories($args);
?>
<?php foreach ($categories as $cat) { ?>
<h4 id="topCateId_<?php echo $cat->term_id; ?>">
<a href="<?php echo get_category_link( $cat->term_id ); ?>" title="<?php echo sprintf( __( "View all posts in %s" ), $cat->name); ?>">
<?php echo $cat->name; ?></a></h4>
<ul>
<?php foreach ($sub_categories as $sub_cat) { ?>
<?php if ($cat->term_id === $sub_cat->parent) { ?>
<li id="subCate_<?php echo $sub_cat->slug; ?>" class="sideSubCate">
<a href="<?php echo get_category_link( $sub_cat->term_id ); ?>" title="<?php echo sprintf( __( "View all posts in %s" ), $sub_cat->name); ?>" class="sideSubCateLink"><span><?php echo $sub_cat->name; ?> (<?php echo $sub_cat->category_count; ?>)</span></a>
<?php $myposts = get_posts('category='.$sub_cat->term_id."&orderby=post_date&order=DESC&numberposts=5"); ?>
<ul>
<?php foreach ($myposts as $post) { ?>
<?php setup_postdata($post); ?>
<li id="entryId_<?php echo $post->ID; ?>" class="sideEntry">
<a href="<?php the_permalink(); ?>">
<span class="entryLinkInner"><?php the_title(); ?>
<?php
// ↓New表示
$days=5;
$today=date('U');
$entry=get_the_time('U');
$sa=date('U',($today - $entry))/86400;
if( $days > $sa ){
echo "<span class='entryNew'>"."New"."</span>";
}
// ↑New表示
?>
</span>
</a>
</li>
<?php } ?>
</ul>
</li>
<?php } ?>
<?php } ?>
</ul>
<?php } ?> |
カテゴリーのidで条件分岐する
1 2 3 | <?php if (in_category(3)) : ?> カテゴリーIDが3の場合 <?php endif; ?> |
今いるカテゴリーのスラッグを表示[category]
1 2 | <?php $cat_info = get_category( $cat );?> <?php echo wp_specialchars( $cat_info->slug ); ?> |
今のページのカテゴリー名を表示[category]
1 | <?php single_cat_title(); ?> |
カテゴリースラッグで条件分岐[archive]
1 2 3 4 5 6 7 8 9 10 11 | <?php // ↓カテゴリースラッグによる条件分岐
$cat_id=get_query_var('cat');
$cat=get_category($cat_id);
if ($cat->category_nicename == "sample" ) {
?>
// ↓カテゴリースラッグがsampleだった場合の処理
// ↑カテゴリースラッグがsampleだった場合の処理
<?php } else {?>
// ↓カテゴリースラッグがsample意外の場合の処理
// ↑カテゴリースラッグがsample意外の場合の処理
<?php } ?> |
アーカイブリストを表示
1 2 3 | <ul>
<?php wp_get_archives('type=monthly'); ?>
</ul> |
今のアーカイブページの年月を表示[archive]
1 2 3 4 5 | <?php if (is_month()) { ?>
月別アーカイブ : <?php printf( get_the_date('Y') ); ?>年<?php printf( get_the_date('M') ); ?>
<?php } else if (is_year()) { ?>
年別アーカイブ : <?php printf( get_the_date('Y') ); ?>年
<?php } ?>> |
カスタムフィールドの値を表示[loop]
1 2 3 | <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<?php echo post_custom('フィールド名')?>
<?php endwhile; endif; ?> |
記事のカテゴリー名を表示(リンク無し、複数カテゴリの場合最初に並ぶカテゴリー名
1 2 3 | <ul> <?php $category = get_the_category(); echo $category[0]->cat_name; ?> </ul> |
記事ページまでのパンくずリスト
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <?php if (is_page()) { ?>
<?php /* ▼単一ページ */ ?>
<?php
$i=0;
$parent_title[$i] = ' > '.get_the_title();
$parent = $post;
while(++$i) {
$parent_id = $parent->post_parent;
if ($parent_id) {
$parent_title[$i] = ' > <a
href="'.get_permalink($parent_id).'">'.get_the_title($parent_id).'</a>';
$parent = get_post($parent_id);
} else {
$parent_title[$i++] = '<a href="'.get_bloginfo('url').'">HOME</a>';
for($n=$i;$n>-1;$n--) {
echo $parent_title[$n];
}
break;
}
}
}
?> |
現在の固定ページのスラッグを表示
1 | <?php echo get_page_uri($post->ID);?> |
WCAN 2010 Autumn の申し込みをしました。 Comment
WCAN 2010 Autumnの申し込みが開始されてたので申し込みました。
今回は同じ時間帯にいろんなセッションがあって、それを選択する形式。
丁度先日あったオープンソースカンファレンスと同じような感じですね。
セッション情報
どれを聴くか迷うのが楽しいです(笑
で、どれを選択したかと言うと、まずは一つ目。
- 1-A:生・企画書をお見せします。 コンテンツ庵の企画書の作り方
株式会社コンテンツ庵 志水 雅眉氏 - 1-B:WordPressを使った企業サイトの作り方(仮)
Mighty Works 豊田 有氏 - 1-C:WEB動画活用のポイントと事例紹介
株式会社フラッグ 久保 浩章氏
これは1-Aで。
BもCも個人的には非常に魅力的な内容なんだけど、何より他社の企画書を見れる機会はそうそう無い。
続いて2コマ目。
- 2-A:調整中
株式会社マール - 2-B:サーバ移転のポイント(仮)
株式会社クララオンライン 岩井 知久氏 - 2-C:a-blog cmsのデバイス切り替えを体験してみよう(仮)
データファーム 勝又 孝幸
これは2-Bで。
Aは調整中だったし、今の所自分はa-blogも使った事が無い。
それに対して、サーバに関してはもっと知識が欲しいなと思ったのでBにしました。
続いて3コマ目
- 3-A:調整中
株式会社アクアリング - 3-B:30万円以下のWeb制作案件を効率よくさばくには - Jimdoでサイト制作 -(仮)
株式会社KDDIウェブコミュニケーションズ 高畑 哲平氏 - 3-C:メディアと時を超えるデザインの本質(仮)
株式会社テラ 杉山 充氏
これは迷いました。
まず、3-C。テラの杉山氏とは面識があり、いろいろとお世話いただいてるので本当に聴きたいところですが、せっかくの機会なので逆に面識の無い方の話を聴いてみたかったので今回は別のセッションに行かせていただきます!
杉山さん本当に申し訳ありません!m(TーT)m
3-Bもかなりそそられました。が、concrete5やseezooを使う自分が聞いて必要なノウハウだけを盗むというのはKDDIさんに対して失礼であろうと・・・。
高畑氏のプレゼンは素晴らしいから聴きたかったなぁ・・・。
そして、3-A。
個人的には、アクアリングさんは本当にトータルで質の高いサイトを作る名古屋でトップクラスの制作会社だと思っていて、内部ではどういう仕事の進め方をしているのか凄く興味があったんですよね。
そこで丁度今回のwcanでお話されるという事なので、中の人はどんな方なのか是非話を聞いてみたいなと。
そんな事情で3-Aにしました。
くどいようですが・・・
杉 山 さ ん す い ま せ ん m(TーT)m
最後4コマ目。
- 4-A:Web制作会社としてのブランディング(仮)
モンキーワークス株式会社 - 4-B:Webサイト制作の舞台裏?事件は現場で起きている!(仮)
株式会社アンティー・ファクトリー 飯田 淳介氏 - 4-C:Web屋さんの作るEPUB(仮)
有限会社アップルップル 山本一道氏
これは4-Cにしました。
4-Aは凄く興味はあるんですよね。モンキーワークスさんのブランディングって凄くしっかりしていて非常に参考になるなぁと日々思ってるんですが、聞いてしまうと、結構それに影響されてしまうかなと。
今後自分でウェブ制作者としてブランディングしていく身としては、まずは自分の方法論をやって試してみたいって言うのがあるんですよね。聞きたい気持ちを抑えて我慢です!
4-Bは現時点で内容がちょっと不明だったので4-Cに目を向けたところ、EPUBって少し話しを聞いておいたほうがよさそうだと思ったので4Cにしました。
以上、wcan autumun の参加セッションです。
同じセッションを受講される方どうぞよろしくお願いします。
また、違うセッションを受講される方・・・あとで内容教えてください!
ウェブのJIS規格改正について 「JIS X 8341-3:2010」 Comment
今日、名古屋国際会議場で行われた『WCAN 2010 Summer』に参加してきました。
その中で、ディレクターとして特に重要だなと感じたポイントだけご報告。
(いい話はいっぱいあったのですが全て書ききる気力が無いので・・・)
Continue reading… »

