タグ

ブックマーク / www.warna.info (7)

  • カテゴリーのパーマリンクをカテゴリーIDにするよ – Simple Colors

    今回はコードだけ。 function numeric_category_rewrite_rules( $rules ) { $custom_rules = array(); foreach ( $rules as $regex => $rewrite ) { $regex = str_replace( '/(.+?)/', '/([0-9]{1,})/', $regex ); $rewrite = str_replace( '?category_name=', '?cat=', $rewrite ); $custom_rules[$regex] = $rewrite; } return $custom_rules; } add_filter( 'category_rewrite_rules', 'numeric_category_rewrite_rules' ); function num

  • WordPressでカスタムフィールドも検索対象にする – Simple Colors

    WordPressでカスタムフィールドも検索対象に含めてみました。 といっても、全てのカスタムフィールドを検索対象にするといろいろとアレなので、特定の名前を持つもののみに限定しなければなりません。 そこは、 pm.meta_key IN ( 'meta_key1', 'meta_key2', 'meta_key3' ) の meta_keyn の部分を調整してもらえれば、大丈夫だと思います。 function search_custom_field_query( $search, $wp_query ) { if ( $wp_query->is_main_query() && $wp_query->is_search() && ! is_admin() ) { $q = $wp_query->query_vars; $n = !empty($q['exact']) ? '' : '%';

  • WordPress を扱う上で憶えておいて欲しい3つのesc #wacja2012 – Simple Colors

    わんばんこ。2012 WordPress アドベントカレンダーの3日目をむゆうさん( @anticyborg )と共に担当させていただきます。当は、アドベントよりおべんt(以下略 WordPress で実現系のコードを紹介する記事は、よく目にしますし、セキュリティに関する関心も高いようですが、意外に基的な所が抜け落ちているケースが多いように感じたので、テーマやプラグイン開発時に憶えておいて欲しい WordPress 関数、esc_html、esc_attr、esc_url について、つらつらと書いてみたいと思います。 この esc_ なんちゃらは、WordPress 2.8 から導入された関数で、それ以前のバージョンでは、wp_specialchars、attribute_escape、clean_urlと様々な名称であったものが、(おそらくは憶えやすいように)統一的な関数名に改名され

  • WordPressの新機能 複数タクソノミークエリーまとめ – Simple Colors

    先日、「WordPress 3.1 RC3 をみんなでテスト! 」に参加し、その際、複数カスタムタクソノミークエリー(en. Multiple Taxonomy Handling)のテストを担当させてもらいました。 ついでに、仕様などについても探ってましたので、まとめてみることにします。 複数タクソノミークエリーとは なるべく正確に言うと、query_posts または get_posts の引数に新たに設けられた tax_query により、カテゴリー、タグ、カスタムタクソノミー等による記事抽出条件を、複数かつ様々なパラメータで細かく設定できる機能。 tax_query の値は、抽出条件毎の配列と各条件の結合方法(パラメータ名:relation)で構成される。 こう書いても、分かりにくいと思いますので、もっとかみ砕いて、粉状にして言うと「これさえ憶えておけば、WordPressでの絞り込

  • パラメータでカスタマイズしやすいWordPressのパンくずナビを作ってみた – Simple Colors

    前回のパラメータでカスタマイズしやすいWordPressのページナビを作ってみたに続き、パンくずナビも作ってみました。 カスタム投稿タイプの年月アーカイブとか、カスタム投稿タイプの寄稿者など複合条件までは対応できていませんが、カスタム投稿タイプ、カスタムタクソノミー、フロントページの表示設定など、多彩な設定に対応できています。 [2011.06.30追記] プラグイン版を公開いたしました。一部修正してありますので、こちらをご利用ください。 導入方法 使っているテーマのfunctions.phpにCODE 1を、ページナビを使っていない方は、CODE 2も追記してください。あるいは、独自プラグインにしてしまってもいいです。(独自プラグインの作り方は、初心者でも10秒でできる WordPress プラグインの作り方やWordPress でスニペットを簡単に管理する方法あたりを参考に) テーマフ

  • WordPress の投稿スラッグを自動的に生成する – Simple Colors

    WordPress のパーマリンク構造に %postname% が含まれていて、うっかりパーマリンクの設定をし忘れると、ブラウザのアドレス欄に日語が表示されたり、 %e3%81%8a%e5%95%8f%e3%81%84%e5%90%88%e3%82%8f%e3%81%9b みたいな感じで、イミフな文字列がならんでしまったりしてあまり気持ちの良いものではありませんよね。 よく分かっているならまだしも、運営を任せていたりすると、そんなURLが大量に発生してげんなり・・・そんな状況もよくあり得ます。 先日フォーラムの 記事のスラッグ名を自動的に記事IDにしたい に回答した内容を一歩進めて、なるべく汎用的に使えるコードを書いてみました。 方針としては、 自分で設定したスラッグの場合は、変更しない 日語などマルチバイトの場合は、{投稿タイプ}-{記事ID}に強制的に変更 記事IDのみにしていない

  • WordPressのレスポンスヘッダーにVary HTTP ヘッダーを追加する – Simple Colors

    WordPressでスマートフォンなどのデバイス対応をする際、WPtouchやWP Mobile Detectorなどなどのプラグインを使ってスマートフォン用にテーマを切り替えている方も多いと思います。 今回は、そんなWordPressでデバイスによってテーマの切り替えを行っている方向けに、ちょっとしたおすすめTipsを紹介しておこうと思います。 先月、googleのウェブマスター向け公式ブログで「Google がお勧めするスマートフォンに最適化されたウェブサイトの構築方法」という記事が掲載されましたが、この中の「デバイスごとに最適化した HTM」の項目内で あなたのサイトが動的な配信をされている場合、ユーザーエージェントごとにコンテンツを変えている事をキャッシュサーバや Google のアルゴリズム伝えるために Vary HTTP ヘッダを使用することを強くお勧めします。また、Googl

  • 1