<?php
if ( have_posts () ) :
while (have_posts()) : the_post(); $counter++;
?>
<?php include("d_roop_box.php") ?>
<?php if ($counter <= 1) {
include("d_ad_1_2.php");
} ?>
<!----閉じループタグ----->
<?php
endwhile;
endif;
?>
<!---------------リセットクエリ--------------------------------------------->
<?php wp_reset_query(); ?>
カテゴリー: Code コード
タイトルを入力してくださいを変える
//タイトルを入力してくださいを変える
function change_default_title( $title ) {
$screen = get_current_screen();
if ( 'performer' == $screen->post_type ) {
$title = 'パフォーマー名を入力してください。';
} else if ( $screen -> post_type == 'post' ) {
$title = 'これは投稿だけ変更します';
}
return $title;
}
add_filter('enter_title_here', 'change_default_title');
1 件目と2 件目の記事の間に広告を挿入する
http://nanokamo.com/articles/web-service/wordpress/wordpress-top-ad.html
<?php
if ( have_posts () ) :
while (have_posts()) : the_post(); $counter++;
?>
<?php include("d_roop.php") ?>
<?php if ($counter <= 1) {
print <<<EOD
アドセンスのコードを挿入
EOD;
} ?>
<!----閉じループタグ----->
<?php
endwhile;
endif;
?>
<!---------------リセットクエリ--------------------------------------------->
<?php wp_reset_query(); ?>
よくわからんが
モバイル用
while ( have_posts() ) : the_post(); $counter++;
$i++;
?>
<?php if ($counter == 3) {
print <<<EOD
<div class="hentry">アドセンスのコード</div>
EOD;
} ?>
サイドバー使う
//複数サイドバーを使える register_sidebars(5, array()); 指定の場所に <?php dynamic_sidebar();?>
投稿タグカンマ表示
<?php the_tags('タグ: ',' > '); ?>
参考
http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/the_tags
記事の文字を指定数で続きを読む
<?php echo mb_substr(get_the_excerpt(),0, 240);?><br /> <div class="alignright a_color" style="font-size:14px;"><a href="<?php the_permalink();?>">全文▶</a></div>
マニュアル設置覚え
wp-admin/imgに画像
Dにtori.php
ファンクションに
//管理メニュー追加
function test_menu_page() {
$siteurl = get_option( 'siteurl' );
?>
<div class="wrap">
<h2>マニュアル</h2>
<?php include("tori.php"); ?>
</div>
<?php
}
function test_admin_menu() {
add_menu_page( 'マニュアル', 'マニュアル', 'read',
__FILE__, 'test_menu_page' );
}
add_action( 'admin_menu', 'test_admin_menu' );
youtube を カスタムフィールドで管理する
http://kachibito.net/wordpress/youtube-tips.html
<?php if(get_post_meta($post->ID, 'YTid', true)): ?> <iframe width="649" height="395" src="http://www.youtube.com/embed/<?php echo get_post_meta($post->ID, 'YTid', true); ?>?rel=0" frameborder="0" allowfullscreen></iframe> <?php endif; ?>
VK Post Author Display改造 ポストオーサープラグイン
$profileUnit =
'<h4>'.$author_box_title.'</h4>'.
'<div id="avatar">'.get_avatar( get_the_author_meta('email'), 80 ).'</div>'.
'<dl id="profileTxtSet">'.
'<dt>'.'<span id="authorName">'.get_the_author_meta( 'display_name' ).'</span>';
if(isset($caption)):
を
$profileUnit = '<h4>'.$author_box_title.'</h4>'. '<div id="avatar">'.get_avatar(get_the_author_id(), 80).'</div>'. '<dl id="profileTxtSet">'. '<dt>'.'<span id="authorName">'.get_the_author_meta( 'display_name' ).'</span>';
‘
‘.
php the_time 投稿時間
http://webway.seesaa.net/article/128282171.html
'Y年m月d日(D)' ⇒ 2009年09月09日(木) 'Y/m/d' ⇒ 2009/09/09 'Y年n月j日(D)' ⇒ 2009年9月9日(木) 'Y/n/j' ⇒ 2009/9/9 'Y年m月d日(D)h時i分s秒' ⇒ 2009年09月09日(木)09時09分09秒 'Y/m/d h:i:s' ⇒ 2009/09/09 09:09:09
タグをリンク付きでリスト表示 さらにカレント
<ul>
<li>タグ</li>
<?php
$tagList = $wpdb->get_results($wpdb->prepare("
SELECT t.term_id,t.name,t.slug,tt.count
FROM $wpdb->terms AS t
JOIN $wpdb->term_taxonomy AS tt
USING(term_id)
WHERE tt.taxonomy = 'post_tag'
ORDER BY tt.count DESC
",null));
foreach ($tagList as $value):?>
<?php
$add_style = '';
$add_class = '';
if( is_tag( $value ) ){
$add_class = 'current';
$add_style = 'style="color:#71B6FC;"';
}
?>
<li>
<a href="/?tag=<?php echo $value->slug; ?>/" <?php echo $add_style;?> class="<?php echo $add_class;?>">
<?php echo $value->name; ?></a>
(<?php echo $value->count; ?>)</li>
<?php endforeach;?>
</ul>
参考http://ja.forums.wordpress.org/topic/12295
このままでは駄目だった
タグをリンク付きでリスト表示
<ul>
<li>タグ</li>
<?php
$tagList = $wpdb->get_results($wpdb->prepare("
SELECT t.term_id,t.name,t.slug,tt.count
FROM $wpdb->terms AS t
JOIN $wpdb->term_taxonomy AS tt
USING(term_id)
WHERE tt.taxonomy = 'post_tag'
ORDER BY tt.count DESC
"));
foreach ($tagList as $value):?>
<li>
<a href="/?tag=<?php echo $value->slug; ?>/">
<?php echo $value->name; ?></a>
(<?php echo $value->count; ?>)</li>
<?php endforeach;?>
</ul>
タグアーカイブページだったら
<?php if(is_tag()): ?> <?php endif; ?>
カテゴリーアーカイブだったら
<?php if(is_category()): ?>
<?php endif; ?>
<?php if(is_category('9')): ?>
カテゴリーIDが"9"の記事を表示します。
<?php elseif(is_category('Stinky Cheeses')): ?>
カテゴリーの名前が"Stinky Cheeses"の記事を表示します。
<?php elseif(is_category('blue-cheese')): ?>
カテゴリースラッグが"blue-cheese"の記事を表示します。
<?php elseif(in_category( array( 1,2,3 ) )): ?>
カテゴリーIDが "1, 2, 3 "の記事を表示します。
<?php elseif(!in_category( array( 4,5,6 ) )): ?>
カテゴリーIDが" 4, 5, 6 "意外の記事を表示します。
<?php endif; ?>
リンクなし あり のカテゴリ名表示 未検証
リンクなしのカテゴリ名表示方法。
<?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name; } ?>
リンクありは
<?php the_category(); ?>
編集中 絞り込み検索
<form action="<?php echo home_url(); ?>" method="get">
<ul>
<li><?php wp_dropdown_categories(array(
'taxonomy' => 'chiiki2',
'show_option_all' => 'すべてのカテゴリーを含む'
)); ?></li>
<li><select name="tag">
<option value="">タグを選択</option>
<?php
$tags = get_tags();
foreach ($tags as $tag): ?>
<option value="<?php echo esc_attr($tag->slug); ?>"><?php echo esc_html($tag->name); ?></option>
<?php endforeach; ?>
</select></li>
<li> キーワード:<input type="text" value="" name="s" /></li>
</ul>
<input type="submit" value="この内容で検索!" />
</form>
http://mypacecreator.net/blog/archives/1807
http://wpdocs.sourceforge.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/wp_dropdown_categories
↑よりさらに詳しく
階層を維持
'hierarchical' => '1',
検索結果だったら
<?php if(is_search()): ?> <?php endif; ?>
search.phpでユーザー名とか、タグ名・カテゴリ名も検索対象その2
https://gist.github.com/wokamoto/3486944
ファンンクションにこれを追加
function custom_search($search, $wp_query) {
global $wpdb;
//サーチページ以外だったら終了
if (!$wp_query->is_search)
return $search;
if (!isset($wp_query->query_vars))
return $search;
// ユーザー名とか、タグ名・カテゴリ名も検索対象に
$search_words = explode(' ', isset($wp_query->query_vars['s']) ? $wp_query->query_vars['s'] : '');
if ( count($search_words) > 0 ) {
$search = '';
foreach ( $search_words as $word ) {
if ( !empty($word) ) {
$search_word = $wpdb->escape("%{$word}%");
$search .= " AND (
{$wpdb->posts}.post_title LIKE '{$search_word}'
OR {$wpdb->posts}.post_content LIKE '{$search_word}'
OR {$wpdb->posts}.post_author IN (
SELECT distinct ID
FROM {$wpdb->users}
WHERE display_name LIKE '{$search_word}'
)
OR {$wpdb->posts}.ID IN (
SELECT distinct r.object_id
FROM {$wpdb->term_relationships} AS r
INNER JOIN {$wpdb->term_taxonomy} AS tt ON r.term_taxonomy_id = tt.term_taxonomy_id
INNER JOIN {$wpdb->terms} AS t ON tt.term_id = t.term_id
WHERE t.name LIKE '{$search_word}'
OR t.slug LIKE '{$search_word}'
OR tt.description LIKE '{$search_word}'
)
) ";
}
}
}
return $search;
}
add_filter('posts_search','custom_search', 10, 2);
search.phpでタグ・タームを検索結果にその1
<?php //タグ・ターム
//検索キーワードを取得
$keys = get_search_query();
//スペースが全角の場合、半角に変換
$keys = str_replace(' ', ' ', $keys);
//SQLインジェクション用
$keys = mysql_real_escape_string($keys);
//検索キーワードを配列に変換
$keys_array = explode(' ', $keys);
//キーワードの数だけWHERE節を作成する
$sql_where = '';
foreach ($keys_array as $key => $value) {
if(empty($sql_where)){
$pre_str = 'WHERE ';
}else{
$pre_str = 'AND ';
}
$sql_where .= $pre_str . "(0<LOCATE('{$value}',posts.post_title) OR 0<LOCATE('{$value}',t_terms.name) OR 0<LOCATE('{$value}',t_terms.slug)) ";
}
//クエリを実行
$objResult = $wpdb->get_results(
$wpdb->prepare(
"SELECT * FROM {$wpdb->posts} posts LEFT JOIN {$wpdb->term_relationships} t_rel ON posts.ID = t_rel.object_id
LEFT JOIN {$wpdb->term_taxonomy} t_term_tx ON t_rel.term_taxonomy_id = t_term_tx.term_taxonomy_id
LEFT JOIN {$wpdb->terms} t_terms ON t_term_tx.term_id = t_terms.term_id
"
. $sql_where
));
//検索結果が0でなければ、ヒットした投稿のIDを指定してquery_postsで抽出する。
if (!empty($objResult)){
$id_array = '';
$i=0;
foreach ($objResult as $key => $value) {
$id_array[$i] = $value->ID;
$i++;
}
$arg = array(
'post__in'=>$id_array,
'post_type'=>'performer' //対象のカスタム投稿タイプ
);
$posts = query_posts( $arg );
}
//検索結果が0なら、query_postsを行わない。その場合、標準の検索機能が自動的に動作する。
//そのため、何もヒットしなければ、標準の「ヒットしませんでした」画面も自動的に表示される。
?>
以下ループ
http://masaroku.com/?p=788 参考
カスタムフィールドの値によって画像を表示
「りんご」にチェックが入った時は「りんご」のイラストを
「みかん」にチェックが入った時は「みかん」のイラストを
「ばなな」と「ぶどう」にチェックが入った時は両方のイラスト
<?php
$fruits = (array)post_custom('果物');
foreach ($fruits as $fruit) {
switch ($fruit) {
case 'りんご':
echo "<img src='apple.png' />\n";
break;
case 'みかん':
echo "<img src='orange.png' />\n";
break;
case 'ばなな':
echo "<img src='banana.png' />\n";
break;
case 'ぶどう':
echo "<img src='grape.png' />\n";
break;
}
}
?>
http://memo.dogmap.jp/2011/07/13/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%83%95%E3%82%A3%E3%83%BC%E3%83%AB%E3%83%89%E3%81%AE%E5%80%A4%E3%81%AB%E3%82%88%E3%81%A3%E3%81%A6%E7%94%BB%E5%83%8F%E3%82%92%E8%A1%A8%E7%A4%BA/