[自分用][Jquery]ボツったけどID取得のスライドトグル

<code>
$(function(){
	$(".sbloc figure").on('click', function(){
		var idname = $(this).parent().attr("id");
		$(".cbloc").slideDown();
		$(".more").not("."+idname).slideUp();
		$("."+idname).slideDown();
		if($(this).hasClass("open")) {
			$("figure").removeClass("open");
			$("."+idname).slideToggle();
			classCount = -1;
			if(classCount < 0) {$(".cbloc").slideUp();}
		}else {
			$(this).addClass("open");
		}
	});
});
</code>

[jquery]クリックでページ遷移

DOM操作後なんかでリンクが動かなかったりはこっち


	$(document).on("click",".class a",function(){
		var href = $(this).attr("href");
		location.href = href;
	});

特定のリンク拾いたいときはこっち


	$(document).on("click","a",function(){
		var href = $(".class").attr("href");
		location.href = href;
	});

【Jquery】スマホのhoverをタップで動作

単純にcssのhoverは効かないためタップの動作つけたい場合
引用元見つかったら修正するざんす。

var linkTouchStart = function(){
    thisAnchor = $(this);
    touchPos = thisAnchor.offset().top;
    moveCheck = function(){
        nowPos = thisAnchor.offset().top;
        if(touchPos == nowPos){
            thisAnchor.addClass("hover");
        }
    }
    setTimeout(moveCheck,100);
}
var linkTouchEnd = function(){
    thisAnchor = $(this);
    hoverRemove = function(){
        thisAnchor.removeClass("hover");
    }
    setTimeout(hoverRemove,500);
}
 
$(document).on('touchstart mousedown','.class',linkTouchStart);
$(document).on('touchend mouseup','.class',linkTouchEnd);

[jquery]slideToggleを使った単純な自分のID名と一致するclassの開閉パネル

普通のアコーディオンとか、スライドパネルではちょっと対応出来ない用
ソース・JSのカスタマイズ前提の素体なのでこのまま使ってもあんまり意味なしです。
このまま使うなら別のjquery使ったほうが良いですレベルです。

<div class="btn" id="id1">ボタン1</div>
<div class="btn" id="id2">ボタン2</div>
<div class="btn" id="id3">ボタン3</div>
<div class="btn" id="id4">ボタン4</div>

<div class="more id1">中身1</div>
<div class="more id2">中身2</div>
<div class="more id3">中身3</div>
<div class="more id4">中身4</div>

<script type="text/javascript" charset="utf-8">
$(function(){
	$(".btn").on('click', function(){
		var id = $(this).attr("id");
		$(".more").slideUp();
		$(".more."+id).slideToggle();

	});
});
</script>

【jquery】タイトルを抽出して目次を作成+ページ内スクロール

プラグイン入れるのが微妙なラインだったんで簡単な目次作成のjqueryさくっと。
キュレーションとかブログサイトは目次付きが主流らしいですね~。

動作サンプルはこっち

HTML

<div id="mokuji"></div>
<div style="height:1000px;"></div>
<h3 class="title">あああ</h3>
<div style="height:1000px;"></div>
<h3 class="title">いいい</h3>
<div style="height:1000px;"></div>
<h3 class="title">ううう</h3>
<div style="height:1000px;"></div>

JS

<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js?ver=4.3'></script>
<script type='text/javascript' src='http://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.3/jquery.easing.min.js?ver=4.3'></script>
<script>
$(document).ready(function(){
    var count = 1;
    $('<p>目次</p>').appendTo('#mokuji');
     $("h3.title",this).each(function(){
     	$('<span class="links">' + $(this).text() + '</span>').appendTo('#mokuji');
     	count++;
     });
    $(document).on("click",".links ", function() {
        var i = $(".links").index(this)
        var p = $("h3.title").eq(i).offset().top;
        $('html,body').animate({ scrollTop: p }, 'fast');
        return false;
    });
});
</script>

CSS

<style>
span {display:block;cursor:pointer;}
</style>

【.htaccess】日本語で301リダイレクトかけるとき

rewrite試したりしてたけど、

リダイレクト前のURLはエンコードせず、リダイレクト後のURLはエンコードします。

の一言!

参考:【.htaccess】日本語あれこれで301リダイレクトに失敗する場合の対処法
http://ysklog.net/server/2440.html

【例】
http://aaa.jp/日本語.html

http://aaa.jp/aaa/日本語.html

Redirect 301 /日本語.html http://aaa.jp/aaa/%E6%97%A5%E6%9C%AC%E8%AA%9E.html

etc

[htaccess]キャッシュクリア

301リダイレクトURL設定を間違っていて修正した場合、
大体は更新→ブラウザ再起動で直るのですが、なかなか反映されない場合もある模様でした。
閲覧者に閲覧履歴消去してもらうのも変な話なので
htaccessでキャッシュクリアしてしまうのがよさげ

<Files ~ "\.(html|php|jpe?g|gif|png)$">
Header set Pragma no-cache
Header set Cache-Control no-cache
</Files>
etc

[wordpress]固定ページやTOPページなどでユーザー情報を取得・表示させる

3.5以降から WP_Queryならぬ WP_User_Queryが使えるようになったようなので
TOPとか固定ページでの表示が可能です。
基本的な使い方はWP_Queryと一緒で foreach が居るくらい?
カスタムフィールドも取得できます

<?php
$args = array(
	'role' => 'editor',//投稿者権限
	'order'    => 'ASC',
	'meta_key' => 'sort',
	'orderby'  => 'meta_value_num'
	);
	
$the_query = new WP_User_Query( $args ); ?>

<?php if ( ! empty( $the_query->results ) ) : ?>
<?php foreach ( $the_query->results as $user ) : ?>
<?php 
$uid		= $user->ID;
$meta 		= get_field('meta_key','user_'.$uid);
?>

<h5><?php echo $user->display_name;?></h5>
<p><?php echo $meta;?></p>

<?php endforeach;?>
<?php else :?>
<?php endif;
wp_reset_postdata(); ?>