記事が属しているカテゴリを特定の順番にソート

function get_ordered_terms( $id = 0, $orderby = 'slug', $order = 'ASC', $taxonomy = 'category' ) {
    $terms = get_the_terms( $id, $taxonomy );
    if ( $terms ) {
        $ordered = array();
        foreach ( $terms as $term ) {
            if ( isset( $term->$orderby ) ) {
                $ordered[$term->$orderby] = $term;
            }
        }
        if ( strtoupper( $order ) == 'DESC' ) {
            $func = 'krsort';
        } else {
            $func = 'ksort';
        }
        $func( $ordered );
        return $ordered;
	print_r($ordered);
    }
}
function custom_the_category() {
$categories = get_ordered_terms();
foreach($categories as $category){
$url = get_category_link($category->term_id);
$name = $category->name;
echo "<a href='".$url."'>".$name."</a> "; 
}
}

一度設定しちゃったcustom_the_category()が動かなくなったので強引な手段として・・・・。
記事が属しているカテゴリーを取得し、slugなどで並び替えて表示するってコードをかいていたけどいつの間にか動かなくなっていたので再度設置。

テンプレートのファンクションを変えるのは怖かったのでfuncitons.phpの記述を変更して対応。

Facebookのタブアプリのスクロールを消すやつが・・・。

かわってた。

//これheadに
<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script>
<script language="JavaScript">
FB.init({
  appId: '408815259180277', //アプリID
  status: true,
  cookie: true,
  xfbml: true
});
 
window.fbAsyncInit = function() {
  FB.Canvas.setAutoGrow();
}
function sizeChangeCallback() {
  FB.Canvas.setAutoGrow();
}
</script>

//↓これ/bodyの直前に
<div id="fb-root"></div>
<script>
 FB.Canvas.setAutoGrow({ width: 810, height: 4884 });
</script>

今後の制作の方針。

mySqlの操作方法の把握
フォームをつかったデータ送信のやり方の把握
phpをつかったソート方法
複数のメタ条件を使ったソート等、カテゴリーの並びをスラッグ以外の値を考えながら制作。
カテゴリーオーダーのようなプラグインを管理画面に実装するようにがんばろう。

覚えておくとよさそう

http://kachibito.net/wordpress/admin-area-customize.html
納品時に考えておきたい作業の一覧

なるほどなるほど

jQueryでhidden追加

フォームを取得する方法

ttp://d.hatena.ne.jp/x6x6/20080319/1205917213

hiddenの追加

http://keywordsmemo.blogspot.jp/2011/05/formsubmithidden.html

$(function() {
$("#post").submit(function(){
var obj = $('#client_date').attr('value');
$('<input />').attr('type', 'hidden')
 .attr('name', 'tax_input[works-client][]')
 .attr('value', obj)
 .appendTo('#post');
});
});

これでいけるか。
週明けに確認。

管理画面のタイプは以下で設定し特定の箇所のみjsを読み込む。

function events_scripts() {
global $post_type;
if( 'works' == $post_type ) {
wp_enqueue_script('jquery183', get_bloginfo('template_url') . '/js/jquery-1.8.3.js');
wp_enqueue_script('jquery-ui', get_bloginfo('template_url') . '/js/jquery-ui-1.9.2.custom.js');
wp_enqueue_script('myjs', get_bloginfo('template_url') . '/js/myjs.js');
}
}
add_action( 'admin_print_scripts-post.php', 'events_scripts', 1000 );
add_action( 'admin_print_scripts-post-new.php', 'events_scripts', 1000 );

tax_input[works-client][]
のままだと更新していくたびにどんどん配列としてvalueがはいっていくので
tax_input[works-client][0]とかtax_input[works-client][1]とかして入る位置を決めてみた。
位置を指定しておくと上書きをしてくれたので予想外のものが入ることがなくなった。